/******/ (function() { // webpackBootstrap
/******/ 	var __webpack_modules__ = ({

/***/ 98942:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

var ___EXPOSE_LOADER_IMPORT___ = __webpack_require__(19755);
var ___EXPOSE_LOADER_GET_GLOBAL_THIS___ = __webpack_require__(27672);
var ___EXPOSE_LOADER_GLOBAL_THIS___ = ___EXPOSE_LOADER_GET_GLOBAL_THIS___;
___EXPOSE_LOADER_GLOBAL_THIS___["$"] = ___EXPOSE_LOADER_IMPORT___;
module.exports = ___EXPOSE_LOADER_IMPORT___;


/***/ }),

/***/ 27672:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";


// eslint-disable-next-line func-names
module.exports = function () {
  if (typeof globalThis === "object") {
    return globalThis;
  }
  var g;
  try {
    // This works if eval is allowed (see CSP)
    // eslint-disable-next-line no-new-func
    g = this || new Function("return this")();
  } catch (e) {
    // This works if the window reference is available
    if (typeof window === "object") {
      return window;
    }

    // This works if the self reference is available
    if (typeof self === "object") {
      return self;
    }

    // This works if the global reference is available
    if (typeof __webpack_require__.g !== "undefined") {
      return __webpack_require__.g;
    }
  }
  return g;
}();

/***/ }),

/***/ 85592:
/***/ (function(module, exports, __webpack_require__) {

var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;( function( factory ) {
	"use strict";

	if ( true ) {

		// AMD. Register as an anonymous module.
		!(__WEBPACK_AMD_DEFINE_ARRAY__ = [ __webpack_require__(98942) ], __WEBPACK_AMD_DEFINE_FACTORY__ = (factory),
		__WEBPACK_AMD_DEFINE_RESULT__ = (typeof __WEBPACK_AMD_DEFINE_FACTORY__ === 'function' ?
		(__WEBPACK_AMD_DEFINE_FACTORY__.apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__)) : __WEBPACK_AMD_DEFINE_FACTORY__),
		__WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__));
	} else {}
} )( function( $ ) {
"use strict";

$.ui = $.ui || {};

return $.ui.version = "1.13.2";

} );


/***/ }),

/***/ 26891:
/***/ (function(module, exports, __webpack_require__) {

var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;/*!
 * jQuery UI Widget 1.13.2
 * http://jqueryui.com
 *
 * Copyright jQuery Foundation and other contributors
 * Released under the MIT license.
 * http://jquery.org/license
 */

//>>label: Widget
//>>group: Core
//>>description: Provides a factory for creating stateful widgets with a common API.
//>>docs: http://api.jqueryui.com/jQuery.widget/
//>>demos: http://jqueryui.com/widget/

( function( factory ) {
	"use strict";

	if ( true ) {

		// AMD. Register as an anonymous module.
		!(__WEBPACK_AMD_DEFINE_ARRAY__ = [ __webpack_require__(98942), __webpack_require__(85592) ], __WEBPACK_AMD_DEFINE_FACTORY__ = (factory),
		__WEBPACK_AMD_DEFINE_RESULT__ = (typeof __WEBPACK_AMD_DEFINE_FACTORY__ === 'function' ?
		(__WEBPACK_AMD_DEFINE_FACTORY__.apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__)) : __WEBPACK_AMD_DEFINE_FACTORY__),
		__WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__));
	} else {}
} )( function( $ ) {
"use strict";

var widgetUuid = 0;
var widgetHasOwnProperty = Array.prototype.hasOwnProperty;
var widgetSlice = Array.prototype.slice;

$.cleanData = ( function( orig ) {
	return function( elems ) {
		var events, elem, i;
		for ( i = 0; ( elem = elems[ i ] ) != null; i++ ) {

			// Only trigger remove when necessary to save time
			events = $._data( elem, "events" );
			if ( events && events.remove ) {
				$( elem ).triggerHandler( "remove" );
			}
		}
		orig( elems );
	};
} )( $.cleanData );

$.widget = function( name, base, prototype ) {
	var existingConstructor, constructor, basePrototype;

	// ProxiedPrototype allows the provided prototype to remain unmodified
	// so that it can be used as a mixin for multiple widgets (#8876)
	var proxiedPrototype = {};

	var namespace = name.split( "." )[ 0 ];
	name = name.split( "." )[ 1 ];
	var fullName = namespace + "-" + name;

	if ( !prototype ) {
		prototype = base;
		base = $.Widget;
	}

	if ( Array.isArray( prototype ) ) {
		prototype = $.extend.apply( null, [ {} ].concat( prototype ) );
	}

	// Create selector for plugin
	$.expr.pseudos[ fullName.toLowerCase() ] = function( elem ) {
		return !!$.data( elem, fullName );
	};

	$[ namespace ] = $[ namespace ] || {};
	existingConstructor = $[ namespace ][ name ];
	constructor = $[ namespace ][ name ] = function( options, element ) {

		// Allow instantiation without "new" keyword
		if ( !this || !this._createWidget ) {
			return new constructor( options, element );
		}

		// Allow instantiation without initializing for simple inheritance
		// must use "new" keyword (the code above always passes args)
		if ( arguments.length ) {
			this._createWidget( options, element );
		}
	};

	// Extend with the existing constructor to carry over any static properties
	$.extend( constructor, existingConstructor, {
		version: prototype.version,

		// Copy the object used to create the prototype in case we need to
		// redefine the widget later
		_proto: $.extend( {}, prototype ),

		// Track widgets that inherit from this widget in case this widget is
		// redefined after a widget inherits from it
		_childConstructors: []
	} );

	basePrototype = new base();

	// We need to make the options hash a property directly on the new instance
	// otherwise we'll modify the options hash on the prototype that we're
	// inheriting from
	basePrototype.options = $.widget.extend( {}, basePrototype.options );
	$.each( prototype, function( prop, value ) {
		if ( typeof value !== "function" ) {
			proxiedPrototype[ prop ] = value;
			return;
		}
		proxiedPrototype[ prop ] = ( function() {
			function _super() {
				return base.prototype[ prop ].apply( this, arguments );
			}

			function _superApply( args ) {
				return base.prototype[ prop ].apply( this, args );
			}

			return function() {
				var __super = this._super;
				var __superApply = this._superApply;
				var returnValue;

				this._super = _super;
				this._superApply = _superApply;

				returnValue = value.apply( this, arguments );

				this._super = __super;
				this._superApply = __superApply;

				return returnValue;
			};
		} )();
	} );
	constructor.prototype = $.widget.extend( basePrototype, {

		// TODO: remove support for widgetEventPrefix
		// always use the name + a colon as the prefix, e.g., draggable:start
		// don't prefix for widgets that aren't DOM-based
		widgetEventPrefix: existingConstructor ? ( basePrototype.widgetEventPrefix || name ) : name
	}, proxiedPrototype, {
		constructor: constructor,
		namespace: namespace,
		widgetName: name,
		widgetFullName: fullName
	} );

	// If this widget is being redefined then we need to find all widgets that
	// are inheriting from it and redefine all of them so that they inherit from
	// the new version of this widget. We're essentially trying to replace one
	// level in the prototype chain.
	if ( existingConstructor ) {
		$.each( existingConstructor._childConstructors, function( i, child ) {
			var childPrototype = child.prototype;

			// Redefine the child widget using the same prototype that was
			// originally used, but inherit from the new version of the base
			$.widget( childPrototype.namespace + "." + childPrototype.widgetName, constructor,
				child._proto );
		} );

		// Remove the list of existing child constructors from the old constructor
		// so the old child constructors can be garbage collected
		delete existingConstructor._childConstructors;
	} else {
		base._childConstructors.push( constructor );
	}

	$.widget.bridge( name, constructor );

	return constructor;
};

$.widget.extend = function( target ) {
	var input = widgetSlice.call( arguments, 1 );
	var inputIndex = 0;
	var inputLength = input.length;
	var key;
	var value;

	for ( ; inputIndex < inputLength; inputIndex++ ) {
		for ( key in input[ inputIndex ] ) {
			value = input[ inputIndex ][ key ];
			if ( widgetHasOwnProperty.call( input[ inputIndex ], key ) && value !== undefined ) {

				// Clone objects
				if ( $.isPlainObject( value ) ) {
					target[ key ] = $.isPlainObject( target[ key ] ) ?
						$.widget.extend( {}, target[ key ], value ) :

						// Don't extend strings, arrays, etc. with objects
						$.widget.extend( {}, value );

				// Copy everything else by reference
				} else {
					target[ key ] = value;
				}
			}
		}
	}
	return target;
};

$.widget.bridge = function( name, object ) {
	var fullName = object.prototype.widgetFullName || name;
	$.fn[ name ] = function( options ) {
		var isMethodCall = typeof options === "string";
		var args = widgetSlice.call( arguments, 1 );
		var returnValue = this;

		if ( isMethodCall ) {

			// If this is an empty collection, we need to have the instance method
			// return undefined instead of the jQuery instance
			if ( !this.length && options === "instance" ) {
				returnValue = undefined;
			} else {
				this.each( function() {
					var methodValue;
					var instance = $.data( this, fullName );

					if ( options === "instance" ) {
						returnValue = instance;
						return false;
					}

					if ( !instance ) {
						return $.error( "cannot call methods on " + name +
							" prior to initialization; " +
							"attempted to call method '" + options + "'" );
					}

					if ( typeof instance[ options ] !== "function" ||
						options.charAt( 0 ) === "_" ) {
						return $.error( "no such method '" + options + "' for " + name +
							" widget instance" );
					}

					methodValue = instance[ options ].apply( instance, args );

					if ( methodValue !== instance && methodValue !== undefined ) {
						returnValue = methodValue && methodValue.jquery ?
							returnValue.pushStack( methodValue.get() ) :
							methodValue;
						return false;
					}
				} );
			}
		} else {

			// Allow multiple hashes to be passed on init
			if ( args.length ) {
				options = $.widget.extend.apply( null, [ options ].concat( args ) );
			}

			this.each( function() {
				var instance = $.data( this, fullName );
				if ( instance ) {
					instance.option( options || {} );
					if ( instance._init ) {
						instance._init();
					}
				} else {
					$.data( this, fullName, new object( options, this ) );
				}
			} );
		}

		return returnValue;
	};
};

$.Widget = function( /* options, element */ ) {};
$.Widget._childConstructors = [];

$.Widget.prototype = {
	widgetName: "widget",
	widgetEventPrefix: "",
	defaultElement: "<div>",

	options: {
		classes: {},
		disabled: false,

		// Callbacks
		create: null
	},

	_createWidget: function( options, element ) {
		element = $( element || this.defaultElement || this )[ 0 ];
		this.element = $( element );
		this.uuid = widgetUuid++;
		this.eventNamespace = "." + this.widgetName + this.uuid;

		this.bindings = $();
		this.hoverable = $();
		this.focusable = $();
		this.classesElementLookup = {};

		if ( element !== this ) {
			$.data( element, this.widgetFullName, this );
			this._on( true, this.element, {
				remove: function( event ) {
					if ( event.target === element ) {
						this.destroy();
					}
				}
			} );
			this.document = $( element.style ?

				// Element within the document
				element.ownerDocument :

				// Element is window or document
				element.document || element );
			this.window = $( this.document[ 0 ].defaultView || this.document[ 0 ].parentWindow );
		}

		this.options = $.widget.extend( {},
			this.options,
			this._getCreateOptions(),
			options );

		this._create();

		if ( this.options.disabled ) {
			this._setOptionDisabled( this.options.disabled );
		}

		this._trigger( "create", null, this._getCreateEventData() );
		this._init();
	},

	_getCreateOptions: function() {
		return {};
	},

	_getCreateEventData: $.noop,

	_create: $.noop,

	_init: $.noop,

	destroy: function() {
		var that = this;

		this._destroy();
		$.each( this.classesElementLookup, function( key, value ) {
			that._removeClass( value, key );
		} );

		// We can probably remove the unbind calls in 2.0
		// all event bindings should go through this._on()
		this.element
			.off( this.eventNamespace )
			.removeData( this.widgetFullName );
		this.widget()
			.off( this.eventNamespace )
			.removeAttr( "aria-disabled" );

		// Clean up events and states
		this.bindings.off( this.eventNamespace );
	},

	_destroy: $.noop,

	widget: function() {
		return this.element;
	},

	option: function( key, value ) {
		var options = key;
		var parts;
		var curOption;
		var i;

		if ( arguments.length === 0 ) {

			// Don't return a reference to the internal hash
			return $.widget.extend( {}, this.options );
		}

		if ( typeof key === "string" ) {

			// Handle nested keys, e.g., "foo.bar" => { foo: { bar: ___ } }
			options = {};
			parts = key.split( "." );
			key = parts.shift();
			if ( parts.length ) {
				curOption = options[ key ] = $.widget.extend( {}, this.options[ key ] );
				for ( i = 0; i < parts.length - 1; i++ ) {
					curOption[ parts[ i ] ] = curOption[ parts[ i ] ] || {};
					curOption = curOption[ parts[ i ] ];
				}
				key = parts.pop();
				if ( arguments.length === 1 ) {
					return curOption[ key ] === undefined ? null : curOption[ key ];
				}
				curOption[ key ] = value;
			} else {
				if ( arguments.length === 1 ) {
					return this.options[ key ] === undefined ? null : this.options[ key ];
				}
				options[ key ] = value;
			}
		}

		this._setOptions( options );

		return this;
	},

	_setOptions: function( options ) {
		var key;

		for ( key in options ) {
			this._setOption( key, options[ key ] );
		}

		return this;
	},

	_setOption: function( key, value ) {
		if ( key === "classes" ) {
			this._setOptionClasses( value );
		}

		this.options[ key ] = value;

		if ( key === "disabled" ) {
			this._setOptionDisabled( value );
		}

		return this;
	},

	_setOptionClasses: function( value ) {
		var classKey, elements, currentElements;

		for ( classKey in value ) {
			currentElements = this.classesElementLookup[ classKey ];
			if ( value[ classKey ] === this.options.classes[ classKey ] ||
					!currentElements ||
					!currentElements.length ) {
				continue;
			}

			// We are doing this to create a new jQuery object because the _removeClass() call
			// on the next line is going to destroy the reference to the current elements being
			// tracked. We need to save a copy of this collection so that we can add the new classes
			// below.
			elements = $( currentElements.get() );
			this._removeClass( currentElements, classKey );

			// We don't use _addClass() here, because that uses this.options.classes
			// for generating the string of classes. We want to use the value passed in from
			// _setOption(), this is the new value of the classes option which was passed to
			// _setOption(). We pass this value directly to _classes().
			elements.addClass( this._classes( {
				element: elements,
				keys: classKey,
				classes: value,
				add: true
			} ) );
		}
	},

	_setOptionDisabled: function( value ) {
		this._toggleClass( this.widget(), this.widgetFullName + "-disabled", null, !!value );

		// If the widget is becoming disabled, then nothing is interactive
		if ( value ) {
			this._removeClass( this.hoverable, null, "ui-state-hover" );
			this._removeClass( this.focusable, null, "ui-state-focus" );
		}
	},

	enable: function() {
		return this._setOptions( { disabled: false } );
	},

	disable: function() {
		return this._setOptions( { disabled: true } );
	},

	_classes: function( options ) {
		var full = [];
		var that = this;

		options = $.extend( {
			element: this.element,
			classes: this.options.classes || {}
		}, options );

		function bindRemoveEvent() {
			var nodesToBind = [];

			options.element.each( function( _, element ) {
				var isTracked = $.map( that.classesElementLookup, function( elements ) {
					return elements;
				} )
					.some( function( elements ) {
						return elements.is( element );
					} );

				if ( !isTracked ) {
					nodesToBind.push( element );
				}
			} );

			that._on( $( nodesToBind ), {
				remove: "_untrackClassesElement"
			} );
		}

		function processClassString( classes, checkOption ) {
			var current, i;
			for ( i = 0; i < classes.length; i++ ) {
				current = that.classesElementLookup[ classes[ i ] ] || $();
				if ( options.add ) {
					bindRemoveEvent();
					current = $( $.uniqueSort( current.get().concat( options.element.get() ) ) );
				} else {
					current = $( current.not( options.element ).get() );
				}
				that.classesElementLookup[ classes[ i ] ] = current;
				full.push( classes[ i ] );
				if ( checkOption && options.classes[ classes[ i ] ] ) {
					full.push( options.classes[ classes[ i ] ] );
				}
			}
		}

		if ( options.keys ) {
			processClassString( options.keys.match( /\S+/g ) || [], true );
		}
		if ( options.extra ) {
			processClassString( options.extra.match( /\S+/g ) || [] );
		}

		return full.join( " " );
	},

	_untrackClassesElement: function( event ) {
		var that = this;
		$.each( that.classesElementLookup, function( key, value ) {
			if ( $.inArray( event.target, value ) !== -1 ) {
				that.classesElementLookup[ key ] = $( value.not( event.target ).get() );
			}
		} );

		this._off( $( event.target ) );
	},

	_removeClass: function( element, keys, extra ) {
		return this._toggleClass( element, keys, extra, false );
	},

	_addClass: function( element, keys, extra ) {
		return this._toggleClass( element, keys, extra, true );
	},

	_toggleClass: function( element, keys, extra, add ) {
		add = ( typeof add === "boolean" ) ? add : extra;
		var shift = ( typeof element === "string" || element === null ),
			options = {
				extra: shift ? keys : extra,
				keys: shift ? element : keys,
				element: shift ? this.element : element,
				add: add
			};
		options.element.toggleClass( this._classes( options ), add );
		return this;
	},

	_on: function( suppressDisabledCheck, element, handlers ) {
		var delegateElement;
		var instance = this;

		// No suppressDisabledCheck flag, shuffle arguments
		if ( typeof suppressDisabledCheck !== "boolean" ) {
			handlers = element;
			element = suppressDisabledCheck;
			suppressDisabledCheck = false;
		}

		// No element argument, shuffle and use this.element
		if ( !handlers ) {
			handlers = element;
			element = this.element;
			delegateElement = this.widget();
		} else {
			element = delegateElement = $( element );
			this.bindings = this.bindings.add( element );
		}

		$.each( handlers, function( event, handler ) {
			function handlerProxy() {

				// Allow widgets to customize the disabled handling
				// - disabled as an array instead of boolean
				// - disabled class as method for disabling individual parts
				if ( !suppressDisabledCheck &&
						( instance.options.disabled === true ||
						$( this ).hasClass( "ui-state-disabled" ) ) ) {
					return;
				}
				return ( typeof handler === "string" ? instance[ handler ] : handler )
					.apply( instance, arguments );
			}

			// Copy the guid so direct unbinding works
			if ( typeof handler !== "string" ) {
				handlerProxy.guid = handler.guid =
					handler.guid || handlerProxy.guid || $.guid++;
			}

			var match = event.match( /^([\w:-]*)\s*(.*)$/ );
			var eventName = match[ 1 ] + instance.eventNamespace;
			var selector = match[ 2 ];

			if ( selector ) {
				delegateElement.on( eventName, selector, handlerProxy );
			} else {
				element.on( eventName, handlerProxy );
			}
		} );
	},

	_off: function( element, eventName ) {
		eventName = ( eventName || "" ).split( " " ).join( this.eventNamespace + " " ) +
			this.eventNamespace;
		element.off( eventName );

		// Clear the stack to avoid memory leaks (#10056)
		this.bindings = $( this.bindings.not( element ).get() );
		this.focusable = $( this.focusable.not( element ).get() );
		this.hoverable = $( this.hoverable.not( element ).get() );
	},

	_delay: function( handler, delay ) {
		function handlerProxy() {
			return ( typeof handler === "string" ? instance[ handler ] : handler )
				.apply( instance, arguments );
		}
		var instance = this;
		return setTimeout( handlerProxy, delay || 0 );
	},

	_hoverable: function( element ) {
		this.hoverable = this.hoverable.add( element );
		this._on( element, {
			mouseenter: function( event ) {
				this._addClass( $( event.currentTarget ), null, "ui-state-hover" );
			},
			mouseleave: function( event ) {
				this._removeClass( $( event.currentTarget ), null, "ui-state-hover" );
			}
		} );
	},

	_focusable: function( element ) {
		this.focusable = this.focusable.add( element );
		this._on( element, {
			focusin: function( event ) {
				this._addClass( $( event.currentTarget ), null, "ui-state-focus" );
			},
			focusout: function( event ) {
				this._removeClass( $( event.currentTarget ), null, "ui-state-focus" );
			}
		} );
	},

	_trigger: function( type, event, data ) {
		var prop, orig;
		var callback = this.options[ type ];

		data = data || {};
		event = $.Event( event );
		event.type = ( type === this.widgetEventPrefix ?
			type :
			this.widgetEventPrefix + type ).toLowerCase();

		// The original event may come from any element
		// so we need to reset the target on the new event
		event.target = this.element[ 0 ];

		// Copy original event properties over to the new event
		orig = event.originalEvent;
		if ( orig ) {
			for ( prop in orig ) {
				if ( !( prop in event ) ) {
					event[ prop ] = orig[ prop ];
				}
			}
		}

		this.element.trigger( event, data );
		return !( typeof callback === "function" &&
			callback.apply( this.element[ 0 ], [ event ].concat( data ) ) === false ||
			event.isDefaultPrevented() );
	}
};

$.each( { show: "fadeIn", hide: "fadeOut" }, function( method, defaultEffect ) {
	$.Widget.prototype[ "_" + method ] = function( element, options, callback ) {
		if ( typeof options === "string" ) {
			options = { effect: options };
		}

		var hasOptions;
		var effectName = !options ?
			method :
			options === true || typeof options === "number" ?
				defaultEffect :
				options.effect || defaultEffect;

		options = options || {};
		if ( typeof options === "number" ) {
			options = { duration: options };
		} else if ( options === true ) {
			options = {};
		}

		hasOptions = !$.isEmptyObject( options );
		options.complete = callback;

		if ( options.delay ) {
			element.delay( options.delay );
		}

		if ( hasOptions && $.effects && $.effects.effect[ effectName ] ) {
			element[ method ]( options );
		} else if ( effectName !== method && element[ effectName ] ) {
			element[ effectName ]( options.duration, options.easing, callback );
		} else {
			element.queue( function( next ) {
				$( this )[ method ]();
				if ( callback ) {
					callback.call( element[ 0 ] );
				}
				next();
			} );
		}
	};
} );

return $.widget;

} );


/***/ }),

/***/ 19755:
/***/ (function(module, exports) {

var __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;/*!
 * jQuery JavaScript Library v3.7.1
 * https://jquery.com/
 *
 * Copyright OpenJS Foundation and other contributors
 * Released under the MIT license
 * https://jquery.org/license
 *
 * Date: 2023-08-28T13:37Z
 */
( function( global, factory ) {

	"use strict";

	if (  true && typeof module.exports === "object" ) {

		// For CommonJS and CommonJS-like environments where a proper `window`
		// is present, execute the factory and get jQuery.
		// For environments that do not have a `window` with a `document`
		// (such as Node.js), expose a factory as module.exports.
		// This accentuates the need for the creation of a real `window`.
		// e.g. var jQuery = require("jquery")(window);
		// See ticket trac-14549 for more info.
		module.exports = global.document ?
			factory( global, true ) :
			function( w ) {
				if ( !w.document ) {
					throw new Error( "jQuery requires a window with a document" );
				}
				return factory( w );
			};
	} else {
		factory( global );
	}

// Pass this if window is not defined yet
} )( typeof window !== "undefined" ? window : this, function( window, noGlobal ) {

// Edge <= 12 - 13+, Firefox <=18 - 45+, IE 10 - 11, Safari 5.1 - 9+, iOS 6 - 9.1
// throw exceptions when non-strict code (e.g., ASP.NET 4.5) accesses strict mode
// arguments.callee.caller (trac-13335). But as of jQuery 3.0 (2016), strict mode should be common
// enough that all such attempts are guarded in a try block.
"use strict";

var arr = [];

var getProto = Object.getPrototypeOf;

var slice = arr.slice;

var flat = arr.flat ? function( array ) {
	return arr.flat.call( array );
} : function( array ) {
	return arr.concat.apply( [], array );
};


var push = arr.push;

var indexOf = arr.indexOf;

var class2type = {};

var toString = class2type.toString;

var hasOwn = class2type.hasOwnProperty;

var fnToString = hasOwn.toString;

var ObjectFunctionString = fnToString.call( Object );

var support = {};

var isFunction = function isFunction( obj ) {

		// Support: Chrome <=57, Firefox <=52
		// In some browsers, typeof returns "function" for HTML <object> elements
		// (i.e., `typeof document.createElement( "object" ) === "function"`).
		// We don't want to classify *any* DOM node as a function.
		// Support: QtWeb <=3.8.5, WebKit <=534.34, wkhtmltopdf tool <=0.12.5
		// Plus for old WebKit, typeof returns "function" for HTML collections
		// (e.g., `typeof document.getElementsByTagName("div") === "function"`). (gh-4756)
		return typeof obj === "function" && typeof obj.nodeType !== "number" &&
			typeof obj.item !== "function";
	};


var isWindow = function isWindow( obj ) {
		return obj != null && obj === obj.window;
	};


var document = window.document;



	var preservedScriptAttributes = {
		type: true,
		src: true,
		nonce: true,
		noModule: true
	};

	function DOMEval( code, node, doc ) {
		doc = doc || document;

		var i, val,
			script = doc.createElement( "script" );

		script.text = code;
		if ( node ) {
			for ( i in preservedScriptAttributes ) {

				// Support: Firefox 64+, Edge 18+
				// Some browsers don't support the "nonce" property on scripts.
				// On the other hand, just using `getAttribute` is not enough as
				// the `nonce` attribute is reset to an empty string whenever it
				// becomes browsing-context connected.
				// See https://github.com/whatwg/html/issues/2369
				// See https://html.spec.whatwg.org/#nonce-attributes
				// The `node.getAttribute` check was added for the sake of
				// `jQuery.globalEval` so that it can fake a nonce-containing node
				// via an object.
				val = node[ i ] || node.getAttribute && node.getAttribute( i );
				if ( val ) {
					script.setAttribute( i, val );
				}
			}
		}
		doc.head.appendChild( script ).parentNode.removeChild( script );
	}


function toType( obj ) {
	if ( obj == null ) {
		return obj + "";
	}

	// Support: Android <=2.3 only (functionish RegExp)
	return typeof obj === "object" || typeof obj === "function" ?
		class2type[ toString.call( obj ) ] || "object" :
		typeof obj;
}
/* global Symbol */
// Defining this global in .eslintrc.json would create a danger of using the global
// unguarded in another place, it seems safer to define global only for this module



var version = "3.7.1",

	rhtmlSuffix = /HTML$/i,

	// Define a local copy of jQuery
	jQuery = function( selector, context ) {

		// The jQuery object is actually just the init constructor 'enhanced'
		// Need init if jQuery is called (just allow error to be thrown if not included)
		return new jQuery.fn.init( selector, context );
	};

jQuery.fn = jQuery.prototype = {

	// The current version of jQuery being used
	jquery: version,

	constructor: jQuery,

	// The default length of a jQuery object is 0
	length: 0,

	toArray: function() {
		return slice.call( this );
	},

	// Get the Nth element in the matched element set OR
	// Get the whole matched element set as a clean array
	get: function( num ) {

		// Return all the elements in a clean array
		if ( num == null ) {
			return slice.call( this );
		}

		// Return just the one element from the set
		return num < 0 ? this[ num + this.length ] : this[ num ];
	},

	// Take an array of elements and push it onto the stack
	// (returning the new matched element set)
	pushStack: function( elems ) {

		// Build a new jQuery matched element set
		var ret = jQuery.merge( this.constructor(), elems );

		// Add the old object onto the stack (as a reference)
		ret.prevObject = this;

		// Return the newly-formed element set
		return ret;
	},

	// Execute a callback for every element in the matched set.
	each: function( callback ) {
		return jQuery.each( this, callback );
	},

	map: function( callback ) {
		return this.pushStack( jQuery.map( this, function( elem, i ) {
			return callback.call( elem, i, elem );
		} ) );
	},

	slice: function() {
		return this.pushStack( slice.apply( this, arguments ) );
	},

	first: function() {
		return this.eq( 0 );
	},

	last: function() {
		return this.eq( -1 );
	},

	even: function() {
		return this.pushStack( jQuery.grep( this, function( _elem, i ) {
			return ( i + 1 ) % 2;
		} ) );
	},

	odd: function() {
		return this.pushStack( jQuery.grep( this, function( _elem, i ) {
			return i % 2;
		} ) );
	},

	eq: function( i ) {
		var len = this.length,
			j = +i + ( i < 0 ? len : 0 );
		return this.pushStack( j >= 0 && j < len ? [ this[ j ] ] : [] );
	},

	end: function() {
		return this.prevObject || this.constructor();
	},

	// For internal use only.
	// Behaves like an Array's method, not like a jQuery method.
	push: push,
	sort: arr.sort,
	splice: arr.splice
};

jQuery.extend = jQuery.fn.extend = function() {
	var options, name, src, copy, copyIsArray, clone,
		target = arguments[ 0 ] || {},
		i = 1,
		length = arguments.length,
		deep = false;

	// Handle a deep copy situation
	if ( typeof target === "boolean" ) {
		deep = target;

		// Skip the boolean and the target
		target = arguments[ i ] || {};
		i++;
	}

	// Handle case when target is a string or something (possible in deep copy)
	if ( typeof target !== "object" && !isFunction( target ) ) {
		target = {};
	}

	// Extend jQuery itself if only one argument is passed
	if ( i === length ) {
		target = this;
		i--;
	}

	for ( ; i < length; i++ ) {

		// Only deal with non-null/undefined values
		if ( ( options = arguments[ i ] ) != null ) {

			// Extend the base object
			for ( name in options ) {
				copy = options[ name ];

				// Prevent Object.prototype pollution
				// Prevent never-ending loop
				if ( name === "__proto__" || target === copy ) {
					continue;
				}

				// Recurse if we're merging plain objects or arrays
				if ( deep && copy && ( jQuery.isPlainObject( copy ) ||
					( copyIsArray = Array.isArray( copy ) ) ) ) {
					src = target[ name ];

					// Ensure proper type for the source value
					if ( copyIsArray && !Array.isArray( src ) ) {
						clone = [];
					} else if ( !copyIsArray && !jQuery.isPlainObject( src ) ) {
						clone = {};
					} else {
						clone = src;
					}
					copyIsArray = false;

					// Never move original objects, clone them
					target[ name ] = jQuery.extend( deep, clone, copy );

				// Don't bring in undefined values
				} else if ( copy !== undefined ) {
					target[ name ] = copy;
				}
			}
		}
	}

	// Return the modified object
	return target;
};

jQuery.extend( {

	// Unique for each copy of jQuery on the page
	expando: "jQuery" + ( version + Math.random() ).replace( /\D/g, "" ),

	// Assume jQuery is ready without the ready module
	isReady: true,

	error: function( msg ) {
		throw new Error( msg );
	},

	noop: function() {},

	isPlainObject: function( obj ) {
		var proto, Ctor;

		// Detect obvious negatives
		// Use toString instead of jQuery.type to catch host objects
		if ( !obj || toString.call( obj ) !== "[object Object]" ) {
			return false;
		}

		proto = getProto( obj );

		// Objects with no prototype (e.g., `Object.create( null )`) are plain
		if ( !proto ) {
			return true;
		}

		// Objects with prototype are plain iff they were constructed by a global Object function
		Ctor = hasOwn.call( proto, "constructor" ) && proto.constructor;
		return typeof Ctor === "function" && fnToString.call( Ctor ) === ObjectFunctionString;
	},

	isEmptyObject: function( obj ) {
		var name;

		for ( name in obj ) {
			return false;
		}
		return true;
	},

	// Evaluates a script in a provided context; falls back to the global one
	// if not specified.
	globalEval: function( code, options, doc ) {
		DOMEval( code, { nonce: options && options.nonce }, doc );
	},

	each: function( obj, callback ) {
		var length, i = 0;

		if ( isArrayLike( obj ) ) {
			length = obj.length;
			for ( ; i < length; i++ ) {
				if ( callback.call( obj[ i ], i, obj[ i ] ) === false ) {
					break;
				}
			}
		} else {
			for ( i in obj ) {
				if ( callback.call( obj[ i ], i, obj[ i ] ) === false ) {
					break;
				}
			}
		}

		return obj;
	},


	// Retrieve the text value of an array of DOM nodes
	text: function( elem ) {
		var node,
			ret = "",
			i = 0,
			nodeType = elem.nodeType;

		if ( !nodeType ) {

			// If no nodeType, this is expected to be an array
			while ( ( node = elem[ i++ ] ) ) {

				// Do not traverse comment nodes
				ret += jQuery.text( node );
			}
		}
		if ( nodeType === 1 || nodeType === 11 ) {
			return elem.textContent;
		}
		if ( nodeType === 9 ) {
			return elem.documentElement.textContent;
		}
		if ( nodeType === 3 || nodeType === 4 ) {
			return elem.nodeValue;
		}

		// Do not include comment or processing instruction nodes

		return ret;
	},

	// results is for internal usage only
	makeArray: function( arr, results ) {
		var ret = results || [];

		if ( arr != null ) {
			if ( isArrayLike( Object( arr ) ) ) {
				jQuery.merge( ret,
					typeof arr === "string" ?
						[ arr ] : arr
				);
			} else {
				push.call( ret, arr );
			}
		}

		return ret;
	},

	inArray: function( elem, arr, i ) {
		return arr == null ? -1 : indexOf.call( arr, elem, i );
	},

	isXMLDoc: function( elem ) {
		var namespace = elem && elem.namespaceURI,
			docElem = elem && ( elem.ownerDocument || elem ).documentElement;

		// Assume HTML when documentElement doesn't yet exist, such as inside
		// document fragments.
		return !rhtmlSuffix.test( namespace || docElem && docElem.nodeName || "HTML" );
	},

	// Support: Android <=4.0 only, PhantomJS 1 only
	// push.apply(_, arraylike) throws on ancient WebKit
	merge: function( first, second ) {
		var len = +second.length,
			j = 0,
			i = first.length;

		for ( ; j < len; j++ ) {
			first[ i++ ] = second[ j ];
		}

		first.length = i;

		return first;
	},

	grep: function( elems, callback, invert ) {
		var callbackInverse,
			matches = [],
			i = 0,
			length = elems.length,
			callbackExpect = !invert;

		// Go through the array, only saving the items
		// that pass the validator function
		for ( ; i < length; i++ ) {
			callbackInverse = !callback( elems[ i ], i );
			if ( callbackInverse !== callbackExpect ) {
				matches.push( elems[ i ] );
			}
		}

		return matches;
	},

	// arg is for internal usage only
	map: function( elems, callback, arg ) {
		var length, value,
			i = 0,
			ret = [];

		// Go through the array, translating each of the items to their new values
		if ( isArrayLike( elems ) ) {
			length = elems.length;
			for ( ; i < length; i++ ) {
				value = callback( elems[ i ], i, arg );

				if ( value != null ) {
					ret.push( value );
				}
			}

		// Go through every key on the object,
		} else {
			for ( i in elems ) {
				value = callback( elems[ i ], i, arg );

				if ( value != null ) {
					ret.push( value );
				}
			}
		}

		// Flatten any nested arrays
		return flat( ret );
	},

	// A global GUID counter for objects
	guid: 1,

	// jQuery.support is not used in Core but other projects attach their
	// properties to it so it needs to exist.
	support: support
} );

if ( typeof Symbol === "function" ) {
	jQuery.fn[ Symbol.iterator ] = arr[ Symbol.iterator ];
}

// Populate the class2type map
jQuery.each( "Boolean Number String Function Array Date RegExp Object Error Symbol".split( " " ),
	function( _i, name ) {
		class2type[ "[object " + name + "]" ] = name.toLowerCase();
	} );

function isArrayLike( obj ) {

	// Support: real iOS 8.2 only (not reproducible in simulator)
	// `in` check used to prevent JIT error (gh-2145)
	// hasOwn isn't used here due to false negatives
	// regarding Nodelist length in IE
	var length = !!obj && "length" in obj && obj.length,
		type = toType( obj );

	if ( isFunction( obj ) || isWindow( obj ) ) {
		return false;
	}

	return type === "array" || length === 0 ||
		typeof length === "number" && length > 0 && ( length - 1 ) in obj;
}


function nodeName( elem, name ) {

	return elem.nodeName && elem.nodeName.toLowerCase() === name.toLowerCase();

}
var pop = arr.pop;


var sort = arr.sort;


var splice = arr.splice;


var whitespace = "[\\x20\\t\\r\\n\\f]";


var rtrimCSS = new RegExp(
	"^" + whitespace + "+|((?:^|[^\\\\])(?:\\\\.)*)" + whitespace + "+$",
	"g"
);




// Note: an element does not contain itself
jQuery.contains = function( a, b ) {
	var bup = b && b.parentNode;

	return a === bup || !!( bup && bup.nodeType === 1 && (

		// Support: IE 9 - 11+
		// IE doesn't have `contains` on SVG.
		a.contains ?
			a.contains( bup ) :
			a.compareDocumentPosition && a.compareDocumentPosition( bup ) & 16
	) );
};




// CSS string/identifier serialization
// https://drafts.csswg.org/cssom/#common-serializing-idioms
var rcssescape = /([\0-\x1f\x7f]|^-?\d)|^-$|[^\x80-\uFFFF\w-]/g;

function fcssescape( ch, asCodePoint ) {
	if ( asCodePoint ) {

		// U+0000 NULL becomes U+FFFD REPLACEMENT CHARACTER
		if ( ch === "\0" ) {
			return "\uFFFD";
		}

		// Control characters and (dependent upon position) numbers get escaped as code points
		return ch.slice( 0, -1 ) + "\\" + ch.charCodeAt( ch.length - 1 ).toString( 16 ) + " ";
	}

	// Other potentially-special ASCII characters get backslash-escaped
	return "\\" + ch;
}

jQuery.escapeSelector = function( sel ) {
	return ( sel + "" ).replace( rcssescape, fcssescape );
};




var preferredDoc = document,
	pushNative = push;

( function() {

var i,
	Expr,
	outermostContext,
	sortInput,
	hasDuplicate,
	push = pushNative,

	// Local document vars
	document,
	documentElement,
	documentIsHTML,
	rbuggyQSA,
	matches,

	// Instance-specific data
	expando = jQuery.expando,
	dirruns = 0,
	done = 0,
	classCache = createCache(),
	tokenCache = createCache(),
	compilerCache = createCache(),
	nonnativeSelectorCache = createCache(),
	sortOrder = function( a, b ) {
		if ( a === b ) {
			hasDuplicate = true;
		}
		return 0;
	},

	booleans = "checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|" +
		"loop|multiple|open|readonly|required|scoped",

	// Regular expressions

	// https://www.w3.org/TR/css-syntax-3/#ident-token-diagram
	identifier = "(?:\\\\[\\da-fA-F]{1,6}" + whitespace +
		"?|\\\\[^\\r\\n\\f]|[\\w-]|[^\0-\\x7f])+",

	// Attribute selectors: https://www.w3.org/TR/selectors/#attribute-selectors
	attributes = "\\[" + whitespace + "*(" + identifier + ")(?:" + whitespace +

		// Operator (capture 2)
		"*([*^$|!~]?=)" + whitespace +

		// "Attribute values must be CSS identifiers [capture 5] or strings [capture 3 or capture 4]"
		"*(?:'((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\"|(" + identifier + "))|)" +
		whitespace + "*\\]",

	pseudos = ":(" + identifier + ")(?:\\((" +

		// To reduce the number of selectors needing tokenize in the preFilter, prefer arguments:
		// 1. quoted (capture 3; capture 4 or capture 5)
		"('((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\")|" +

		// 2. simple (capture 6)
		"((?:\\\\.|[^\\\\()[\\]]|" + attributes + ")*)|" +

		// 3. anything else (capture 2)
		".*" +
		")\\)|)",

	// Leading and non-escaped trailing whitespace, capturing some non-whitespace characters preceding the latter
	rwhitespace = new RegExp( whitespace + "+", "g" ),

	rcomma = new RegExp( "^" + whitespace + "*," + whitespace + "*" ),
	rleadingCombinator = new RegExp( "^" + whitespace + "*([>+~]|" + whitespace + ")" +
		whitespace + "*" ),
	rdescend = new RegExp( whitespace + "|>" ),

	rpseudo = new RegExp( pseudos ),
	ridentifier = new RegExp( "^" + identifier + "$" ),

	matchExpr = {
		ID: new RegExp( "^#(" + identifier + ")" ),
		CLASS: new RegExp( "^\\.(" + identifier + ")" ),
		TAG: new RegExp( "^(" + identifier + "|[*])" ),
		ATTR: new RegExp( "^" + attributes ),
		PSEUDO: new RegExp( "^" + pseudos ),
		CHILD: new RegExp(
			"^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\(" +
				whitespace + "*(even|odd|(([+-]|)(\\d*)n|)" + whitespace + "*(?:([+-]|)" +
				whitespace + "*(\\d+)|))" + whitespace + "*\\)|)", "i" ),
		bool: new RegExp( "^(?:" + booleans + ")$", "i" ),

		// For use in libraries implementing .is()
		// We use this for POS matching in `select`
		needsContext: new RegExp( "^" + whitespace +
			"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\(" + whitespace +
			"*((?:-\\d)?\\d*)" + whitespace + "*\\)|)(?=[^-]|$)", "i" )
	},

	rinputs = /^(?:input|select|textarea|button)$/i,
	rheader = /^h\d$/i,

	// Easily-parseable/retrievable ID or TAG or CLASS selectors
	rquickExpr = /^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,

	rsibling = /[+~]/,

	// CSS escapes
	// https://www.w3.org/TR/CSS21/syndata.html#escaped-characters
	runescape = new RegExp( "\\\\[\\da-fA-F]{1,6}" + whitespace +
		"?|\\\\([^\\r\\n\\f])", "g" ),
	funescape = function( escape, nonHex ) {
		var high = "0x" + escape.slice( 1 ) - 0x10000;

		if ( nonHex ) {

			// Strip the backslash prefix from a non-hex escape sequence
			return nonHex;
		}

		// Replace a hexadecimal escape sequence with the encoded Unicode code point
		// Support: IE <=11+
		// For values outside the Basic Multilingual Plane (BMP), manually construct a
		// surrogate pair
		return high < 0 ?
			String.fromCharCode( high + 0x10000 ) :
			String.fromCharCode( high >> 10 | 0xD800, high & 0x3FF | 0xDC00 );
	},

	// Used for iframes; see `setDocument`.
	// Support: IE 9 - 11+, Edge 12 - 18+
	// Removing the function wrapper causes a "Permission Denied"
	// error in IE/Edge.
	unloadHandler = function() {
		setDocument();
	},

	inDisabledFieldset = addCombinator(
		function( elem ) {
			return elem.disabled === true && nodeName( elem, "fieldset" );
		},
		{ dir: "parentNode", next: "legend" }
	);

// Support: IE <=9 only
// Accessing document.activeElement can throw unexpectedly
// https://bugs.jquery.com/ticket/13393
function safeActiveElement() {
	try {
		return document.activeElement;
	} catch ( err ) { }
}

// Optimize for push.apply( _, NodeList )
try {
	push.apply(
		( arr = slice.call( preferredDoc.childNodes ) ),
		preferredDoc.childNodes
	);

	// Support: Android <=4.0
	// Detect silently failing push.apply
	// eslint-disable-next-line no-unused-expressions
	arr[ preferredDoc.childNodes.length ].nodeType;
} catch ( e ) {
	push = {
		apply: function( target, els ) {
			pushNative.apply( target, slice.call( els ) );
		},
		call: function( target ) {
			pushNative.apply( target, slice.call( arguments, 1 ) );
		}
	};
}

function find( selector, context, results, seed ) {
	var m, i, elem, nid, match, groups, newSelector,
		newContext = context && context.ownerDocument,

		// nodeType defaults to 9, since context defaults to document
		nodeType = context ? context.nodeType : 9;

	results = results || [];

	// Return early from calls with invalid selector or context
	if ( typeof selector !== "string" || !selector ||
		nodeType !== 1 && nodeType !== 9 && nodeType !== 11 ) {

		return results;
	}

	// Try to shortcut find operations (as opposed to filters) in HTML documents
	if ( !seed ) {
		setDocument( context );
		context = context || document;

		if ( documentIsHTML ) {

			// If the selector is sufficiently simple, try using a "get*By*" DOM method
			// (excepting DocumentFragment context, where the methods don't exist)
			if ( nodeType !== 11 && ( match = rquickExpr.exec( selector ) ) ) {

				// ID selector
				if ( ( m = match[ 1 ] ) ) {

					// Document context
					if ( nodeType === 9 ) {
						if ( ( elem = context.getElementById( m ) ) ) {

							// Support: IE 9 only
							// getElementById can match elements by name instead of ID
							if ( elem.id === m ) {
								push.call( results, elem );
								return results;
							}
						} else {
							return results;
						}

					// Element context
					} else {

						// Support: IE 9 only
						// getElementById can match elements by name instead of ID
						if ( newContext && ( elem = newContext.getElementById( m ) ) &&
							find.contains( context, elem ) &&
							elem.id === m ) {

							push.call( results, elem );
							return results;
						}
					}

				// Type selector
				} else if ( match[ 2 ] ) {
					push.apply( results, context.getElementsByTagName( selector ) );
					return results;

				// Class selector
				} else if ( ( m = match[ 3 ] ) && context.getElementsByClassName ) {
					push.apply( results, context.getElementsByClassName( m ) );
					return results;
				}
			}

			// Take advantage of querySelectorAll
			if ( !nonnativeSelectorCache[ selector + " " ] &&
				( !rbuggyQSA || !rbuggyQSA.test( selector ) ) ) {

				newSelector = selector;
				newContext = context;

				// qSA considers elements outside a scoping root when evaluating child or
				// descendant combinators, which is not what we want.
				// In such cases, we work around the behavior by prefixing every selector in the
				// list with an ID selector referencing the scope context.
				// The technique has to be used as well when a leading combinator is used
				// as such selectors are not recognized by querySelectorAll.
				// Thanks to Andrew Dupont for this technique.
				if ( nodeType === 1 &&
					( rdescend.test( selector ) || rleadingCombinator.test( selector ) ) ) {

					// Expand context for sibling selectors
					newContext = rsibling.test( selector ) && testContext( context.parentNode ) ||
						context;

					// We can use :scope instead of the ID hack if the browser
					// supports it & if we're not changing the context.
					// Support: IE 11+, Edge 17 - 18+
					// IE/Edge sometimes throw a "Permission denied" error when
					// strict-comparing two documents; shallow comparisons work.
					// eslint-disable-next-line eqeqeq
					if ( newContext != context || !support.scope ) {

						// Capture the context ID, setting it first if necessary
						if ( ( nid = context.getAttribute( "id" ) ) ) {
							nid = jQuery.escapeSelector( nid );
						} else {
							context.setAttribute( "id", ( nid = expando ) );
						}
					}

					// Prefix every selector in the list
					groups = tokenize( selector );
					i = groups.length;
					while ( i-- ) {
						groups[ i ] = ( nid ? "#" + nid : ":scope" ) + " " +
							toSelector( groups[ i ] );
					}
					newSelector = groups.join( "," );
				}

				try {
					push.apply( results,
						newContext.querySelectorAll( newSelector )
					);
					return results;
				} catch ( qsaError ) {
					nonnativeSelectorCache( selector, true );
				} finally {
					if ( nid === expando ) {
						context.removeAttribute( "id" );
					}
				}
			}
		}
	}

	// All others
	return select( selector.replace( rtrimCSS, "$1" ), context, results, seed );
}

/**
 * Create key-value caches of limited size
 * @returns {function(string, object)} Returns the Object data after storing it on itself with
 *	property name the (space-suffixed) string and (if the cache is larger than Expr.cacheLength)
 *	deleting the oldest entry
 */
function createCache() {
	var keys = [];

	function cache( key, value ) {

		// Use (key + " ") to avoid collision with native prototype properties
		// (see https://github.com/jquery/sizzle/issues/157)
		if ( keys.push( key + " " ) > Expr.cacheLength ) {

			// Only keep the most recent entries
			delete cache[ keys.shift() ];
		}
		return ( cache[ key + " " ] = value );
	}
	return cache;
}

/**
 * Mark a function for special use by jQuery selector module
 * @param {Function} fn The function to mark
 */
function markFunction( fn ) {
	fn[ expando ] = true;
	return fn;
}

/**
 * Support testing using an element
 * @param {Function} fn Passed the created element and returns a boolean result
 */
function assert( fn ) {
	var el = document.createElement( "fieldset" );

	try {
		return !!fn( el );
	} catch ( e ) {
		return false;
	} finally {

		// Remove from its parent by default
		if ( el.parentNode ) {
			el.parentNode.removeChild( el );
		}

		// release memory in IE
		el = null;
	}
}

/**
 * Returns a function to use in pseudos for input types
 * @param {String} type
 */
function createInputPseudo( type ) {
	return function( elem ) {
		return nodeName( elem, "input" ) && elem.type === type;
	};
}

/**
 * Returns a function to use in pseudos for buttons
 * @param {String} type
 */
function createButtonPseudo( type ) {
	return function( elem ) {
		return ( nodeName( elem, "input" ) || nodeName( elem, "button" ) ) &&
			elem.type === type;
	};
}

/**
 * Returns a function to use in pseudos for :enabled/:disabled
 * @param {Boolean} disabled true for :disabled; false for :enabled
 */
function createDisabledPseudo( disabled ) {

	// Known :disabled false positives: fieldset[disabled] > legend:nth-of-type(n+2) :can-disable
	return function( elem ) {

		// Only certain elements can match :enabled or :disabled
		// https://html.spec.whatwg.org/multipage/scripting.html#selector-enabled
		// https://html.spec.whatwg.org/multipage/scripting.html#selector-disabled
		if ( "form" in elem ) {

			// Check for inherited disabledness on relevant non-disabled elements:
			// * listed form-associated elements in a disabled fieldset
			//   https://html.spec.whatwg.org/multipage/forms.html#category-listed
			//   https://html.spec.whatwg.org/multipage/forms.html#concept-fe-disabled
			// * option elements in a disabled optgroup
			//   https://html.spec.whatwg.org/multipage/forms.html#concept-option-disabled
			// All such elements have a "form" property.
			if ( elem.parentNode && elem.disabled === false ) {

				// Option elements defer to a parent optgroup if present
				if ( "label" in elem ) {
					if ( "label" in elem.parentNode ) {
						return elem.parentNode.disabled === disabled;
					} else {
						return elem.disabled === disabled;
					}
				}

				// Support: IE 6 - 11+
				// Use the isDisabled shortcut property to check for disabled fieldset ancestors
				return elem.isDisabled === disabled ||

					// Where there is no isDisabled, check manually
					elem.isDisabled !== !disabled &&
						inDisabledFieldset( elem ) === disabled;
			}

			return elem.disabled === disabled;

		// Try to winnow out elements that can't be disabled before trusting the disabled property.
		// Some victims get caught in our net (label, legend, menu, track), but it shouldn't
		// even exist on them, let alone have a boolean value.
		} else if ( "label" in elem ) {
			return elem.disabled === disabled;
		}

		// Remaining elements are neither :enabled nor :disabled
		return false;
	};
}

/**
 * Returns a function to use in pseudos for positionals
 * @param {Function} fn
 */
function createPositionalPseudo( fn ) {
	return markFunction( function( argument ) {
		argument = +argument;
		return markFunction( function( seed, matches ) {
			var j,
				matchIndexes = fn( [], seed.length, argument ),
				i = matchIndexes.length;

			// Match elements found at the specified indexes
			while ( i-- ) {
				if ( seed[ ( j = matchIndexes[ i ] ) ] ) {
					seed[ j ] = !( matches[ j ] = seed[ j ] );
				}
			}
		} );
	} );
}

/**
 * Checks a node for validity as a jQuery selector context
 * @param {Element|Object=} context
 * @returns {Element|Object|Boolean} The input node if acceptable, otherwise a falsy value
 */
function testContext( context ) {
	return context && typeof context.getElementsByTagName !== "undefined" && context;
}

/**
 * Sets document-related variables once based on the current document
 * @param {Element|Object} [node] An element or document object to use to set the document
 * @returns {Object} Returns the current document
 */
function setDocument( node ) {
	var subWindow,
		doc = node ? node.ownerDocument || node : preferredDoc;

	// Return early if doc is invalid or already selected
	// Support: IE 11+, Edge 17 - 18+
	// IE/Edge sometimes throw a "Permission denied" error when strict-comparing
	// two documents; shallow comparisons work.
	// eslint-disable-next-line eqeqeq
	if ( doc == document || doc.nodeType !== 9 || !doc.documentElement ) {
		return document;
	}

	// Update global variables
	document = doc;
	documentElement = document.documentElement;
	documentIsHTML = !jQuery.isXMLDoc( document );

	// Support: iOS 7 only, IE 9 - 11+
	// Older browsers didn't support unprefixed `matches`.
	matches = documentElement.matches ||
		documentElement.webkitMatchesSelector ||
		documentElement.msMatchesSelector;

	// Support: IE 9 - 11+, Edge 12 - 18+
	// Accessing iframe documents after unload throws "permission denied" errors
	// (see trac-13936).
	// Limit the fix to IE & Edge Legacy; despite Edge 15+ implementing `matches`,
	// all IE 9+ and Edge Legacy versions implement `msMatchesSelector` as well.
	if ( documentElement.msMatchesSelector &&

		// Support: IE 11+, Edge 17 - 18+
		// IE/Edge sometimes throw a "Permission denied" error when strict-comparing
		// two documents; shallow comparisons work.
		// eslint-disable-next-line eqeqeq
		preferredDoc != document &&
		( subWindow = document.defaultView ) && subWindow.top !== subWindow ) {

		// Support: IE 9 - 11+, Edge 12 - 18+
		subWindow.addEventListener( "unload", unloadHandler );
	}

	// Support: IE <10
	// Check if getElementById returns elements by name
	// The broken getElementById methods don't pick up programmatically-set names,
	// so use a roundabout getElementsByName test
	support.getById = assert( function( el ) {
		documentElement.appendChild( el ).id = jQuery.expando;
		return !document.getElementsByName ||
			!document.getElementsByName( jQuery.expando ).length;
	} );

	// Support: IE 9 only
	// Check to see if it's possible to do matchesSelector
	// on a disconnected node.
	support.disconnectedMatch = assert( function( el ) {
		return matches.call( el, "*" );
	} );

	// Support: IE 9 - 11+, Edge 12 - 18+
	// IE/Edge don't support the :scope pseudo-class.
	support.scope = assert( function() {
		return document.querySelectorAll( ":scope" );
	} );

	// Support: Chrome 105 - 111 only, Safari 15.4 - 16.3 only
	// Make sure the `:has()` argument is parsed unforgivingly.
	// We include `*` in the test to detect buggy implementations that are
	// _selectively_ forgiving (specifically when the list includes at least
	// one valid selector).
	// Note that we treat complete lack of support for `:has()` as if it were
	// spec-compliant support, which is fine because use of `:has()` in such
	// environments will fail in the qSA path and fall back to jQuery traversal
	// anyway.
	support.cssHas = assert( function() {
		try {
			document.querySelector( ":has(*,:jqfake)" );
			return false;
		} catch ( e ) {
			return true;
		}
	} );

	// ID filter and find
	if ( support.getById ) {
		Expr.filter.ID = function( id ) {
			var attrId = id.replace( runescape, funescape );
			return function( elem ) {
				return elem.getAttribute( "id" ) === attrId;
			};
		};
		Expr.find.ID = function( id, context ) {
			if ( typeof context.getElementById !== "undefined" && documentIsHTML ) {
				var elem = context.getElementById( id );
				return elem ? [ elem ] : [];
			}
		};
	} else {
		Expr.filter.ID =  function( id ) {
			var attrId = id.replace( runescape, funescape );
			return function( elem ) {
				var node = typeof elem.getAttributeNode !== "undefined" &&
					elem.getAttributeNode( "id" );
				return node && node.value === attrId;
			};
		};

		// Support: IE 6 - 7 only
		// getElementById is not reliable as a find shortcut
		Expr.find.ID = function( id, context ) {
			if ( typeof context.getElementById !== "undefined" && documentIsHTML ) {
				var node, i, elems,
					elem = context.getElementById( id );

				if ( elem ) {

					// Verify the id attribute
					node = elem.getAttributeNode( "id" );
					if ( node && node.value === id ) {
						return [ elem ];
					}

					// Fall back on getElementsByName
					elems = context.getElementsByName( id );
					i = 0;
					while ( ( elem = elems[ i++ ] ) ) {
						node = elem.getAttributeNode( "id" );
						if ( node && node.value === id ) {
							return [ elem ];
						}
					}
				}

				return [];
			}
		};
	}

	// Tag
	Expr.find.TAG = function( tag, context ) {
		if ( typeof context.getElementsByTagName !== "undefined" ) {
			return context.getElementsByTagName( tag );

		// DocumentFragment nodes don't have gEBTN
		} else {
			return context.querySelectorAll( tag );
		}
	};

	// Class
	Expr.find.CLASS = function( className, context ) {
		if ( typeof context.getElementsByClassName !== "undefined" && documentIsHTML ) {
			return context.getElementsByClassName( className );
		}
	};

	/* QSA/matchesSelector
	---------------------------------------------------------------------- */

	// QSA and matchesSelector support

	rbuggyQSA = [];

	// Build QSA regex
	// Regex strategy adopted from Diego Perini
	assert( function( el ) {

		var input;

		documentElement.appendChild( el ).innerHTML =
			"<a id='" + expando + "' href='' disabled='disabled'></a>" +
			"<select id='" + expando + "-\r\\' disabled='disabled'>" +
			"<option selected=''></option></select>";

		// Support: iOS <=7 - 8 only
		// Boolean attributes and "value" are not treated correctly in some XML documents
		if ( !el.querySelectorAll( "[selected]" ).length ) {
			rbuggyQSA.push( "\\[" + whitespace + "*(?:value|" + booleans + ")" );
		}

		// Support: iOS <=7 - 8 only
		if ( !el.querySelectorAll( "[id~=" + expando + "-]" ).length ) {
			rbuggyQSA.push( "~=" );
		}

		// Support: iOS 8 only
		// https://bugs.webkit.org/show_bug.cgi?id=136851
		// In-page `selector#id sibling-combinator selector` fails
		if ( !el.querySelectorAll( "a#" + expando + "+*" ).length ) {
			rbuggyQSA.push( ".#.+[+~]" );
		}

		// Support: Chrome <=105+, Firefox <=104+, Safari <=15.4+
		// In some of the document kinds, these selectors wouldn't work natively.
		// This is probably OK but for backwards compatibility we want to maintain
		// handling them through jQuery traversal in jQuery 3.x.
		if ( !el.querySelectorAll( ":checked" ).length ) {
			rbuggyQSA.push( ":checked" );
		}

		// Support: Windows 8 Native Apps
		// The type and name attributes are restricted during .innerHTML assignment
		input = document.createElement( "input" );
		input.setAttribute( "type", "hidden" );
		el.appendChild( input ).setAttribute( "name", "D" );

		// Support: IE 9 - 11+
		// IE's :disabled selector does not pick up the children of disabled fieldsets
		// Support: Chrome <=105+, Firefox <=104+, Safari <=15.4+
		// In some of the document kinds, these selectors wouldn't work natively.
		// This is probably OK but for backwards compatibility we want to maintain
		// handling them through jQuery traversal in jQuery 3.x.
		documentElement.appendChild( el ).disabled = true;
		if ( el.querySelectorAll( ":disabled" ).length !== 2 ) {
			rbuggyQSA.push( ":enabled", ":disabled" );
		}

		// Support: IE 11+, Edge 15 - 18+
		// IE 11/Edge don't find elements on a `[name='']` query in some cases.
		// Adding a temporary attribute to the document before the selection works
		// around the issue.
		// Interestingly, IE 10 & older don't seem to have the issue.
		input = document.createElement( "input" );
		input.setAttribute( "name", "" );
		el.appendChild( input );
		if ( !el.querySelectorAll( "[name='']" ).length ) {
			rbuggyQSA.push( "\\[" + whitespace + "*name" + whitespace + "*=" +
				whitespace + "*(?:''|\"\")" );
		}
	} );

	if ( !support.cssHas ) {

		// Support: Chrome 105 - 110+, Safari 15.4 - 16.3+
		// Our regular `try-catch` mechanism fails to detect natively-unsupported
		// pseudo-classes inside `:has()` (such as `:has(:contains("Foo"))`)
		// in browsers that parse the `:has()` argument as a forgiving selector list.
		// https://drafts.csswg.org/selectors/#relational now requires the argument
		// to be parsed unforgivingly, but browsers have not yet fully adjusted.
		rbuggyQSA.push( ":has" );
	}

	rbuggyQSA = rbuggyQSA.length && new RegExp( rbuggyQSA.join( "|" ) );

	/* Sorting
	---------------------------------------------------------------------- */

	// Document order sorting
	sortOrder = function( a, b ) {

		// Flag for duplicate removal
		if ( a === b ) {
			hasDuplicate = true;
			return 0;
		}

		// Sort on method existence if only one input has compareDocumentPosition
		var compare = !a.compareDocumentPosition - !b.compareDocumentPosition;
		if ( compare ) {
			return compare;
		}

		// Calculate position if both inputs belong to the same document
		// Support: IE 11+, Edge 17 - 18+
		// IE/Edge sometimes throw a "Permission denied" error when strict-comparing
		// two documents; shallow comparisons work.
		// eslint-disable-next-line eqeqeq
		compare = ( a.ownerDocument || a ) == ( b.ownerDocument || b ) ?
			a.compareDocumentPosition( b ) :

			// Otherwise we know they are disconnected
			1;

		// Disconnected nodes
		if ( compare & 1 ||
			( !support.sortDetached && b.compareDocumentPosition( a ) === compare ) ) {

			// Choose the first element that is related to our preferred document
			// Support: IE 11+, Edge 17 - 18+
			// IE/Edge sometimes throw a "Permission denied" error when strict-comparing
			// two documents; shallow comparisons work.
			// eslint-disable-next-line eqeqeq
			if ( a === document || a.ownerDocument == preferredDoc &&
				find.contains( preferredDoc, a ) ) {
				return -1;
			}

			// Support: IE 11+, Edge 17 - 18+
			// IE/Edge sometimes throw a "Permission denied" error when strict-comparing
			// two documents; shallow comparisons work.
			// eslint-disable-next-line eqeqeq
			if ( b === document || b.ownerDocument == preferredDoc &&
				find.contains( preferredDoc, b ) ) {
				return 1;
			}

			// Maintain original order
			return sortInput ?
				( indexOf.call( sortInput, a ) - indexOf.call( sortInput, b ) ) :
				0;
		}

		return compare & 4 ? -1 : 1;
	};

	return document;
}

find.matches = function( expr, elements ) {
	return find( expr, null, null, elements );
};

find.matchesSelector = function( elem, expr ) {
	setDocument( elem );

	if ( documentIsHTML &&
		!nonnativeSelectorCache[ expr + " " ] &&
		( !rbuggyQSA || !rbuggyQSA.test( expr ) ) ) {

		try {
			var ret = matches.call( elem, expr );

			// IE 9's matchesSelector returns false on disconnected nodes
			if ( ret || support.disconnectedMatch ||

					// As well, disconnected nodes are said to be in a document
					// fragment in IE 9
					elem.document && elem.document.nodeType !== 11 ) {
				return ret;
			}
		} catch ( e ) {
			nonnativeSelectorCache( expr, true );
		}
	}

	return find( expr, document, null, [ elem ] ).length > 0;
};

find.contains = function( context, elem ) {

	// Set document vars if needed
	// Support: IE 11+, Edge 17 - 18+
	// IE/Edge sometimes throw a "Permission denied" error when strict-comparing
	// two documents; shallow comparisons work.
	// eslint-disable-next-line eqeqeq
	if ( ( context.ownerDocument || context ) != document ) {
		setDocument( context );
	}
	return jQuery.contains( context, elem );
};


find.attr = function( elem, name ) {

	// Set document vars if needed
	// Support: IE 11+, Edge 17 - 18+
	// IE/Edge sometimes throw a "Permission denied" error when strict-comparing
	// two documents; shallow comparisons work.
	// eslint-disable-next-line eqeqeq
	if ( ( elem.ownerDocument || elem ) != document ) {
		setDocument( elem );
	}

	var fn = Expr.attrHandle[ name.toLowerCase() ],

		// Don't get fooled by Object.prototype properties (see trac-13807)
		val = fn && hasOwn.call( Expr.attrHandle, name.toLowerCase() ) ?
			fn( elem, name, !documentIsHTML ) :
			undefined;

	if ( val !== undefined ) {
		return val;
	}

	return elem.getAttribute( name );
};

find.error = function( msg ) {
	throw new Error( "Syntax error, unrecognized expression: " + msg );
};

/**
 * Document sorting and removing duplicates
 * @param {ArrayLike} results
 */
jQuery.uniqueSort = function( results ) {
	var elem,
		duplicates = [],
		j = 0,
		i = 0;

	// Unless we *know* we can detect duplicates, assume their presence
	//
	// Support: Android <=4.0+
	// Testing for detecting duplicates is unpredictable so instead assume we can't
	// depend on duplicate detection in all browsers without a stable sort.
	hasDuplicate = !support.sortStable;
	sortInput = !support.sortStable && slice.call( results, 0 );
	sort.call( results, sortOrder );

	if ( hasDuplicate ) {
		while ( ( elem = results[ i++ ] ) ) {
			if ( elem === results[ i ] ) {
				j = duplicates.push( i );
			}
		}
		while ( j-- ) {
			splice.call( results, duplicates[ j ], 1 );
		}
	}

	// Clear input after sorting to release objects
	// See https://github.com/jquery/sizzle/pull/225
	sortInput = null;

	return results;
};

jQuery.fn.uniqueSort = function() {
	return this.pushStack( jQuery.uniqueSort( slice.apply( this ) ) );
};

Expr = jQuery.expr = {

	// Can be adjusted by the user
	cacheLength: 50,

	createPseudo: markFunction,

	match: matchExpr,

	attrHandle: {},

	find: {},

	relative: {
		">": { dir: "parentNode", first: true },
		" ": { dir: "parentNode" },
		"+": { dir: "previousSibling", first: true },
		"~": { dir: "previousSibling" }
	},

	preFilter: {
		ATTR: function( match ) {
			match[ 1 ] = match[ 1 ].replace( runescape, funescape );

			// Move the given value to match[3] whether quoted or unquoted
			match[ 3 ] = ( match[ 3 ] || match[ 4 ] || match[ 5 ] || "" )
				.replace( runescape, funescape );

			if ( match[ 2 ] === "~=" ) {
				match[ 3 ] = " " + match[ 3 ] + " ";
			}

			return match.slice( 0, 4 );
		},

		CHILD: function( match ) {

			/* matches from matchExpr["CHILD"]
				1 type (only|nth|...)
				2 what (child|of-type)
				3 argument (even|odd|\d*|\d*n([+-]\d+)?|...)
				4 xn-component of xn+y argument ([+-]?\d*n|)
				5 sign of xn-component
				6 x of xn-component
				7 sign of y-component
				8 y of y-component
			*/
			match[ 1 ] = match[ 1 ].toLowerCase();

			if ( match[ 1 ].slice( 0, 3 ) === "nth" ) {

				// nth-* requires argument
				if ( !match[ 3 ] ) {
					find.error( match[ 0 ] );
				}

				// numeric x and y parameters for Expr.filter.CHILD
				// remember that false/true cast respectively to 0/1
				match[ 4 ] = +( match[ 4 ] ?
					match[ 5 ] + ( match[ 6 ] || 1 ) :
					2 * ( match[ 3 ] === "even" || match[ 3 ] === "odd" )
				);
				match[ 5 ] = +( ( match[ 7 ] + match[ 8 ] ) || match[ 3 ] === "odd" );

			// other types prohibit arguments
			} else if ( match[ 3 ] ) {
				find.error( match[ 0 ] );
			}

			return match;
		},

		PSEUDO: function( match ) {
			var excess,
				unquoted = !match[ 6 ] && match[ 2 ];

			if ( matchExpr.CHILD.test( match[ 0 ] ) ) {
				return null;
			}

			// Accept quoted arguments as-is
			if ( match[ 3 ] ) {
				match[ 2 ] = match[ 4 ] || match[ 5 ] || "";

			// Strip excess characters from unquoted arguments
			} else if ( unquoted && rpseudo.test( unquoted ) &&

				// Get excess from tokenize (recursively)
				( excess = tokenize( unquoted, true ) ) &&

				// advance to the next closing parenthesis
				( excess = unquoted.indexOf( ")", unquoted.length - excess ) - unquoted.length ) ) {

				// excess is a negative index
				match[ 0 ] = match[ 0 ].slice( 0, excess );
				match[ 2 ] = unquoted.slice( 0, excess );
			}

			// Return only captures needed by the pseudo filter method (type and argument)
			return match.slice( 0, 3 );
		}
	},

	filter: {

		TAG: function( nodeNameSelector ) {
			var expectedNodeName = nodeNameSelector.replace( runescape, funescape ).toLowerCase();
			return nodeNameSelector === "*" ?
				function() {
					return true;
				} :
				function( elem ) {
					return nodeName( elem, expectedNodeName );
				};
		},

		CLASS: function( className ) {
			var pattern = classCache[ className + " " ];

			return pattern ||
				( pattern = new RegExp( "(^|" + whitespace + ")" + className +
					"(" + whitespace + "|$)" ) ) &&
				classCache( className, function( elem ) {
					return pattern.test(
						typeof elem.className === "string" && elem.className ||
							typeof elem.getAttribute !== "undefined" &&
								elem.getAttribute( "class" ) ||
							""
					);
				} );
		},

		ATTR: function( name, operator, check ) {
			return function( elem ) {
				var result = find.attr( elem, name );

				if ( result == null ) {
					return operator === "!=";
				}
				if ( !operator ) {
					return true;
				}

				result += "";

				if ( operator === "=" ) {
					return result === check;
				}
				if ( operator === "!=" ) {
					return result !== check;
				}
				if ( operator === "^=" ) {
					return check && result.indexOf( check ) === 0;
				}
				if ( operator === "*=" ) {
					return check && result.indexOf( check ) > -1;
				}
				if ( operator === "$=" ) {
					return check && result.slice( -check.length ) === check;
				}
				if ( operator === "~=" ) {
					return ( " " + result.replace( rwhitespace, " " ) + " " )
						.indexOf( check ) > -1;
				}
				if ( operator === "|=" ) {
					return result === check || result.slice( 0, check.length + 1 ) === check + "-";
				}

				return false;
			};
		},

		CHILD: function( type, what, _argument, first, last ) {
			var simple = type.slice( 0, 3 ) !== "nth",
				forward = type.slice( -4 ) !== "last",
				ofType = what === "of-type";

			return first === 1 && last === 0 ?

				// Shortcut for :nth-*(n)
				function( elem ) {
					return !!elem.parentNode;
				} :

				function( elem, _context, xml ) {
					var cache, outerCache, node, nodeIndex, start,
						dir = simple !== forward ? "nextSibling" : "previousSibling",
						parent = elem.parentNode,
						name = ofType && elem.nodeName.toLowerCase(),
						useCache = !xml && !ofType,
						diff = false;

					if ( parent ) {

						// :(first|last|only)-(child|of-type)
						if ( simple ) {
							while ( dir ) {
								node = elem;
								while ( ( node = node[ dir ] ) ) {
									if ( ofType ?
										nodeName( node, name ) :
										node.nodeType === 1 ) {

										return false;
									}
								}

								// Reverse direction for :only-* (if we haven't yet done so)
								start = dir = type === "only" && !start && "nextSibling";
							}
							return true;
						}

						start = [ forward ? parent.firstChild : parent.lastChild ];

						// non-xml :nth-child(...) stores cache data on `parent`
						if ( forward && useCache ) {

							// Seek `elem` from a previously-cached index
							outerCache = parent[ expando ] || ( parent[ expando ] = {} );
							cache = outerCache[ type ] || [];
							nodeIndex = cache[ 0 ] === dirruns && cache[ 1 ];
							diff = nodeIndex && cache[ 2 ];
							node = nodeIndex && parent.childNodes[ nodeIndex ];

							while ( ( node = ++nodeIndex && node && node[ dir ] ||

								// Fallback to seeking `elem` from the start
								( diff = nodeIndex = 0 ) || start.pop() ) ) {

								// When found, cache indexes on `parent` and break
								if ( node.nodeType === 1 && ++diff && node === elem ) {
									outerCache[ type ] = [ dirruns, nodeIndex, diff ];
									break;
								}
							}

						} else {

							// Use previously-cached element index if available
							if ( useCache ) {
								outerCache = elem[ expando ] || ( elem[ expando ] = {} );
								cache = outerCache[ type ] || [];
								nodeIndex = cache[ 0 ] === dirruns && cache[ 1 ];
								diff = nodeIndex;
							}

							// xml :nth-child(...)
							// or :nth-last-child(...) or :nth(-last)?-of-type(...)
							if ( diff === false ) {

								// Use the same loop as above to seek `elem` from the start
								while ( ( node = ++nodeIndex && node && node[ dir ] ||
									( diff = nodeIndex = 0 ) || start.pop() ) ) {

									if ( ( ofType ?
										nodeName( node, name ) :
										node.nodeType === 1 ) &&
										++diff ) {

										// Cache the index of each encountered element
										if ( useCache ) {
											outerCache = node[ expando ] ||
												( node[ expando ] = {} );
											outerCache[ type ] = [ dirruns, diff ];
										}

										if ( node === elem ) {
											break;
										}
									}
								}
							}
						}

						// Incorporate the offset, then check against cycle size
						diff -= last;
						return diff === first || ( diff % first === 0 && diff / first >= 0 );
					}
				};
		},

		PSEUDO: function( pseudo, argument ) {

			// pseudo-class names are case-insensitive
			// https://www.w3.org/TR/selectors/#pseudo-classes
			// Prioritize by case sensitivity in case custom pseudos are added with uppercase letters
			// Remember that setFilters inherits from pseudos
			var args,
				fn = Expr.pseudos[ pseudo ] || Expr.setFilters[ pseudo.toLowerCase() ] ||
					find.error( "unsupported pseudo: " + pseudo );

			// The user may use createPseudo to indicate that
			// arguments are needed to create the filter function
			// just as jQuery does
			if ( fn[ expando ] ) {
				return fn( argument );
			}

			// But maintain support for old signatures
			if ( fn.length > 1 ) {
				args = [ pseudo, pseudo, "", argument ];
				return Expr.setFilters.hasOwnProperty( pseudo.toLowerCase() ) ?
					markFunction( function( seed, matches ) {
						var idx,
							matched = fn( seed, argument ),
							i = matched.length;
						while ( i-- ) {
							idx = indexOf.call( seed, matched[ i ] );
							seed[ idx ] = !( matches[ idx ] = matched[ i ] );
						}
					} ) :
					function( elem ) {
						return fn( elem, 0, args );
					};
			}

			return fn;
		}
	},

	pseudos: {

		// Potentially complex pseudos
		not: markFunction( function( selector ) {

			// Trim the selector passed to compile
			// to avoid treating leading and trailing
			// spaces as combinators
			var input = [],
				results = [],
				matcher = compile( selector.replace( rtrimCSS, "$1" ) );

			return matcher[ expando ] ?
				markFunction( function( seed, matches, _context, xml ) {
					var elem,
						unmatched = matcher( seed, null, xml, [] ),
						i = seed.length;

					// Match elements unmatched by `matcher`
					while ( i-- ) {
						if ( ( elem = unmatched[ i ] ) ) {
							seed[ i ] = !( matches[ i ] = elem );
						}
					}
				} ) :
				function( elem, _context, xml ) {
					input[ 0 ] = elem;
					matcher( input, null, xml, results );

					// Don't keep the element
					// (see https://github.com/jquery/sizzle/issues/299)
					input[ 0 ] = null;
					return !results.pop();
				};
		} ),

		has: markFunction( function( selector ) {
			return function( elem ) {
				return find( selector, elem ).length > 0;
			};
		} ),

		contains: markFunction( function( text ) {
			text = text.replace( runescape, funescape );
			return function( elem ) {
				return ( elem.textContent || jQuery.text( elem ) ).indexOf( text ) > -1;
			};
		} ),

		// "Whether an element is represented by a :lang() selector
		// is based solely on the element's language value
		// being equal to the identifier C,
		// or beginning with the identifier C immediately followed by "-".
		// The matching of C against the element's language value is performed case-insensitively.
		// The identifier C does not have to be a valid language name."
		// https://www.w3.org/TR/selectors/#lang-pseudo
		lang: markFunction( function( lang ) {

			// lang value must be a valid identifier
			if ( !ridentifier.test( lang || "" ) ) {
				find.error( "unsupported lang: " + lang );
			}
			lang = lang.replace( runescape, funescape ).toLowerCase();
			return function( elem ) {
				var elemLang;
				do {
					if ( ( elemLang = documentIsHTML ?
						elem.lang :
						elem.getAttribute( "xml:lang" ) || elem.getAttribute( "lang" ) ) ) {

						elemLang = elemLang.toLowerCase();
						return elemLang === lang || elemLang.indexOf( lang + "-" ) === 0;
					}
				} while ( ( elem = elem.parentNode ) && elem.nodeType === 1 );
				return false;
			};
		} ),

		// Miscellaneous
		target: function( elem ) {
			var hash = window.location && window.location.hash;
			return hash && hash.slice( 1 ) === elem.id;
		},

		root: function( elem ) {
			return elem === documentElement;
		},

		focus: function( elem ) {
			return elem === safeActiveElement() &&
				document.hasFocus() &&
				!!( elem.type || elem.href || ~elem.tabIndex );
		},

		// Boolean properties
		enabled: createDisabledPseudo( false ),
		disabled: createDisabledPseudo( true ),

		checked: function( elem ) {

			// In CSS3, :checked should return both checked and selected elements
			// https://www.w3.org/TR/2011/REC-css3-selectors-20110929/#checked
			return ( nodeName( elem, "input" ) && !!elem.checked ) ||
				( nodeName( elem, "option" ) && !!elem.selected );
		},

		selected: function( elem ) {

			// Support: IE <=11+
			// Accessing the selectedIndex property
			// forces the browser to treat the default option as
			// selected when in an optgroup.
			if ( elem.parentNode ) {
				// eslint-disable-next-line no-unused-expressions
				elem.parentNode.selectedIndex;
			}

			return elem.selected === true;
		},

		// Contents
		empty: function( elem ) {

			// https://www.w3.org/TR/selectors/#empty-pseudo
			// :empty is negated by element (1) or content nodes (text: 3; cdata: 4; entity ref: 5),
			//   but not by others (comment: 8; processing instruction: 7; etc.)
			// nodeType < 6 works because attributes (2) do not appear as children
			for ( elem = elem.firstChild; elem; elem = elem.nextSibling ) {
				if ( elem.nodeType < 6 ) {
					return false;
				}
			}
			return true;
		},

		parent: function( elem ) {
			return !Expr.pseudos.empty( elem );
		},

		// Element/input types
		header: function( elem ) {
			return rheader.test( elem.nodeName );
		},

		input: function( elem ) {
			return rinputs.test( elem.nodeName );
		},

		button: function( elem ) {
			return nodeName( elem, "input" ) && elem.type === "button" ||
				nodeName( elem, "button" );
		},

		text: function( elem ) {
			var attr;
			return nodeName( elem, "input" ) && elem.type === "text" &&

				// Support: IE <10 only
				// New HTML5 attribute values (e.g., "search") appear
				// with elem.type === "text"
				( ( attr = elem.getAttribute( "type" ) ) == null ||
					attr.toLowerCase() === "text" );
		},

		// Position-in-collection
		first: createPositionalPseudo( function() {
			return [ 0 ];
		} ),

		last: createPositionalPseudo( function( _matchIndexes, length ) {
			return [ length - 1 ];
		} ),

		eq: createPositionalPseudo( function( _matchIndexes, length, argument ) {
			return [ argument < 0 ? argument + length : argument ];
		} ),

		even: createPositionalPseudo( function( matchIndexes, length ) {
			var i = 0;
			for ( ; i < length; i += 2 ) {
				matchIndexes.push( i );
			}
			return matchIndexes;
		} ),

		odd: createPositionalPseudo( function( matchIndexes, length ) {
			var i = 1;
			for ( ; i < length; i += 2 ) {
				matchIndexes.push( i );
			}
			return matchIndexes;
		} ),

		lt: createPositionalPseudo( function( matchIndexes, length, argument ) {
			var i;

			if ( argument < 0 ) {
				i = argument + length;
			} else if ( argument > length ) {
				i = length;
			} else {
				i = argument;
			}

			for ( ; --i >= 0; ) {
				matchIndexes.push( i );
			}
			return matchIndexes;
		} ),

		gt: createPositionalPseudo( function( matchIndexes, length, argument ) {
			var i = argument < 0 ? argument + length : argument;
			for ( ; ++i < length; ) {
				matchIndexes.push( i );
			}
			return matchIndexes;
		} )
	}
};

Expr.pseudos.nth = Expr.pseudos.eq;

// Add button/input type pseudos
for ( i in { radio: true, checkbox: true, file: true, password: true, image: true } ) {
	Expr.pseudos[ i ] = createInputPseudo( i );
}
for ( i in { submit: true, reset: true } ) {
	Expr.pseudos[ i ] = createButtonPseudo( i );
}

// Easy API for creating new setFilters
function setFilters() {}
setFilters.prototype = Expr.filters = Expr.pseudos;
Expr.setFilters = new setFilters();

function tokenize( selector, parseOnly ) {
	var matched, match, tokens, type,
		soFar, groups, preFilters,
		cached = tokenCache[ selector + " " ];

	if ( cached ) {
		return parseOnly ? 0 : cached.slice( 0 );
	}

	soFar = selector;
	groups = [];
	preFilters = Expr.preFilter;

	while ( soFar ) {

		// Comma and first run
		if ( !matched || ( match = rcomma.exec( soFar ) ) ) {
			if ( match ) {

				// Don't consume trailing commas as valid
				soFar = soFar.slice( match[ 0 ].length ) || soFar;
			}
			groups.push( ( tokens = [] ) );
		}

		matched = false;

		// Combinators
		if ( ( match = rleadingCombinator.exec( soFar ) ) ) {
			matched = match.shift();
			tokens.push( {
				value: matched,

				// Cast descendant combinators to space
				type: match[ 0 ].replace( rtrimCSS, " " )
			} );
			soFar = soFar.slice( matched.length );
		}

		// Filters
		for ( type in Expr.filter ) {
			if ( ( match = matchExpr[ type ].exec( soFar ) ) && ( !preFilters[ type ] ||
				( match = preFilters[ type ]( match ) ) ) ) {
				matched = match.shift();
				tokens.push( {
					value: matched,
					type: type,
					matches: match
				} );
				soFar = soFar.slice( matched.length );
			}
		}

		if ( !matched ) {
			break;
		}
	}

	// Return the length of the invalid excess
	// if we're just parsing
	// Otherwise, throw an error or return tokens
	if ( parseOnly ) {
		return soFar.length;
	}

	return soFar ?
		find.error( selector ) :

		// Cache the tokens
		tokenCache( selector, groups ).slice( 0 );
}

function toSelector( tokens ) {
	var i = 0,
		len = tokens.length,
		selector = "";
	for ( ; i < len; i++ ) {
		selector += tokens[ i ].value;
	}
	return selector;
}

function addCombinator( matcher, combinator, base ) {
	var dir = combinator.dir,
		skip = combinator.next,
		key = skip || dir,
		checkNonElements = base && key === "parentNode",
		doneName = done++;

	return combinator.first ?

		// Check against closest ancestor/preceding element
		function( elem, context, xml ) {
			while ( ( elem = elem[ dir ] ) ) {
				if ( elem.nodeType === 1 || checkNonElements ) {
					return matcher( elem, context, xml );
				}
			}
			return false;
		} :

		// Check against all ancestor/preceding elements
		function( elem, context, xml ) {
			var oldCache, outerCache,
				newCache = [ dirruns, doneName ];

			// We can't set arbitrary data on XML nodes, so they don't benefit from combinator caching
			if ( xml ) {
				while ( ( elem = elem[ dir ] ) ) {
					if ( elem.nodeType === 1 || checkNonElements ) {
						if ( matcher( elem, context, xml ) ) {
							return true;
						}
					}
				}
			} else {
				while ( ( elem = elem[ dir ] ) ) {
					if ( elem.nodeType === 1 || checkNonElements ) {
						outerCache = elem[ expando ] || ( elem[ expando ] = {} );

						if ( skip && nodeName( elem, skip ) ) {
							elem = elem[ dir ] || elem;
						} else if ( ( oldCache = outerCache[ key ] ) &&
							oldCache[ 0 ] === dirruns && oldCache[ 1 ] === doneName ) {

							// Assign to newCache so results back-propagate to previous elements
							return ( newCache[ 2 ] = oldCache[ 2 ] );
						} else {

							// Reuse newcache so results back-propagate to previous elements
							outerCache[ key ] = newCache;

							// A match means we're done; a fail means we have to keep checking
							if ( ( newCache[ 2 ] = matcher( elem, context, xml ) ) ) {
								return true;
							}
						}
					}
				}
			}
			return false;
		};
}

function elementMatcher( matchers ) {
	return matchers.length > 1 ?
		function( elem, context, xml ) {
			var i = matchers.length;
			while ( i-- ) {
				if ( !matchers[ i ]( elem, context, xml ) ) {
					return false;
				}
			}
			return true;
		} :
		matchers[ 0 ];
}

function multipleContexts( selector, contexts, results ) {
	var i = 0,
		len = contexts.length;
	for ( ; i < len; i++ ) {
		find( selector, contexts[ i ], results );
	}
	return results;
}

function condense( unmatched, map, filter, context, xml ) {
	var elem,
		newUnmatched = [],
		i = 0,
		len = unmatched.length,
		mapped = map != null;

	for ( ; i < len; i++ ) {
		if ( ( elem = unmatched[ i ] ) ) {
			if ( !filter || filter( elem, context, xml ) ) {
				newUnmatched.push( elem );
				if ( mapped ) {
					map.push( i );
				}
			}
		}
	}

	return newUnmatched;
}

function setMatcher( preFilter, selector, matcher, postFilter, postFinder, postSelector ) {
	if ( postFilter && !postFilter[ expando ] ) {
		postFilter = setMatcher( postFilter );
	}
	if ( postFinder && !postFinder[ expando ] ) {
		postFinder = setMatcher( postFinder, postSelector );
	}
	return markFunction( function( seed, results, context, xml ) {
		var temp, i, elem, matcherOut,
			preMap = [],
			postMap = [],
			preexisting = results.length,

			// Get initial elements from seed or context
			elems = seed ||
				multipleContexts( selector || "*",
					context.nodeType ? [ context ] : context, [] ),

			// Prefilter to get matcher input, preserving a map for seed-results synchronization
			matcherIn = preFilter && ( seed || !selector ) ?
				condense( elems, preMap, preFilter, context, xml ) :
				elems;

		if ( matcher ) {

			// If we have a postFinder, or filtered seed, or non-seed postFilter
			// or preexisting results,
			matcherOut = postFinder || ( seed ? preFilter : preexisting || postFilter ) ?

				// ...intermediate processing is necessary
				[] :

				// ...otherwise use results directly
				results;

			// Find primary matches
			matcher( matcherIn, matcherOut, context, xml );
		} else {
			matcherOut = matcherIn;
		}

		// Apply postFilter
		if ( postFilter ) {
			temp = condense( matcherOut, postMap );
			postFilter( temp, [], context, xml );

			// Un-match failing elements by moving them back to matcherIn
			i = temp.length;
			while ( i-- ) {
				if ( ( elem = temp[ i ] ) ) {
					matcherOut[ postMap[ i ] ] = !( matcherIn[ postMap[ i ] ] = elem );
				}
			}
		}

		if ( seed ) {
			if ( postFinder || preFilter ) {
				if ( postFinder ) {

					// Get the final matcherOut by condensing this intermediate into postFinder contexts
					temp = [];
					i = matcherOut.length;
					while ( i-- ) {
						if ( ( elem = matcherOut[ i ] ) ) {

							// Restore matcherIn since elem is not yet a final match
							temp.push( ( matcherIn[ i ] = elem ) );
						}
					}
					postFinder( null, ( matcherOut = [] ), temp, xml );
				}

				// Move matched elements from seed to results to keep them synchronized
				i = matcherOut.length;
				while ( i-- ) {
					if ( ( elem = matcherOut[ i ] ) &&
						( temp = postFinder ? indexOf.call( seed, elem ) : preMap[ i ] ) > -1 ) {

						seed[ temp ] = !( results[ temp ] = elem );
					}
				}
			}

		// Add elements to results, through postFinder if defined
		} else {
			matcherOut = condense(
				matcherOut === results ?
					matcherOut.splice( preexisting, matcherOut.length ) :
					matcherOut
			);
			if ( postFinder ) {
				postFinder( null, results, matcherOut, xml );
			} else {
				push.apply( results, matcherOut );
			}
		}
	} );
}

function matcherFromTokens( tokens ) {
	var checkContext, matcher, j,
		len = tokens.length,
		leadingRelative = Expr.relative[ tokens[ 0 ].type ],
		implicitRelative = leadingRelative || Expr.relative[ " " ],
		i = leadingRelative ? 1 : 0,

		// The foundational matcher ensures that elements are reachable from top-level context(s)
		matchContext = addCombinator( function( elem ) {
			return elem === checkContext;
		}, implicitRelative, true ),
		matchAnyContext = addCombinator( function( elem ) {
			return indexOf.call( checkContext, elem ) > -1;
		}, implicitRelative, true ),
		matchers = [ function( elem, context, xml ) {

			// Support: IE 11+, Edge 17 - 18+
			// IE/Edge sometimes throw a "Permission denied" error when strict-comparing
			// two documents; shallow comparisons work.
			// eslint-disable-next-line eqeqeq
			var ret = ( !leadingRelative && ( xml || context != outermostContext ) ) || (
				( checkContext = context ).nodeType ?
					matchContext( elem, context, xml ) :
					matchAnyContext( elem, context, xml ) );

			// Avoid hanging onto element
			// (see https://github.com/jquery/sizzle/issues/299)
			checkContext = null;
			return ret;
		} ];

	for ( ; i < len; i++ ) {
		if ( ( matcher = Expr.relative[ tokens[ i ].type ] ) ) {
			matchers = [ addCombinator( elementMatcher( matchers ), matcher ) ];
		} else {
			matcher = Expr.filter[ tokens[ i ].type ].apply( null, tokens[ i ].matches );

			// Return special upon seeing a positional matcher
			if ( matcher[ expando ] ) {

				// Find the next relative operator (if any) for proper handling
				j = ++i;
				for ( ; j < len; j++ ) {
					if ( Expr.relative[ tokens[ j ].type ] ) {
						break;
					}
				}
				return setMatcher(
					i > 1 && elementMatcher( matchers ),
					i > 1 && toSelector(

						// If the preceding token was a descendant combinator, insert an implicit any-element `*`
						tokens.slice( 0, i - 1 )
							.concat( { value: tokens[ i - 2 ].type === " " ? "*" : "" } )
					).replace( rtrimCSS, "$1" ),
					matcher,
					i < j && matcherFromTokens( tokens.slice( i, j ) ),
					j < len && matcherFromTokens( ( tokens = tokens.slice( j ) ) ),
					j < len && toSelector( tokens )
				);
			}
			matchers.push( matcher );
		}
	}

	return elementMatcher( matchers );
}

function matcherFromGroupMatchers( elementMatchers, setMatchers ) {
	var bySet = setMatchers.length > 0,
		byElement = elementMatchers.length > 0,
		superMatcher = function( seed, context, xml, results, outermost ) {
			var elem, j, matcher,
				matchedCount = 0,
				i = "0",
				unmatched = seed && [],
				setMatched = [],
				contextBackup = outermostContext,

				// We must always have either seed elements or outermost context
				elems = seed || byElement && Expr.find.TAG( "*", outermost ),

				// Use integer dirruns iff this is the outermost matcher
				dirrunsUnique = ( dirruns += contextBackup == null ? 1 : Math.random() || 0.1 ),
				len = elems.length;

			if ( outermost ) {

				// Support: IE 11+, Edge 17 - 18+
				// IE/Edge sometimes throw a "Permission denied" error when strict-comparing
				// two documents; shallow comparisons work.
				// eslint-disable-next-line eqeqeq
				outermostContext = context == document || context || outermost;
			}

			// Add elements passing elementMatchers directly to results
			// Support: iOS <=7 - 9 only
			// Tolerate NodeList properties (IE: "length"; Safari: <number>) matching
			// elements by id. (see trac-14142)
			for ( ; i !== len && ( elem = elems[ i ] ) != null; i++ ) {
				if ( byElement && elem ) {
					j = 0;

					// Support: IE 11+, Edge 17 - 18+
					// IE/Edge sometimes throw a "Permission denied" error when strict-comparing
					// two documents; shallow comparisons work.
					// eslint-disable-next-line eqeqeq
					if ( !context && elem.ownerDocument != document ) {
						setDocument( elem );
						xml = !documentIsHTML;
					}
					while ( ( matcher = elementMatchers[ j++ ] ) ) {
						if ( matcher( elem, context || document, xml ) ) {
							push.call( results, elem );
							break;
						}
					}
					if ( outermost ) {
						dirruns = dirrunsUnique;
					}
				}

				// Track unmatched elements for set filters
				if ( bySet ) {

					// They will have gone through all possible matchers
					if ( ( elem = !matcher && elem ) ) {
						matchedCount--;
					}

					// Lengthen the array for every element, matched or not
					if ( seed ) {
						unmatched.push( elem );
					}
				}
			}

			// `i` is now the count of elements visited above, and adding it to `matchedCount`
			// makes the latter nonnegative.
			matchedCount += i;

			// Apply set filters to unmatched elements
			// NOTE: This can be skipped if there are no unmatched elements (i.e., `matchedCount`
			// equals `i`), unless we didn't visit _any_ elements in the above loop because we have
			// no element matchers and no seed.
			// Incrementing an initially-string "0" `i` allows `i` to remain a string only in that
			// case, which will result in a "00" `matchedCount` that differs from `i` but is also
			// numerically zero.
			if ( bySet && i !== matchedCount ) {
				j = 0;
				while ( ( matcher = setMatchers[ j++ ] ) ) {
					matcher( unmatched, setMatched, context, xml );
				}

				if ( seed ) {

					// Reintegrate element matches to eliminate the need for sorting
					if ( matchedCount > 0 ) {
						while ( i-- ) {
							if ( !( unmatched[ i ] || setMatched[ i ] ) ) {
								setMatched[ i ] = pop.call( results );
							}
						}
					}

					// Discard index placeholder values to get only actual matches
					setMatched = condense( setMatched );
				}

				// Add matches to results
				push.apply( results, setMatched );

				// Seedless set matches succeeding multiple successful matchers stipulate sorting
				if ( outermost && !seed && setMatched.length > 0 &&
					( matchedCount + setMatchers.length ) > 1 ) {

					jQuery.uniqueSort( results );
				}
			}

			// Override manipulation of globals by nested matchers
			if ( outermost ) {
				dirruns = dirrunsUnique;
				outermostContext = contextBackup;
			}

			return unmatched;
		};

	return bySet ?
		markFunction( superMatcher ) :
		superMatcher;
}

function compile( selector, match /* Internal Use Only */ ) {
	var i,
		setMatchers = [],
		elementMatchers = [],
		cached = compilerCache[ selector + " " ];

	if ( !cached ) {

		// Generate a function of recursive functions that can be used to check each element
		if ( !match ) {
			match = tokenize( selector );
		}
		i = match.length;
		while ( i-- ) {
			cached = matcherFromTokens( match[ i ] );
			if ( cached[ expando ] ) {
				setMatchers.push( cached );
			} else {
				elementMatchers.push( cached );
			}
		}

		// Cache the compiled function
		cached = compilerCache( selector,
			matcherFromGroupMatchers( elementMatchers, setMatchers ) );

		// Save selector and tokenization
		cached.selector = selector;
	}
	return cached;
}

/**
 * A low-level selection function that works with jQuery's compiled
 *  selector functions
 * @param {String|Function} selector A selector or a pre-compiled
 *  selector function built with jQuery selector compile
 * @param {Element} context
 * @param {Array} [results]
 * @param {Array} [seed] A set of elements to match against
 */
function select( selector, context, results, seed ) {
	var i, tokens, token, type, find,
		compiled = typeof selector === "function" && selector,
		match = !seed && tokenize( ( selector = compiled.selector || selector ) );

	results = results || [];

	// Try to minimize operations if there is only one selector in the list and no seed
	// (the latter of which guarantees us context)
	if ( match.length === 1 ) {

		// Reduce context if the leading compound selector is an ID
		tokens = match[ 0 ] = match[ 0 ].slice( 0 );
		if ( tokens.length > 2 && ( token = tokens[ 0 ] ).type === "ID" &&
				context.nodeType === 9 && documentIsHTML && Expr.relative[ tokens[ 1 ].type ] ) {

			context = ( Expr.find.ID(
				token.matches[ 0 ].replace( runescape, funescape ),
				context
			) || [] )[ 0 ];
			if ( !context ) {
				return results;

			// Precompiled matchers will still verify ancestry, so step up a level
			} else if ( compiled ) {
				context = context.parentNode;
			}

			selector = selector.slice( tokens.shift().value.length );
		}

		// Fetch a seed set for right-to-left matching
		i = matchExpr.needsContext.test( selector ) ? 0 : tokens.length;
		while ( i-- ) {
			token = tokens[ i ];

			// Abort if we hit a combinator
			if ( Expr.relative[ ( type = token.type ) ] ) {
				break;
			}
			if ( ( find = Expr.find[ type ] ) ) {

				// Search, expanding context for leading sibling combinators
				if ( ( seed = find(
					token.matches[ 0 ].replace( runescape, funescape ),
					rsibling.test( tokens[ 0 ].type ) &&
						testContext( context.parentNode ) || context
				) ) ) {

					// If seed is empty or no tokens remain, we can return early
					tokens.splice( i, 1 );
					selector = seed.length && toSelector( tokens );
					if ( !selector ) {
						push.apply( results, seed );
						return results;
					}

					break;
				}
			}
		}
	}

	// Compile and execute a filtering function if one is not provided
	// Provide `match` to avoid retokenization if we modified the selector above
	( compiled || compile( selector, match ) )(
		seed,
		context,
		!documentIsHTML,
		results,
		!context || rsibling.test( selector ) && testContext( context.parentNode ) || context
	);
	return results;
}

// One-time assignments

// Support: Android <=4.0 - 4.1+
// Sort stability
support.sortStable = expando.split( "" ).sort( sortOrder ).join( "" ) === expando;

// Initialize against the default document
setDocument();

// Support: Android <=4.0 - 4.1+
// Detached nodes confoundingly follow *each other*
support.sortDetached = assert( function( el ) {

	// Should return 1, but returns 4 (following)
	return el.compareDocumentPosition( document.createElement( "fieldset" ) ) & 1;
} );

jQuery.find = find;

// Deprecated
jQuery.expr[ ":" ] = jQuery.expr.pseudos;
jQuery.unique = jQuery.uniqueSort;

// These have always been private, but they used to be documented as part of
// Sizzle so let's maintain them for now for backwards compatibility purposes.
find.compile = compile;
find.select = select;
find.setDocument = setDocument;
find.tokenize = tokenize;

find.escape = jQuery.escapeSelector;
find.getText = jQuery.text;
find.isXML = jQuery.isXMLDoc;
find.selectors = jQuery.expr;
find.support = jQuery.support;
find.uniqueSort = jQuery.uniqueSort;

	/* eslint-enable */

} )();


var dir = function( elem, dir, until ) {
	var matched = [],
		truncate = until !== undefined;

	while ( ( elem = elem[ dir ] ) && elem.nodeType !== 9 ) {
		if ( elem.nodeType === 1 ) {
			if ( truncate && jQuery( elem ).is( until ) ) {
				break;
			}
			matched.push( elem );
		}
	}
	return matched;
};


var siblings = function( n, elem ) {
	var matched = [];

	for ( ; n; n = n.nextSibling ) {
		if ( n.nodeType === 1 && n !== elem ) {
			matched.push( n );
		}
	}

	return matched;
};


var rneedsContext = jQuery.expr.match.needsContext;

var rsingleTag = ( /^<([a-z][^\/\0>:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i );



// Implement the identical functionality for filter and not
function winnow( elements, qualifier, not ) {
	if ( isFunction( qualifier ) ) {
		return jQuery.grep( elements, function( elem, i ) {
			return !!qualifier.call( elem, i, elem ) !== not;
		} );
	}

	// Single element
	if ( qualifier.nodeType ) {
		return jQuery.grep( elements, function( elem ) {
			return ( elem === qualifier ) !== not;
		} );
	}

	// Arraylike of elements (jQuery, arguments, Array)
	if ( typeof qualifier !== "string" ) {
		return jQuery.grep( elements, function( elem ) {
			return ( indexOf.call( qualifier, elem ) > -1 ) !== not;
		} );
	}

	// Filtered directly for both simple and complex selectors
	return jQuery.filter( qualifier, elements, not );
}

jQuery.filter = function( expr, elems, not ) {
	var elem = elems[ 0 ];

	if ( not ) {
		expr = ":not(" + expr + ")";
	}

	if ( elems.length === 1 && elem.nodeType === 1 ) {
		return jQuery.find.matchesSelector( elem, expr ) ? [ elem ] : [];
	}

	return jQuery.find.matches( expr, jQuery.grep( elems, function( elem ) {
		return elem.nodeType === 1;
	} ) );
};

jQuery.fn.extend( {
	find: function( selector ) {
		var i, ret,
			len = this.length,
			self = this;

		if ( typeof selector !== "string" ) {
			return this.pushStack( jQuery( selector ).filter( function() {
				for ( i = 0; i < len; i++ ) {
					if ( jQuery.contains( self[ i ], this ) ) {
						return true;
					}
				}
			} ) );
		}

		ret = this.pushStack( [] );

		for ( i = 0; i < len; i++ ) {
			jQuery.find( selector, self[ i ], ret );
		}

		return len > 1 ? jQuery.uniqueSort( ret ) : ret;
	},
	filter: function( selector ) {
		return this.pushStack( winnow( this, selector || [], false ) );
	},
	not: function( selector ) {
		return this.pushStack( winnow( this, selector || [], true ) );
	},
	is: function( selector ) {
		return !!winnow(
			this,

			// If this is a positional/relative selector, check membership in the returned set
			// so $("p:first").is("p:last") won't return true for a doc with two "p".
			typeof selector === "string" && rneedsContext.test( selector ) ?
				jQuery( selector ) :
				selector || [],
			false
		).length;
	}
} );


// Initialize a jQuery object


// A central reference to the root jQuery(document)
var rootjQuery,

	// A simple way to check for HTML strings
	// Prioritize #id over <tag> to avoid XSS via location.hash (trac-9521)
	// Strict HTML recognition (trac-11290: must start with <)
	// Shortcut simple #id case for speed
	rquickExpr = /^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]+))$/,

	init = jQuery.fn.init = function( selector, context, root ) {
		var match, elem;

		// HANDLE: $(""), $(null), $(undefined), $(false)
		if ( !selector ) {
			return this;
		}

		// Method init() accepts an alternate rootjQuery
		// so migrate can support jQuery.sub (gh-2101)
		root = root || rootjQuery;

		// Handle HTML strings
		if ( typeof selector === "string" ) {
			if ( selector[ 0 ] === "<" &&
				selector[ selector.length - 1 ] === ">" &&
				selector.length >= 3 ) {

				// Assume that strings that start and end with <> are HTML and skip the regex check
				match = [ null, selector, null ];

			} else {
				match = rquickExpr.exec( selector );
			}

			// Match html or make sure no context is specified for #id
			if ( match && ( match[ 1 ] || !context ) ) {

				// HANDLE: $(html) -> $(array)
				if ( match[ 1 ] ) {
					context = context instanceof jQuery ? context[ 0 ] : context;

					// Option to run scripts is true for back-compat
					// Intentionally let the error be thrown if parseHTML is not present
					jQuery.merge( this, jQuery.parseHTML(
						match[ 1 ],
						context && context.nodeType ? context.ownerDocument || context : document,
						true
					) );

					// HANDLE: $(html, props)
					if ( rsingleTag.test( match[ 1 ] ) && jQuery.isPlainObject( context ) ) {
						for ( match in context ) {

							// Properties of context are called as methods if possible
							if ( isFunction( this[ match ] ) ) {
								this[ match ]( context[ match ] );

							// ...and otherwise set as attributes
							} else {
								this.attr( match, context[ match ] );
							}
						}
					}

					return this;

				// HANDLE: $(#id)
				} else {
					elem = document.getElementById( match[ 2 ] );

					if ( elem ) {

						// Inject the element directly into the jQuery object
						this[ 0 ] = elem;
						this.length = 1;
					}
					return this;
				}

			// HANDLE: $(expr, $(...))
			} else if ( !context || context.jquery ) {
				return ( context || root ).find( selector );

			// HANDLE: $(expr, context)
			// (which is just equivalent to: $(context).find(expr)
			} else {
				return this.constructor( context ).find( selector );
			}

		// HANDLE: $(DOMElement)
		} else if ( selector.nodeType ) {
			this[ 0 ] = selector;
			this.length = 1;
			return this;

		// HANDLE: $(function)
		// Shortcut for document ready
		} else if ( isFunction( selector ) ) {
			return root.ready !== undefined ?
				root.ready( selector ) :

				// Execute immediately if ready is not present
				selector( jQuery );
		}

		return jQuery.makeArray( selector, this );
	};

// Give the init function the jQuery prototype for later instantiation
init.prototype = jQuery.fn;

// Initialize central reference
rootjQuery = jQuery( document );


var rparentsprev = /^(?:parents|prev(?:Until|All))/,

	// Methods guaranteed to produce a unique set when starting from a unique set
	guaranteedUnique = {
		children: true,
		contents: true,
		next: true,
		prev: true
	};

jQuery.fn.extend( {
	has: function( target ) {
		var targets = jQuery( target, this ),
			l = targets.length;

		return this.filter( function() {
			var i = 0;
			for ( ; i < l; i++ ) {
				if ( jQuery.contains( this, targets[ i ] ) ) {
					return true;
				}
			}
		} );
	},

	closest: function( selectors, context ) {
		var cur,
			i = 0,
			l = this.length,
			matched = [],
			targets = typeof selectors !== "string" && jQuery( selectors );

		// Positional selectors never match, since there's no _selection_ context
		if ( !rneedsContext.test( selectors ) ) {
			for ( ; i < l; i++ ) {
				for ( cur = this[ i ]; cur && cur !== context; cur = cur.parentNode ) {

					// Always skip document fragments
					if ( cur.nodeType < 11 && ( targets ?
						targets.index( cur ) > -1 :

						// Don't pass non-elements to jQuery#find
						cur.nodeType === 1 &&
							jQuery.find.matchesSelector( cur, selectors ) ) ) {

						matched.push( cur );
						break;
					}
				}
			}
		}

		return this.pushStack( matched.length > 1 ? jQuery.uniqueSort( matched ) : matched );
	},

	// Determine the position of an element within the set
	index: function( elem ) {

		// No argument, return index in parent
		if ( !elem ) {
			return ( this[ 0 ] && this[ 0 ].parentNode ) ? this.first().prevAll().length : -1;
		}

		// Index in selector
		if ( typeof elem === "string" ) {
			return indexOf.call( jQuery( elem ), this[ 0 ] );
		}

		// Locate the position of the desired element
		return indexOf.call( this,

			// If it receives a jQuery object, the first element is used
			elem.jquery ? elem[ 0 ] : elem
		);
	},

	add: function( selector, context ) {
		return this.pushStack(
			jQuery.uniqueSort(
				jQuery.merge( this.get(), jQuery( selector, context ) )
			)
		);
	},

	addBack: function( selector ) {
		return this.add( selector == null ?
			this.prevObject : this.prevObject.filter( selector )
		);
	}
} );

function sibling( cur, dir ) {
	while ( ( cur = cur[ dir ] ) && cur.nodeType !== 1 ) {}
	return cur;
}

jQuery.each( {
	parent: function( elem ) {
		var parent = elem.parentNode;
		return parent && parent.nodeType !== 11 ? parent : null;
	},
	parents: function( elem ) {
		return dir( elem, "parentNode" );
	},
	parentsUntil: function( elem, _i, until ) {
		return dir( elem, "parentNode", until );
	},
	next: function( elem ) {
		return sibling( elem, "nextSibling" );
	},
	prev: function( elem ) {
		return sibling( elem, "previousSibling" );
	},
	nextAll: function( elem ) {
		return dir( elem, "nextSibling" );
	},
	prevAll: function( elem ) {
		return dir( elem, "previousSibling" );
	},
	nextUntil: function( elem, _i, until ) {
		return dir( elem, "nextSibling", until );
	},
	prevUntil: function( elem, _i, until ) {
		return dir( elem, "previousSibling", until );
	},
	siblings: function( elem ) {
		return siblings( ( elem.parentNode || {} ).firstChild, elem );
	},
	children: function( elem ) {
		return siblings( elem.firstChild );
	},
	contents: function( elem ) {
		if ( elem.contentDocument != null &&

			// Support: IE 11+
			// <object> elements with no `data` attribute has an object
			// `contentDocument` with a `null` prototype.
			getProto( elem.contentDocument ) ) {

			return elem.contentDocument;
		}

		// Support: IE 9 - 11 only, iOS 7 only, Android Browser <=4.3 only
		// Treat the template element as a regular one in browsers that
		// don't support it.
		if ( nodeName( elem, "template" ) ) {
			elem = elem.content || elem;
		}

		return jQuery.merge( [], elem.childNodes );
	}
}, function( name, fn ) {
	jQuery.fn[ name ] = function( until, selector ) {
		var matched = jQuery.map( this, fn, until );

		if ( name.slice( -5 ) !== "Until" ) {
			selector = until;
		}

		if ( selector && typeof selector === "string" ) {
			matched = jQuery.filter( selector, matched );
		}

		if ( this.length > 1 ) {

			// Remove duplicates
			if ( !guaranteedUnique[ name ] ) {
				jQuery.uniqueSort( matched );
			}

			// Reverse order for parents* and prev-derivatives
			if ( rparentsprev.test( name ) ) {
				matched.reverse();
			}
		}

		return this.pushStack( matched );
	};
} );
var rnothtmlwhite = ( /[^\x20\t\r\n\f]+/g );



// Convert String-formatted options into Object-formatted ones
function createOptions( options ) {
	var object = {};
	jQuery.each( options.match( rnothtmlwhite ) || [], function( _, flag ) {
		object[ flag ] = true;
	} );
	return object;
}

/*
 * Create a callback list using the following parameters:
 *
 *	options: an optional list of space-separated options that will change how
 *			the callback list behaves or a more traditional option object
 *
 * By default a callback list will act like an event callback list and can be
 * "fired" multiple times.
 *
 * Possible options:
 *
 *	once:			will ensure the callback list can only be fired once (like a Deferred)
 *
 *	memory:			will keep track of previous values and will call any callback added
 *					after the list has been fired right away with the latest "memorized"
 *					values (like a Deferred)
 *
 *	unique:			will ensure a callback can only be added once (no duplicate in the list)
 *
 *	stopOnFalse:	interrupt callings when a callback returns false
 *
 */
jQuery.Callbacks = function( options ) {

	// Convert options from String-formatted to Object-formatted if needed
	// (we check in cache first)
	options = typeof options === "string" ?
		createOptions( options ) :
		jQuery.extend( {}, options );

	var // Flag to know if list is currently firing
		firing,

		// Last fire value for non-forgettable lists
		memory,

		// Flag to know if list was already fired
		fired,

		// Flag to prevent firing
		locked,

		// Actual callback list
		list = [],

		// Queue of execution data for repeatable lists
		queue = [],

		// Index of currently firing callback (modified by add/remove as needed)
		firingIndex = -1,

		// Fire callbacks
		fire = function() {

			// Enforce single-firing
			locked = locked || options.once;

			// Execute callbacks for all pending executions,
			// respecting firingIndex overrides and runtime changes
			fired = firing = true;
			for ( ; queue.length; firingIndex = -1 ) {
				memory = queue.shift();
				while ( ++firingIndex < list.length ) {

					// Run callback and check for early termination
					if ( list[ firingIndex ].apply( memory[ 0 ], memory[ 1 ] ) === false &&
						options.stopOnFalse ) {

						// Jump to end and forget the data so .add doesn't re-fire
						firingIndex = list.length;
						memory = false;
					}
				}
			}

			// Forget the data if we're done with it
			if ( !options.memory ) {
				memory = false;
			}

			firing = false;

			// Clean up if we're done firing for good
			if ( locked ) {

				// Keep an empty list if we have data for future add calls
				if ( memory ) {
					list = [];

				// Otherwise, this object is spent
				} else {
					list = "";
				}
			}
		},

		// Actual Callbacks object
		self = {

			// Add a callback or a collection of callbacks to the list
			add: function() {
				if ( list ) {

					// If we have memory from a past run, we should fire after adding
					if ( memory && !firing ) {
						firingIndex = list.length - 1;
						queue.push( memory );
					}

					( function add( args ) {
						jQuery.each( args, function( _, arg ) {
							if ( isFunction( arg ) ) {
								if ( !options.unique || !self.has( arg ) ) {
									list.push( arg );
								}
							} else if ( arg && arg.length && toType( arg ) !== "string" ) {

								// Inspect recursively
								add( arg );
							}
						} );
					} )( arguments );

					if ( memory && !firing ) {
						fire();
					}
				}
				return this;
			},

			// Remove a callback from the list
			remove: function() {
				jQuery.each( arguments, function( _, arg ) {
					var index;
					while ( ( index = jQuery.inArray( arg, list, index ) ) > -1 ) {
						list.splice( index, 1 );

						// Handle firing indexes
						if ( index <= firingIndex ) {
							firingIndex--;
						}
					}
				} );
				return this;
			},

			// Check if a given callback is in the list.
			// If no argument is given, return whether or not list has callbacks attached.
			has: function( fn ) {
				return fn ?
					jQuery.inArray( fn, list ) > -1 :
					list.length > 0;
			},

			// Remove all callbacks from the list
			empty: function() {
				if ( list ) {
					list = [];
				}
				return this;
			},

			// Disable .fire and .add
			// Abort any current/pending executions
			// Clear all callbacks and values
			disable: function() {
				locked = queue = [];
				list = memory = "";
				return this;
			},
			disabled: function() {
				return !list;
			},

			// Disable .fire
			// Also disable .add unless we have memory (since it would have no effect)
			// Abort any pending executions
			lock: function() {
				locked = queue = [];
				if ( !memory && !firing ) {
					list = memory = "";
				}
				return this;
			},
			locked: function() {
				return !!locked;
			},

			// Call all callbacks with the given context and arguments
			fireWith: function( context, args ) {
				if ( !locked ) {
					args = args || [];
					args = [ context, args.slice ? args.slice() : args ];
					queue.push( args );
					if ( !firing ) {
						fire();
					}
				}
				return this;
			},

			// Call all the callbacks with the given arguments
			fire: function() {
				self.fireWith( this, arguments );
				return this;
			},

			// To know if the callbacks have already been called at least once
			fired: function() {
				return !!fired;
			}
		};

	return self;
};


function Identity( v ) {
	return v;
}
function Thrower( ex ) {
	throw ex;
}

function adoptValue( value, resolve, reject, noValue ) {
	var method;

	try {

		// Check for promise aspect first to privilege synchronous behavior
		if ( value && isFunction( ( method = value.promise ) ) ) {
			method.call( value ).done( resolve ).fail( reject );

		// Other thenables
		} else if ( value && isFunction( ( method = value.then ) ) ) {
			method.call( value, resolve, reject );

		// Other non-thenables
		} else {

			// Control `resolve` arguments by letting Array#slice cast boolean `noValue` to integer:
			// * false: [ value ].slice( 0 ) => resolve( value )
			// * true: [ value ].slice( 1 ) => resolve()
			resolve.apply( undefined, [ value ].slice( noValue ) );
		}

	// For Promises/A+, convert exceptions into rejections
	// Since jQuery.when doesn't unwrap thenables, we can skip the extra checks appearing in
	// Deferred#then to conditionally suppress rejection.
	} catch ( value ) {

		// Support: Android 4.0 only
		// Strict mode functions invoked without .call/.apply get global-object context
		reject.apply( undefined, [ value ] );
	}
}

jQuery.extend( {

	Deferred: function( func ) {
		var tuples = [

				// action, add listener, callbacks,
				// ... .then handlers, argument index, [final state]
				[ "notify", "progress", jQuery.Callbacks( "memory" ),
					jQuery.Callbacks( "memory" ), 2 ],
				[ "resolve", "done", jQuery.Callbacks( "once memory" ),
					jQuery.Callbacks( "once memory" ), 0, "resolved" ],
				[ "reject", "fail", jQuery.Callbacks( "once memory" ),
					jQuery.Callbacks( "once memory" ), 1, "rejected" ]
			],
			state = "pending",
			promise = {
				state: function() {
					return state;
				},
				always: function() {
					deferred.done( arguments ).fail( arguments );
					return this;
				},
				"catch": function( fn ) {
					return promise.then( null, fn );
				},

				// Keep pipe for back-compat
				pipe: function( /* fnDone, fnFail, fnProgress */ ) {
					var fns = arguments;

					return jQuery.Deferred( function( newDefer ) {
						jQuery.each( tuples, function( _i, tuple ) {

							// Map tuples (progress, done, fail) to arguments (done, fail, progress)
							var fn = isFunction( fns[ tuple[ 4 ] ] ) && fns[ tuple[ 4 ] ];

							// deferred.progress(function() { bind to newDefer or newDefer.notify })
							// deferred.done(function() { bind to newDefer or newDefer.resolve })
							// deferred.fail(function() { bind to newDefer or newDefer.reject })
							deferred[ tuple[ 1 ] ]( function() {
								var returned = fn && fn.apply( this, arguments );
								if ( returned && isFunction( returned.promise ) ) {
									returned.promise()
										.progress( newDefer.notify )
										.done( newDefer.resolve )
										.fail( newDefer.reject );
								} else {
									newDefer[ tuple[ 0 ] + "With" ](
										this,
										fn ? [ returned ] : arguments
									);
								}
							} );
						} );
						fns = null;
					} ).promise();
				},
				then: function( onFulfilled, onRejected, onProgress ) {
					var maxDepth = 0;
					function resolve( depth, deferred, handler, special ) {
						return function() {
							var that = this,
								args = arguments,
								mightThrow = function() {
									var returned, then;

									// Support: Promises/A+ section 2.3.3.3.3
									// https://promisesaplus.com/#point-59
									// Ignore double-resolution attempts
									if ( depth < maxDepth ) {
										return;
									}

									returned = handler.apply( that, args );

									// Support: Promises/A+ section 2.3.1
									// https://promisesaplus.com/#point-48
									if ( returned === deferred.promise() ) {
										throw new TypeError( "Thenable self-resolution" );
									}

									// Support: Promises/A+ sections 2.3.3.1, 3.5
									// https://promisesaplus.com/#point-54
									// https://promisesaplus.com/#point-75
									// Retrieve `then` only once
									then = returned &&

										// Support: Promises/A+ section 2.3.4
										// https://promisesaplus.com/#point-64
										// Only check objects and functions for thenability
										( typeof returned === "object" ||
											typeof returned === "function" ) &&
										returned.then;

									// Handle a returned thenable
									if ( isFunction( then ) ) {

										// Special processors (notify) just wait for resolution
										if ( special ) {
											then.call(
												returned,
												resolve( maxDepth, deferred, Identity, special ),
												resolve( maxDepth, deferred, Thrower, special )
											);

										// Normal processors (resolve) also hook into progress
										} else {

											// ...and disregard older resolution values
											maxDepth++;

											then.call(
												returned,
												resolve( maxDepth, deferred, Identity, special ),
												resolve( maxDepth, deferred, Thrower, special ),
												resolve( maxDepth, deferred, Identity,
													deferred.notifyWith )
											);
										}

									// Handle all other returned values
									} else {

										// Only substitute handlers pass on context
										// and multiple values (non-spec behavior)
										if ( handler !== Identity ) {
											that = undefined;
											args = [ returned ];
										}

										// Process the value(s)
										// Default process is resolve
										( special || deferred.resolveWith )( that, args );
									}
								},

								// Only normal processors (resolve) catch and reject exceptions
								process = special ?
									mightThrow :
									function() {
										try {
											mightThrow();
										} catch ( e ) {

											if ( jQuery.Deferred.exceptionHook ) {
												jQuery.Deferred.exceptionHook( e,
													process.error );
											}

											// Support: Promises/A+ section 2.3.3.3.4.1
											// https://promisesaplus.com/#point-61
											// Ignore post-resolution exceptions
											if ( depth + 1 >= maxDepth ) {

												// Only substitute handlers pass on context
												// and multiple values (non-spec behavior)
												if ( handler !== Thrower ) {
													that = undefined;
													args = [ e ];
												}

												deferred.rejectWith( that, args );
											}
										}
									};

							// Support: Promises/A+ section 2.3.3.3.1
							// https://promisesaplus.com/#point-57
							// Re-resolve promises immediately to dodge false rejection from
							// subsequent errors
							if ( depth ) {
								process();
							} else {

								// Call an optional hook to record the error, in case of exception
								// since it's otherwise lost when execution goes async
								if ( jQuery.Deferred.getErrorHook ) {
									process.error = jQuery.Deferred.getErrorHook();

								// The deprecated alias of the above. While the name suggests
								// returning the stack, not an error instance, jQuery just passes
								// it directly to `console.warn` so both will work; an instance
								// just better cooperates with source maps.
								} else if ( jQuery.Deferred.getStackHook ) {
									process.error = jQuery.Deferred.getStackHook();
								}
								window.setTimeout( process );
							}
						};
					}

					return jQuery.Deferred( function( newDefer ) {

						// progress_handlers.add( ... )
						tuples[ 0 ][ 3 ].add(
							resolve(
								0,
								newDefer,
								isFunction( onProgress ) ?
									onProgress :
									Identity,
								newDefer.notifyWith
							)
						);

						// fulfilled_handlers.add( ... )
						tuples[ 1 ][ 3 ].add(
							resolve(
								0,
								newDefer,
								isFunction( onFulfilled ) ?
									onFulfilled :
									Identity
							)
						);

						// rejected_handlers.add( ... )
						tuples[ 2 ][ 3 ].add(
							resolve(
								0,
								newDefer,
								isFunction( onRejected ) ?
									onRejected :
									Thrower
							)
						);
					} ).promise();
				},

				// Get a promise for this deferred
				// If obj is provided, the promise aspect is added to the object
				promise: function( obj ) {
					return obj != null ? jQuery.extend( obj, promise ) : promise;
				}
			},
			deferred = {};

		// Add list-specific methods
		jQuery.each( tuples, function( i, tuple ) {
			var list = tuple[ 2 ],
				stateString = tuple[ 5 ];

			// promise.progress = list.add
			// promise.done = list.add
			// promise.fail = list.add
			promise[ tuple[ 1 ] ] = list.add;

			// Handle state
			if ( stateString ) {
				list.add(
					function() {

						// state = "resolved" (i.e., fulfilled)
						// state = "rejected"
						state = stateString;
					},

					// rejected_callbacks.disable
					// fulfilled_callbacks.disable
					tuples[ 3 - i ][ 2 ].disable,

					// rejected_handlers.disable
					// fulfilled_handlers.disable
					tuples[ 3 - i ][ 3 ].disable,

					// progress_callbacks.lock
					tuples[ 0 ][ 2 ].lock,

					// progress_handlers.lock
					tuples[ 0 ][ 3 ].lock
				);
			}

			// progress_handlers.fire
			// fulfilled_handlers.fire
			// rejected_handlers.fire
			list.add( tuple[ 3 ].fire );

			// deferred.notify = function() { deferred.notifyWith(...) }
			// deferred.resolve = function() { deferred.resolveWith(...) }
			// deferred.reject = function() { deferred.rejectWith(...) }
			deferred[ tuple[ 0 ] ] = function() {
				deferred[ tuple[ 0 ] + "With" ]( this === deferred ? undefined : this, arguments );
				return this;
			};

			// deferred.notifyWith = list.fireWith
			// deferred.resolveWith = list.fireWith
			// deferred.rejectWith = list.fireWith
			deferred[ tuple[ 0 ] + "With" ] = list.fireWith;
		} );

		// Make the deferred a promise
		promise.promise( deferred );

		// Call given func if any
		if ( func ) {
			func.call( deferred, deferred );
		}

		// All done!
		return deferred;
	},

	// Deferred helper
	when: function( singleValue ) {
		var

			// count of uncompleted subordinates
			remaining = arguments.length,

			// count of unprocessed arguments
			i = remaining,

			// subordinate fulfillment data
			resolveContexts = Array( i ),
			resolveValues = slice.call( arguments ),

			// the primary Deferred
			primary = jQuery.Deferred(),

			// subordinate callback factory
			updateFunc = function( i ) {
				return function( value ) {
					resolveContexts[ i ] = this;
					resolveValues[ i ] = arguments.length > 1 ? slice.call( arguments ) : value;
					if ( !( --remaining ) ) {
						primary.resolveWith( resolveContexts, resolveValues );
					}
				};
			};

		// Single- and empty arguments are adopted like Promise.resolve
		if ( remaining <= 1 ) {
			adoptValue( singleValue, primary.done( updateFunc( i ) ).resolve, primary.reject,
				!remaining );

			// Use .then() to unwrap secondary thenables (cf. gh-3000)
			if ( primary.state() === "pending" ||
				isFunction( resolveValues[ i ] && resolveValues[ i ].then ) ) {

				return primary.then();
			}
		}

		// Multiple arguments are aggregated like Promise.all array elements
		while ( i-- ) {
			adoptValue( resolveValues[ i ], updateFunc( i ), primary.reject );
		}

		return primary.promise();
	}
} );


// These usually indicate a programmer mistake during development,
// warn about them ASAP rather than swallowing them by default.
var rerrorNames = /^(Eval|Internal|Range|Reference|Syntax|Type|URI)Error$/;

// If `jQuery.Deferred.getErrorHook` is defined, `asyncError` is an error
// captured before the async barrier to get the original error cause
// which may otherwise be hidden.
jQuery.Deferred.exceptionHook = function( error, asyncError ) {

	// Support: IE 8 - 9 only
	// Console exists when dev tools are open, which can happen at any time
	if ( window.console && window.console.warn && error && rerrorNames.test( error.name ) ) {
		window.console.warn( "jQuery.Deferred exception: " + error.message,
			error.stack, asyncError );
	}
};




jQuery.readyException = function( error ) {
	window.setTimeout( function() {
		throw error;
	} );
};




// The deferred used on DOM ready
var readyList = jQuery.Deferred();

jQuery.fn.ready = function( fn ) {

	readyList
		.then( fn )

		// Wrap jQuery.readyException in a function so that the lookup
		// happens at the time of error handling instead of callback
		// registration.
		.catch( function( error ) {
			jQuery.readyException( error );
		} );

	return this;
};

jQuery.extend( {

	// Is the DOM ready to be used? Set to true once it occurs.
	isReady: false,

	// A counter to track how many items to wait for before
	// the ready event fires. See trac-6781
	readyWait: 1,

	// Handle when the DOM is ready
	ready: function( wait ) {

		// Abort if there are pending holds or we're already ready
		if ( wait === true ? --jQuery.readyWait : jQuery.isReady ) {
			return;
		}

		// Remember that the DOM is ready
		jQuery.isReady = true;

		// If a normal DOM Ready event fired, decrement, and wait if need be
		if ( wait !== true && --jQuery.readyWait > 0 ) {
			return;
		}

		// If there are functions bound, to execute
		readyList.resolveWith( document, [ jQuery ] );
	}
} );

jQuery.ready.then = readyList.then;

// The ready event handler and self cleanup method
function completed() {
	document.removeEventListener( "DOMContentLoaded", completed );
	window.removeEventListener( "load", completed );
	jQuery.ready();
}

// Catch cases where $(document).ready() is called
// after the browser event has already occurred.
// Support: IE <=9 - 10 only
// Older IE sometimes signals "interactive" too soon
if ( document.readyState === "complete" ||
	( document.readyState !== "loading" && !document.documentElement.doScroll ) ) {

	// Handle it asynchronously to allow scripts the opportunity to delay ready
	window.setTimeout( jQuery.ready );

} else {

	// Use the handy event callback
	document.addEventListener( "DOMContentLoaded", completed );

	// A fallback to window.onload, that will always work
	window.addEventListener( "load", completed );
}




// Multifunctional method to get and set values of a collection
// The value/s can optionally be executed if it's a function
var access = function( elems, fn, key, value, chainable, emptyGet, raw ) {
	var i = 0,
		len = elems.length,
		bulk = key == null;

	// Sets many values
	if ( toType( key ) === "object" ) {
		chainable = true;
		for ( i in key ) {
			access( elems, fn, i, key[ i ], true, emptyGet, raw );
		}

	// Sets one value
	} else if ( value !== undefined ) {
		chainable = true;

		if ( !isFunction( value ) ) {
			raw = true;
		}

		if ( bulk ) {

			// Bulk operations run against the entire set
			if ( raw ) {
				fn.call( elems, value );
				fn = null;

			// ...except when executing function values
			} else {
				bulk = fn;
				fn = function( elem, _key, value ) {
					return bulk.call( jQuery( elem ), value );
				};
			}
		}

		if ( fn ) {
			for ( ; i < len; i++ ) {
				fn(
					elems[ i ], key, raw ?
						value :
						value.call( elems[ i ], i, fn( elems[ i ], key ) )
				);
			}
		}
	}

	if ( chainable ) {
		return elems;
	}

	// Gets
	if ( bulk ) {
		return fn.call( elems );
	}

	return len ? fn( elems[ 0 ], key ) : emptyGet;
};


// Matches dashed string for camelizing
var rmsPrefix = /^-ms-/,
	rdashAlpha = /-([a-z])/g;

// Used by camelCase as callback to replace()
function fcamelCase( _all, letter ) {
	return letter.toUpperCase();
}

// Convert dashed to camelCase; used by the css and data modules
// Support: IE <=9 - 11, Edge 12 - 15
// Microsoft forgot to hump their vendor prefix (trac-9572)
function camelCase( string ) {
	return string.replace( rmsPrefix, "ms-" ).replace( rdashAlpha, fcamelCase );
}
var acceptData = function( owner ) {

	// Accepts only:
	//  - Node
	//    - Node.ELEMENT_NODE
	//    - Node.DOCUMENT_NODE
	//  - Object
	//    - Any
	return owner.nodeType === 1 || owner.nodeType === 9 || !( +owner.nodeType );
};




function Data() {
	this.expando = jQuery.expando + Data.uid++;
}

Data.uid = 1;

Data.prototype = {

	cache: function( owner ) {

		// Check if the owner object already has a cache
		var value = owner[ this.expando ];

		// If not, create one
		if ( !value ) {
			value = {};

			// We can accept data for non-element nodes in modern browsers,
			// but we should not, see trac-8335.
			// Always return an empty object.
			if ( acceptData( owner ) ) {

				// If it is a node unlikely to be stringify-ed or looped over
				// use plain assignment
				if ( owner.nodeType ) {
					owner[ this.expando ] = value;

				// Otherwise secure it in a non-enumerable property
				// configurable must be true to allow the property to be
				// deleted when data is removed
				} else {
					Object.defineProperty( owner, this.expando, {
						value: value,
						configurable: true
					} );
				}
			}
		}

		return value;
	},
	set: function( owner, data, value ) {
		var prop,
			cache = this.cache( owner );

		// Handle: [ owner, key, value ] args
		// Always use camelCase key (gh-2257)
		if ( typeof data === "string" ) {
			cache[ camelCase( data ) ] = value;

		// Handle: [ owner, { properties } ] args
		} else {

			// Copy the properties one-by-one to the cache object
			for ( prop in data ) {
				cache[ camelCase( prop ) ] = data[ prop ];
			}
		}
		return cache;
	},
	get: function( owner, key ) {
		return key === undefined ?
			this.cache( owner ) :

			// Always use camelCase key (gh-2257)
			owner[ this.expando ] && owner[ this.expando ][ camelCase( key ) ];
	},
	access: function( owner, key, value ) {

		// In cases where either:
		//
		//   1. No key was specified
		//   2. A string key was specified, but no value provided
		//
		// Take the "read" path and allow the get method to determine
		// which value to return, respectively either:
		//
		//   1. The entire cache object
		//   2. The data stored at the key
		//
		if ( key === undefined ||
				( ( key && typeof key === "string" ) && value === undefined ) ) {

			return this.get( owner, key );
		}

		// When the key is not a string, or both a key and value
		// are specified, set or extend (existing objects) with either:
		//
		//   1. An object of properties
		//   2. A key and value
		//
		this.set( owner, key, value );

		// Since the "set" path can have two possible entry points
		// return the expected data based on which path was taken[*]
		return value !== undefined ? value : key;
	},
	remove: function( owner, key ) {
		var i,
			cache = owner[ this.expando ];

		if ( cache === undefined ) {
			return;
		}

		if ( key !== undefined ) {

			// Support array or space separated string of keys
			if ( Array.isArray( key ) ) {

				// If key is an array of keys...
				// We always set camelCase keys, so remove that.
				key = key.map( camelCase );
			} else {
				key = camelCase( key );

				// If a key with the spaces exists, use it.
				// Otherwise, create an array by matching non-whitespace
				key = key in cache ?
					[ key ] :
					( key.match( rnothtmlwhite ) || [] );
			}

			i = key.length;

			while ( i-- ) {
				delete cache[ key[ i ] ];
			}
		}

		// Remove the expando if there's no more data
		if ( key === undefined || jQuery.isEmptyObject( cache ) ) {

			// Support: Chrome <=35 - 45
			// Webkit & Blink performance suffers when deleting properties
			// from DOM nodes, so set to undefined instead
			// https://bugs.chromium.org/p/chromium/issues/detail?id=378607 (bug restricted)
			if ( owner.nodeType ) {
				owner[ this.expando ] = undefined;
			} else {
				delete owner[ this.expando ];
			}
		}
	},
	hasData: function( owner ) {
		var cache = owner[ this.expando ];
		return cache !== undefined && !jQuery.isEmptyObject( cache );
	}
};
var dataPriv = new Data();

var dataUser = new Data();



//	Implementation Summary
//
//	1. Enforce API surface and semantic compatibility with 1.9.x branch
//	2. Improve the module's maintainability by reducing the storage
//		paths to a single mechanism.
//	3. Use the same single mechanism to support "private" and "user" data.
//	4. _Never_ expose "private" data to user code (TODO: Drop _data, _removeData)
//	5. Avoid exposing implementation details on user objects (eg. expando properties)
//	6. Provide a clear path for implementation upgrade to WeakMap in 2014

var rbrace = /^(?:\{[\w\W]*\}|\[[\w\W]*\])$/,
	rmultiDash = /[A-Z]/g;

function getData( data ) {
	if ( data === "true" ) {
		return true;
	}

	if ( data === "false" ) {
		return false;
	}

	if ( data === "null" ) {
		return null;
	}

	// Only convert to a number if it doesn't change the string
	if ( data === +data + "" ) {
		return +data;
	}

	if ( rbrace.test( data ) ) {
		return JSON.parse( data );
	}

	return data;
}

function dataAttr( elem, key, data ) {
	var name;

	// If nothing was found internally, try to fetch any
	// data from the HTML5 data-* attribute
	if ( data === undefined && elem.nodeType === 1 ) {
		name = "data-" + key.replace( rmultiDash, "-$&" ).toLowerCase();
		data = elem.getAttribute( name );

		if ( typeof data === "string" ) {
			try {
				data = getData( data );
			} catch ( e ) {}

			// Make sure we set the data so it isn't changed later
			dataUser.set( elem, key, data );
		} else {
			data = undefined;
		}
	}
	return data;
}

jQuery.extend( {
	hasData: function( elem ) {
		return dataUser.hasData( elem ) || dataPriv.hasData( elem );
	},

	data: function( elem, name, data ) {
		return dataUser.access( elem, name, data );
	},

	removeData: function( elem, name ) {
		dataUser.remove( elem, name );
	},

	// TODO: Now that all calls to _data and _removeData have been replaced
	// with direct calls to dataPriv methods, these can be deprecated.
	_data: function( elem, name, data ) {
		return dataPriv.access( elem, name, data );
	},

	_removeData: function( elem, name ) {
		dataPriv.remove( elem, name );
	}
} );

jQuery.fn.extend( {
	data: function( key, value ) {
		var i, name, data,
			elem = this[ 0 ],
			attrs = elem && elem.attributes;

		// Gets all values
		if ( key === undefined ) {
			if ( this.length ) {
				data = dataUser.get( elem );

				if ( elem.nodeType === 1 && !dataPriv.get( elem, "hasDataAttrs" ) ) {
					i = attrs.length;
					while ( i-- ) {

						// Support: IE 11 only
						// The attrs elements can be null (trac-14894)
						if ( attrs[ i ] ) {
							name = attrs[ i ].name;
							if ( name.indexOf( "data-" ) === 0 ) {
								name = camelCase( name.slice( 5 ) );
								dataAttr( elem, name, data[ name ] );
							}
						}
					}
					dataPriv.set( elem, "hasDataAttrs", true );
				}
			}

			return data;
		}

		// Sets multiple values
		if ( typeof key === "object" ) {
			return this.each( function() {
				dataUser.set( this, key );
			} );
		}

		return access( this, function( value ) {
			var data;

			// The calling jQuery object (element matches) is not empty
			// (and therefore has an element appears at this[ 0 ]) and the
			// `value` parameter was not undefined. An empty jQuery object
			// will result in `undefined` for elem = this[ 0 ] which will
			// throw an exception if an attempt to read a data cache is made.
			if ( elem && value === undefined ) {

				// Attempt to get data from the cache
				// The key will always be camelCased in Data
				data = dataUser.get( elem, key );
				if ( data !== undefined ) {
					return data;
				}

				// Attempt to "discover" the data in
				// HTML5 custom data-* attrs
				data = dataAttr( elem, key );
				if ( data !== undefined ) {
					return data;
				}

				// We tried really hard, but the data doesn't exist.
				return;
			}

			// Set the data...
			this.each( function() {

				// We always store the camelCased key
				dataUser.set( this, key, value );
			} );
		}, null, value, arguments.length > 1, null, true );
	},

	removeData: function( key ) {
		return this.each( function() {
			dataUser.remove( this, key );
		} );
	}
} );


jQuery.extend( {
	queue: function( elem, type, data ) {
		var queue;

		if ( elem ) {
			type = ( type || "fx" ) + "queue";
			queue = dataPriv.get( elem, type );

			// Speed up dequeue by getting out quickly if this is just a lookup
			if ( data ) {
				if ( !queue || Array.isArray( data ) ) {
					queue = dataPriv.access( elem, type, jQuery.makeArray( data ) );
				} else {
					queue.push( data );
				}
			}
			return queue || [];
		}
	},

	dequeue: function( elem, type ) {
		type = type || "fx";

		var queue = jQuery.queue( elem, type ),
			startLength = queue.length,
			fn = queue.shift(),
			hooks = jQuery._queueHooks( elem, type ),
			next = function() {
				jQuery.dequeue( elem, type );
			};

		// If the fx queue is dequeued, always remove the progress sentinel
		if ( fn === "inprogress" ) {
			fn = queue.shift();
			startLength--;
		}

		if ( fn ) {

			// Add a progress sentinel to prevent the fx queue from being
			// automatically dequeued
			if ( type === "fx" ) {
				queue.unshift( "inprogress" );
			}

			// Clear up the last queue stop function
			delete hooks.stop;
			fn.call( elem, next, hooks );
		}

		if ( !startLength && hooks ) {
			hooks.empty.fire();
		}
	},

	// Not public - generate a queueHooks object, or return the current one
	_queueHooks: function( elem, type ) {
		var key = type + "queueHooks";
		return dataPriv.get( elem, key ) || dataPriv.access( elem, key, {
			empty: jQuery.Callbacks( "once memory" ).add( function() {
				dataPriv.remove( elem, [ type + "queue", key ] );
			} )
		} );
	}
} );

jQuery.fn.extend( {
	queue: function( type, data ) {
		var setter = 2;

		if ( typeof type !== "string" ) {
			data = type;
			type = "fx";
			setter--;
		}

		if ( arguments.length < setter ) {
			return jQuery.queue( this[ 0 ], type );
		}

		return data === undefined ?
			this :
			this.each( function() {
				var queue = jQuery.queue( this, type, data );

				// Ensure a hooks for this queue
				jQuery._queueHooks( this, type );

				if ( type === "fx" && queue[ 0 ] !== "inprogress" ) {
					jQuery.dequeue( this, type );
				}
			} );
	},
	dequeue: function( type ) {
		return this.each( function() {
			jQuery.dequeue( this, type );
		} );
	},
	clearQueue: function( type ) {
		return this.queue( type || "fx", [] );
	},

	// Get a promise resolved when queues of a certain type
	// are emptied (fx is the type by default)
	promise: function( type, obj ) {
		var tmp,
			count = 1,
			defer = jQuery.Deferred(),
			elements = this,
			i = this.length,
			resolve = function() {
				if ( !( --count ) ) {
					defer.resolveWith( elements, [ elements ] );
				}
			};

		if ( typeof type !== "string" ) {
			obj = type;
			type = undefined;
		}
		type = type || "fx";

		while ( i-- ) {
			tmp = dataPriv.get( elements[ i ], type + "queueHooks" );
			if ( tmp && tmp.empty ) {
				count++;
				tmp.empty.add( resolve );
			}
		}
		resolve();
		return defer.promise( obj );
	}
} );
var pnum = ( /[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/ ).source;

var rcssNum = new RegExp( "^(?:([+-])=|)(" + pnum + ")([a-z%]*)$", "i" );


var cssExpand = [ "Top", "Right", "Bottom", "Left" ];

var documentElement = document.documentElement;



	var isAttached = function( elem ) {
			return jQuery.contains( elem.ownerDocument, elem );
		},
		composed = { composed: true };

	// Support: IE 9 - 11+, Edge 12 - 18+, iOS 10.0 - 10.2 only
	// Check attachment across shadow DOM boundaries when possible (gh-3504)
	// Support: iOS 10.0-10.2 only
	// Early iOS 10 versions support `attachShadow` but not `getRootNode`,
	// leading to errors. We need to check for `getRootNode`.
	if ( documentElement.getRootNode ) {
		isAttached = function( elem ) {
			return jQuery.contains( elem.ownerDocument, elem ) ||
				elem.getRootNode( composed ) === elem.ownerDocument;
		};
	}
var isHiddenWithinTree = function( elem, el ) {

		// isHiddenWithinTree might be called from jQuery#filter function;
		// in that case, element will be second argument
		elem = el || elem;

		// Inline style trumps all
		return elem.style.display === "none" ||
			elem.style.display === "" &&

			// Otherwise, check computed style
			// Support: Firefox <=43 - 45
			// Disconnected elements can have computed display: none, so first confirm that elem is
			// in the document.
			isAttached( elem ) &&

			jQuery.css( elem, "display" ) === "none";
	};



function adjustCSS( elem, prop, valueParts, tween ) {
	var adjusted, scale,
		maxIterations = 20,
		currentValue = tween ?
			function() {
				return tween.cur();
			} :
			function() {
				return jQuery.css( elem, prop, "" );
			},
		initial = currentValue(),
		unit = valueParts && valueParts[ 3 ] || ( jQuery.cssNumber[ prop ] ? "" : "px" ),

		// Starting value computation is required for potential unit mismatches
		initialInUnit = elem.nodeType &&
			( jQuery.cssNumber[ prop ] || unit !== "px" && +initial ) &&
			rcssNum.exec( jQuery.css( elem, prop ) );

	if ( initialInUnit && initialInUnit[ 3 ] !== unit ) {

		// Support: Firefox <=54
		// Halve the iteration target value to prevent interference from CSS upper bounds (gh-2144)
		initial = initial / 2;

		// Trust units reported by jQuery.css
		unit = unit || initialInUnit[ 3 ];

		// Iteratively approximate from a nonzero starting point
		initialInUnit = +initial || 1;

		while ( maxIterations-- ) {

			// Evaluate and update our best guess (doubling guesses that zero out).
			// Finish if the scale equals or crosses 1 (making the old*new product non-positive).
			jQuery.style( elem, prop, initialInUnit + unit );
			if ( ( 1 - scale ) * ( 1 - ( scale = currentValue() / initial || 0.5 ) ) <= 0 ) {
				maxIterations = 0;
			}
			initialInUnit = initialInUnit / scale;

		}

		initialInUnit = initialInUnit * 2;
		jQuery.style( elem, prop, initialInUnit + unit );

		// Make sure we update the tween properties later on
		valueParts = valueParts || [];
	}

	if ( valueParts ) {
		initialInUnit = +initialInUnit || +initial || 0;

		// Apply relative offset (+=/-=) if specified
		adjusted = valueParts[ 1 ] ?
			initialInUnit + ( valueParts[ 1 ] + 1 ) * valueParts[ 2 ] :
			+valueParts[ 2 ];
		if ( tween ) {
			tween.unit = unit;
			tween.start = initialInUnit;
			tween.end = adjusted;
		}
	}
	return adjusted;
}


var defaultDisplayMap = {};

function getDefaultDisplay( elem ) {
	var temp,
		doc = elem.ownerDocument,
		nodeName = elem.nodeName,
		display = defaultDisplayMap[ nodeName ];

	if ( display ) {
		return display;
	}

	temp = doc.body.appendChild( doc.createElement( nodeName ) );
	display = jQuery.css( temp, "display" );

	temp.parentNode.removeChild( temp );

	if ( display === "none" ) {
		display = "block";
	}
	defaultDisplayMap[ nodeName ] = display;

	return display;
}

function showHide( elements, show ) {
	var display, elem,
		values = [],
		index = 0,
		length = elements.length;

	// Determine new display value for elements that need to change
	for ( ; index < length; index++ ) {
		elem = elements[ index ];
		if ( !elem.style ) {
			continue;
		}

		display = elem.style.display;
		if ( show ) {

			// Since we force visibility upon cascade-hidden elements, an immediate (and slow)
			// check is required in this first loop unless we have a nonempty display value (either
			// inline or about-to-be-restored)
			if ( display === "none" ) {
				values[ index ] = dataPriv.get( elem, "display" ) || null;
				if ( !values[ index ] ) {
					elem.style.display = "";
				}
			}
			if ( elem.style.display === "" && isHiddenWithinTree( elem ) ) {
				values[ index ] = getDefaultDisplay( elem );
			}
		} else {
			if ( display !== "none" ) {
				values[ index ] = "none";

				// Remember what we're overwriting
				dataPriv.set( elem, "display", display );
			}
		}
	}

	// Set the display of the elements in a second loop to avoid constant reflow
	for ( index = 0; index < length; index++ ) {
		if ( values[ index ] != null ) {
			elements[ index ].style.display = values[ index ];
		}
	}

	return elements;
}

jQuery.fn.extend( {
	show: function() {
		return showHide( this, true );
	},
	hide: function() {
		return showHide( this );
	},
	toggle: function( state ) {
		if ( typeof state === "boolean" ) {
			return state ? this.show() : this.hide();
		}

		return this.each( function() {
			if ( isHiddenWithinTree( this ) ) {
				jQuery( this ).show();
			} else {
				jQuery( this ).hide();
			}
		} );
	}
} );
var rcheckableType = ( /^(?:checkbox|radio)$/i );

var rtagName = ( /<([a-z][^\/\0>\x20\t\r\n\f]*)/i );

var rscriptType = ( /^$|^module$|\/(?:java|ecma)script/i );



( function() {
	var fragment = document.createDocumentFragment(),
		div = fragment.appendChild( document.createElement( "div" ) ),
		input = document.createElement( "input" );

	// Support: Android 4.0 - 4.3 only
	// Check state lost if the name is set (trac-11217)
	// Support: Windows Web Apps (WWA)
	// `name` and `type` must use .setAttribute for WWA (trac-14901)
	input.setAttribute( "type", "radio" );
	input.setAttribute( "checked", "checked" );
	input.setAttribute( "name", "t" );

	div.appendChild( input );

	// Support: Android <=4.1 only
	// Older WebKit doesn't clone checked state correctly in fragments
	support.checkClone = div.cloneNode( true ).cloneNode( true ).lastChild.checked;

	// Support: IE <=11 only
	// Make sure textarea (and checkbox) defaultValue is properly cloned
	div.innerHTML = "<textarea>x</textarea>";
	support.noCloneChecked = !!div.cloneNode( true ).lastChild.defaultValue;

	// Support: IE <=9 only
	// IE <=9 replaces <option> tags with their contents when inserted outside of
	// the select element.
	div.innerHTML = "<option></option>";
	support.option = !!div.lastChild;
} )();


// We have to close these tags to support XHTML (trac-13200)
var wrapMap = {

	// XHTML parsers do not magically insert elements in the
	// same way that tag soup parsers do. So we cannot shorten
	// this by omitting <tbody> or other required elements.
	thead: [ 1, "<table>", "</table>" ],
	col: [ 2, "<table><colgroup>", "</colgroup></table>" ],
	tr: [ 2, "<table><tbody>", "</tbody></table>" ],
	td: [ 3, "<table><tbody><tr>", "</tr></tbody></table>" ],

	_default: [ 0, "", "" ]
};

wrapMap.tbody = wrapMap.tfoot = wrapMap.colgroup = wrapMap.caption = wrapMap.thead;
wrapMap.th = wrapMap.td;

// Support: IE <=9 only
if ( !support.option ) {
	wrapMap.optgroup = wrapMap.option = [ 1, "<select multiple='multiple'>", "</select>" ];
}


function getAll( context, tag ) {

	// Support: IE <=9 - 11 only
	// Use typeof to avoid zero-argument method invocation on host objects (trac-15151)
	var ret;

	if ( typeof context.getElementsByTagName !== "undefined" ) {
		ret = context.getElementsByTagName( tag || "*" );

	} else if ( typeof context.querySelectorAll !== "undefined" ) {
		ret = context.querySelectorAll( tag || "*" );

	} else {
		ret = [];
	}

	if ( tag === undefined || tag && nodeName( context, tag ) ) {
		return jQuery.merge( [ context ], ret );
	}

	return ret;
}


// Mark scripts as having already been evaluated
function setGlobalEval( elems, refElements ) {
	var i = 0,
		l = elems.length;

	for ( ; i < l; i++ ) {
		dataPriv.set(
			elems[ i ],
			"globalEval",
			!refElements || dataPriv.get( refElements[ i ], "globalEval" )
		);
	}
}


var rhtml = /<|&#?\w+;/;

function buildFragment( elems, context, scripts, selection, ignored ) {
	var elem, tmp, tag, wrap, attached, j,
		fragment = context.createDocumentFragment(),
		nodes = [],
		i = 0,
		l = elems.length;

	for ( ; i < l; i++ ) {
		elem = elems[ i ];

		if ( elem || elem === 0 ) {

			// Add nodes directly
			if ( toType( elem ) === "object" ) {

				// Support: Android <=4.0 only, PhantomJS 1 only
				// push.apply(_, arraylike) throws on ancient WebKit
				jQuery.merge( nodes, elem.nodeType ? [ elem ] : elem );

			// Convert non-html into a text node
			} else if ( !rhtml.test( elem ) ) {
				nodes.push( context.createTextNode( elem ) );

			// Convert html into DOM nodes
			} else {
				tmp = tmp || fragment.appendChild( context.createElement( "div" ) );

				// Deserialize a standard representation
				tag = ( rtagName.exec( elem ) || [ "", "" ] )[ 1 ].toLowerCase();
				wrap = wrapMap[ tag ] || wrapMap._default;
				tmp.innerHTML = wrap[ 1 ] + jQuery.htmlPrefilter( elem ) + wrap[ 2 ];

				// Descend through wrappers to the right content
				j = wrap[ 0 ];
				while ( j-- ) {
					tmp = tmp.lastChild;
				}

				// Support: Android <=4.0 only, PhantomJS 1 only
				// push.apply(_, arraylike) throws on ancient WebKit
				jQuery.merge( nodes, tmp.childNodes );

				// Remember the top-level container
				tmp = fragment.firstChild;

				// Ensure the created nodes are orphaned (trac-12392)
				tmp.textContent = "";
			}
		}
	}

	// Remove wrapper from fragment
	fragment.textContent = "";

	i = 0;
	while ( ( elem = nodes[ i++ ] ) ) {

		// Skip elements already in the context collection (trac-4087)
		if ( selection && jQuery.inArray( elem, selection ) > -1 ) {
			if ( ignored ) {
				ignored.push( elem );
			}
			continue;
		}

		attached = isAttached( elem );

		// Append to fragment
		tmp = getAll( fragment.appendChild( elem ), "script" );

		// Preserve script evaluation history
		if ( attached ) {
			setGlobalEval( tmp );
		}

		// Capture executables
		if ( scripts ) {
			j = 0;
			while ( ( elem = tmp[ j++ ] ) ) {
				if ( rscriptType.test( elem.type || "" ) ) {
					scripts.push( elem );
				}
			}
		}
	}

	return fragment;
}


var rtypenamespace = /^([^.]*)(?:\.(.+)|)/;

function returnTrue() {
	return true;
}

function returnFalse() {
	return false;
}

function on( elem, types, selector, data, fn, one ) {
	var origFn, type;

	// Types can be a map of types/handlers
	if ( typeof types === "object" ) {

		// ( types-Object, selector, data )
		if ( typeof selector !== "string" ) {

			// ( types-Object, data )
			data = data || selector;
			selector = undefined;
		}
		for ( type in types ) {
			on( elem, type, selector, data, types[ type ], one );
		}
		return elem;
	}

	if ( data == null && fn == null ) {

		// ( types, fn )
		fn = selector;
		data = selector = undefined;
	} else if ( fn == null ) {
		if ( typeof selector === "string" ) {

			// ( types, selector, fn )
			fn = data;
			data = undefined;
		} else {

			// ( types, data, fn )
			fn = data;
			data = selector;
			selector = undefined;
		}
	}
	if ( fn === false ) {
		fn = returnFalse;
	} else if ( !fn ) {
		return elem;
	}

	if ( one === 1 ) {
		origFn = fn;
		fn = function( event ) {

			// Can use an empty set, since event contains the info
			jQuery().off( event );
			return origFn.apply( this, arguments );
		};

		// Use same guid so caller can remove using origFn
		fn.guid = origFn.guid || ( origFn.guid = jQuery.guid++ );
	}
	return elem.each( function() {
		jQuery.event.add( this, types, fn, data, selector );
	} );
}

/*
 * Helper functions for managing events -- not part of the public interface.
 * Props to Dean Edwards' addEvent library for many of the ideas.
 */
jQuery.event = {

	global: {},

	add: function( elem, types, handler, data, selector ) {

		var handleObjIn, eventHandle, tmp,
			events, t, handleObj,
			special, handlers, type, namespaces, origType,
			elemData = dataPriv.get( elem );

		// Only attach events to objects that accept data
		if ( !acceptData( elem ) ) {
			return;
		}

		// Caller can pass in an object of custom data in lieu of the handler
		if ( handler.handler ) {
			handleObjIn = handler;
			handler = handleObjIn.handler;
			selector = handleObjIn.selector;
		}

		// Ensure that invalid selectors throw exceptions at attach time
		// Evaluate against documentElement in case elem is a non-element node (e.g., document)
		if ( selector ) {
			jQuery.find.matchesSelector( documentElement, selector );
		}

		// Make sure that the handler has a unique ID, used to find/remove it later
		if ( !handler.guid ) {
			handler.guid = jQuery.guid++;
		}

		// Init the element's event structure and main handler, if this is the first
		if ( !( events = elemData.events ) ) {
			events = elemData.events = Object.create( null );
		}
		if ( !( eventHandle = elemData.handle ) ) {
			eventHandle = elemData.handle = function( e ) {

				// Discard the second event of a jQuery.event.trigger() and
				// when an event is called after a page has unloaded
				return typeof jQuery !== "undefined" && jQuery.event.triggered !== e.type ?
					jQuery.event.dispatch.apply( elem, arguments ) : undefined;
			};
		}

		// Handle multiple events separated by a space
		types = ( types || "" ).match( rnothtmlwhite ) || [ "" ];
		t = types.length;
		while ( t-- ) {
			tmp = rtypenamespace.exec( types[ t ] ) || [];
			type = origType = tmp[ 1 ];
			namespaces = ( tmp[ 2 ] || "" ).split( "." ).sort();

			// There *must* be a type, no attaching namespace-only handlers
			if ( !type ) {
				continue;
			}

			// If event changes its type, use the special event handlers for the changed type
			special = jQuery.event.special[ type ] || {};

			// If selector defined, determine special event api type, otherwise given type
			type = ( selector ? special.delegateType : special.bindType ) || type;

			// Update special based on newly reset type
			special = jQuery.event.special[ type ] || {};

			// handleObj is passed to all event handlers
			handleObj = jQuery.extend( {
				type: type,
				origType: origType,
				data: data,
				handler: handler,
				guid: handler.guid,
				selector: selector,
				needsContext: selector && jQuery.expr.match.needsContext.test( selector ),
				namespace: namespaces.join( "." )
			}, handleObjIn );

			// Init the event handler queue if we're the first
			if ( !( handlers = events[ type ] ) ) {
				handlers = events[ type ] = [];
				handlers.delegateCount = 0;

				// Only use addEventListener if the special events handler returns false
				if ( !special.setup ||
					special.setup.call( elem, data, namespaces, eventHandle ) === false ) {

					if ( elem.addEventListener ) {
						elem.addEventListener( type, eventHandle );
					}
				}
			}

			if ( special.add ) {
				special.add.call( elem, handleObj );

				if ( !handleObj.handler.guid ) {
					handleObj.handler.guid = handler.guid;
				}
			}

			// Add to the element's handler list, delegates in front
			if ( selector ) {
				handlers.splice( handlers.delegateCount++, 0, handleObj );
			} else {
				handlers.push( handleObj );
			}

			// Keep track of which events have ever been used, for event optimization
			jQuery.event.global[ type ] = true;
		}

	},

	// Detach an event or set of events from an element
	remove: function( elem, types, handler, selector, mappedTypes ) {

		var j, origCount, tmp,
			events, t, handleObj,
			special, handlers, type, namespaces, origType,
			elemData = dataPriv.hasData( elem ) && dataPriv.get( elem );

		if ( !elemData || !( events = elemData.events ) ) {
			return;
		}

		// Once for each type.namespace in types; type may be omitted
		types = ( types || "" ).match( rnothtmlwhite ) || [ "" ];
		t = types.length;
		while ( t-- ) {
			tmp = rtypenamespace.exec( types[ t ] ) || [];
			type = origType = tmp[ 1 ];
			namespaces = ( tmp[ 2 ] || "" ).split( "." ).sort();

			// Unbind all events (on this namespace, if provided) for the element
			if ( !type ) {
				for ( type in events ) {
					jQuery.event.remove( elem, type + types[ t ], handler, selector, true );
				}
				continue;
			}

			special = jQuery.event.special[ type ] || {};
			type = ( selector ? special.delegateType : special.bindType ) || type;
			handlers = events[ type ] || [];
			tmp = tmp[ 2 ] &&
				new RegExp( "(^|\\.)" + namespaces.join( "\\.(?:.*\\.|)" ) + "(\\.|$)" );

			// Remove matching events
			origCount = j = handlers.length;
			while ( j-- ) {
				handleObj = handlers[ j ];

				if ( ( mappedTypes || origType === handleObj.origType ) &&
					( !handler || handler.guid === handleObj.guid ) &&
					( !tmp || tmp.test( handleObj.namespace ) ) &&
					( !selector || selector === handleObj.selector ||
						selector === "**" && handleObj.selector ) ) {
					handlers.splice( j, 1 );

					if ( handleObj.selector ) {
						handlers.delegateCount--;
					}
					if ( special.remove ) {
						special.remove.call( elem, handleObj );
					}
				}
			}

			// Remove generic event handler if we removed something and no more handlers exist
			// (avoids potential for endless recursion during removal of special event handlers)
			if ( origCount && !handlers.length ) {
				if ( !special.teardown ||
					special.teardown.call( elem, namespaces, elemData.handle ) === false ) {

					jQuery.removeEvent( elem, type, elemData.handle );
				}

				delete events[ type ];
			}
		}

		// Remove data and the expando if it's no longer used
		if ( jQuery.isEmptyObject( events ) ) {
			dataPriv.remove( elem, "handle events" );
		}
	},

	dispatch: function( nativeEvent ) {

		var i, j, ret, matched, handleObj, handlerQueue,
			args = new Array( arguments.length ),

			// Make a writable jQuery.Event from the native event object
			event = jQuery.event.fix( nativeEvent ),

			handlers = (
				dataPriv.get( this, "events" ) || Object.create( null )
			)[ event.type ] || [],
			special = jQuery.event.special[ event.type ] || {};

		// Use the fix-ed jQuery.Event rather than the (read-only) native event
		args[ 0 ] = event;

		for ( i = 1; i < arguments.length; i++ ) {
			args[ i ] = arguments[ i ];
		}

		event.delegateTarget = this;

		// Call the preDispatch hook for the mapped type, and let it bail if desired
		if ( special.preDispatch && special.preDispatch.call( this, event ) === false ) {
			return;
		}

		// Determine handlers
		handlerQueue = jQuery.event.handlers.call( this, event, handlers );

		// Run delegates first; they may want to stop propagation beneath us
		i = 0;
		while ( ( matched = handlerQueue[ i++ ] ) && !event.isPropagationStopped() ) {
			event.currentTarget = matched.elem;

			j = 0;
			while ( ( handleObj = matched.handlers[ j++ ] ) &&
				!event.isImmediatePropagationStopped() ) {

				// If the event is namespaced, then each handler is only invoked if it is
				// specially universal or its namespaces are a superset of the event's.
				if ( !event.rnamespace || handleObj.namespace === false ||
					event.rnamespace.test( handleObj.namespace ) ) {

					event.handleObj = handleObj;
					event.data = handleObj.data;

					ret = ( ( jQuery.event.special[ handleObj.origType ] || {} ).handle ||
						handleObj.handler ).apply( matched.elem, args );

					if ( ret !== undefined ) {
						if ( ( event.result = ret ) === false ) {
							event.preventDefault();
							event.stopPropagation();
						}
					}
				}
			}
		}

		// Call the postDispatch hook for the mapped type
		if ( special.postDispatch ) {
			special.postDispatch.call( this, event );
		}

		return event.result;
	},

	handlers: function( event, handlers ) {
		var i, handleObj, sel, matchedHandlers, matchedSelectors,
			handlerQueue = [],
			delegateCount = handlers.delegateCount,
			cur = event.target;

		// Find delegate handlers
		if ( delegateCount &&

			// Support: IE <=9
			// Black-hole SVG <use> instance trees (trac-13180)
			cur.nodeType &&

			// Support: Firefox <=42
			// Suppress spec-violating clicks indicating a non-primary pointer button (trac-3861)
			// https://www.w3.org/TR/DOM-Level-3-Events/#event-type-click
			// Support: IE 11 only
			// ...but not arrow key "clicks" of radio inputs, which can have `button` -1 (gh-2343)
			!( event.type === "click" && event.button >= 1 ) ) {

			for ( ; cur !== this; cur = cur.parentNode || this ) {

				// Don't check non-elements (trac-13208)
				// Don't process clicks on disabled elements (trac-6911, trac-8165, trac-11382, trac-11764)
				if ( cur.nodeType === 1 && !( event.type === "click" && cur.disabled === true ) ) {
					matchedHandlers = [];
					matchedSelectors = {};
					for ( i = 0; i < delegateCount; i++ ) {
						handleObj = handlers[ i ];

						// Don't conflict with Object.prototype properties (trac-13203)
						sel = handleObj.selector + " ";

						if ( matchedSelectors[ sel ] === undefined ) {
							matchedSelectors[ sel ] = handleObj.needsContext ?
								jQuery( sel, this ).index( cur ) > -1 :
								jQuery.find( sel, this, null, [ cur ] ).length;
						}
						if ( matchedSelectors[ sel ] ) {
							matchedHandlers.push( handleObj );
						}
					}
					if ( matchedHandlers.length ) {
						handlerQueue.push( { elem: cur, handlers: matchedHandlers } );
					}
				}
			}
		}

		// Add the remaining (directly-bound) handlers
		cur = this;
		if ( delegateCount < handlers.length ) {
			handlerQueue.push( { elem: cur, handlers: handlers.slice( delegateCount ) } );
		}

		return handlerQueue;
	},

	addProp: function( name, hook ) {
		Object.defineProperty( jQuery.Event.prototype, name, {
			enumerable: true,
			configurable: true,

			get: isFunction( hook ) ?
				function() {
					if ( this.originalEvent ) {
						return hook( this.originalEvent );
					}
				} :
				function() {
					if ( this.originalEvent ) {
						return this.originalEvent[ name ];
					}
				},

			set: function( value ) {
				Object.defineProperty( this, name, {
					enumerable: true,
					configurable: true,
					writable: true,
					value: value
				} );
			}
		} );
	},

	fix: function( originalEvent ) {
		return originalEvent[ jQuery.expando ] ?
			originalEvent :
			new jQuery.Event( originalEvent );
	},

	special: {
		load: {

			// Prevent triggered image.load events from bubbling to window.load
			noBubble: true
		},
		click: {

			// Utilize native event to ensure correct state for checkable inputs
			setup: function( data ) {

				// For mutual compressibility with _default, replace `this` access with a local var.
				// `|| data` is dead code meant only to preserve the variable through minification.
				var el = this || data;

				// Claim the first handler
				if ( rcheckableType.test( el.type ) &&
					el.click && nodeName( el, "input" ) ) {

					// dataPriv.set( el, "click", ... )
					leverageNative( el, "click", true );
				}

				// Return false to allow normal processing in the caller
				return false;
			},
			trigger: function( data ) {

				// For mutual compressibility with _default, replace `this` access with a local var.
				// `|| data` is dead code meant only to preserve the variable through minification.
				var el = this || data;

				// Force setup before triggering a click
				if ( rcheckableType.test( el.type ) &&
					el.click && nodeName( el, "input" ) ) {

					leverageNative( el, "click" );
				}

				// Return non-false to allow normal event-path propagation
				return true;
			},

			// For cross-browser consistency, suppress native .click() on links
			// Also prevent it if we're currently inside a leveraged native-event stack
			_default: function( event ) {
				var target = event.target;
				return rcheckableType.test( target.type ) &&
					target.click && nodeName( target, "input" ) &&
					dataPriv.get( target, "click" ) ||
					nodeName( target, "a" );
			}
		},

		beforeunload: {
			postDispatch: function( event ) {

				// Support: Firefox 20+
				// Firefox doesn't alert if the returnValue field is not set.
				if ( event.result !== undefined && event.originalEvent ) {
					event.originalEvent.returnValue = event.result;
				}
			}
		}
	}
};

// Ensure the presence of an event listener that handles manually-triggered
// synthetic events by interrupting progress until reinvoked in response to
// *native* events that it fires directly, ensuring that state changes have
// already occurred before other listeners are invoked.
function leverageNative( el, type, isSetup ) {

	// Missing `isSetup` indicates a trigger call, which must force setup through jQuery.event.add
	if ( !isSetup ) {
		if ( dataPriv.get( el, type ) === undefined ) {
			jQuery.event.add( el, type, returnTrue );
		}
		return;
	}

	// Register the controller as a special universal handler for all event namespaces
	dataPriv.set( el, type, false );
	jQuery.event.add( el, type, {
		namespace: false,
		handler: function( event ) {
			var result,
				saved = dataPriv.get( this, type );

			if ( ( event.isTrigger & 1 ) && this[ type ] ) {

				// Interrupt processing of the outer synthetic .trigger()ed event
				if ( !saved ) {

					// Store arguments for use when handling the inner native event
					// There will always be at least one argument (an event object), so this array
					// will not be confused with a leftover capture object.
					saved = slice.call( arguments );
					dataPriv.set( this, type, saved );

					// Trigger the native event and capture its result
					this[ type ]();
					result = dataPriv.get( this, type );
					dataPriv.set( this, type, false );

					if ( saved !== result ) {

						// Cancel the outer synthetic event
						event.stopImmediatePropagation();
						event.preventDefault();

						return result;
					}

				// If this is an inner synthetic event for an event with a bubbling surrogate
				// (focus or blur), assume that the surrogate already propagated from triggering
				// the native event and prevent that from happening again here.
				// This technically gets the ordering wrong w.r.t. to `.trigger()` (in which the
				// bubbling surrogate propagates *after* the non-bubbling base), but that seems
				// less bad than duplication.
				} else if ( ( jQuery.event.special[ type ] || {} ).delegateType ) {
					event.stopPropagation();
				}

			// If this is a native event triggered above, everything is now in order
			// Fire an inner synthetic event with the original arguments
			} else if ( saved ) {

				// ...and capture the result
				dataPriv.set( this, type, jQuery.event.trigger(
					saved[ 0 ],
					saved.slice( 1 ),
					this
				) );

				// Abort handling of the native event by all jQuery handlers while allowing
				// native handlers on the same element to run. On target, this is achieved
				// by stopping immediate propagation just on the jQuery event. However,
				// the native event is re-wrapped by a jQuery one on each level of the
				// propagation so the only way to stop it for jQuery is to stop it for
				// everyone via native `stopPropagation()`. This is not a problem for
				// focus/blur which don't bubble, but it does also stop click on checkboxes
				// and radios. We accept this limitation.
				event.stopPropagation();
				event.isImmediatePropagationStopped = returnTrue;
			}
		}
	} );
}

jQuery.removeEvent = function( elem, type, handle ) {

	// This "if" is needed for plain objects
	if ( elem.removeEventListener ) {
		elem.removeEventListener( type, handle );
	}
};

jQuery.Event = function( src, props ) {

	// Allow instantiation without the 'new' keyword
	if ( !( this instanceof jQuery.Event ) ) {
		return new jQuery.Event( src, props );
	}

	// Event object
	if ( src && src.type ) {
		this.originalEvent = src;
		this.type = src.type;

		// Events bubbling up the document may have been marked as prevented
		// by a handler lower down the tree; reflect the correct value.
		this.isDefaultPrevented = src.defaultPrevented ||
				src.defaultPrevented === undefined &&

				// Support: Android <=2.3 only
				src.returnValue === false ?
			returnTrue :
			returnFalse;

		// Create target properties
		// Support: Safari <=6 - 7 only
		// Target should not be a text node (trac-504, trac-13143)
		this.target = ( src.target && src.target.nodeType === 3 ) ?
			src.target.parentNode :
			src.target;

		this.currentTarget = src.currentTarget;
		this.relatedTarget = src.relatedTarget;

	// Event type
	} else {
		this.type = src;
	}

	// Put explicitly provided properties onto the event object
	if ( props ) {
		jQuery.extend( this, props );
	}

	// Create a timestamp if incoming event doesn't have one
	this.timeStamp = src && src.timeStamp || Date.now();

	// Mark it as fixed
	this[ jQuery.expando ] = true;
};

// jQuery.Event is based on DOM3 Events as specified by the ECMAScript Language Binding
// https://www.w3.org/TR/2003/WD-DOM-Level-3-Events-20030331/ecma-script-binding.html
jQuery.Event.prototype = {
	constructor: jQuery.Event,
	isDefaultPrevented: returnFalse,
	isPropagationStopped: returnFalse,
	isImmediatePropagationStopped: returnFalse,
	isSimulated: false,

	preventDefault: function() {
		var e = this.originalEvent;

		this.isDefaultPrevented = returnTrue;

		if ( e && !this.isSimulated ) {
			e.preventDefault();
		}
	},
	stopPropagation: function() {
		var e = this.originalEvent;

		this.isPropagationStopped = returnTrue;

		if ( e && !this.isSimulated ) {
			e.stopPropagation();
		}
	},
	stopImmediatePropagation: function() {
		var e = this.originalEvent;

		this.isImmediatePropagationStopped = returnTrue;

		if ( e && !this.isSimulated ) {
			e.stopImmediatePropagation();
		}

		this.stopPropagation();
	}
};

// Includes all common event props including KeyEvent and MouseEvent specific props
jQuery.each( {
	altKey: true,
	bubbles: true,
	cancelable: true,
	changedTouches: true,
	ctrlKey: true,
	detail: true,
	eventPhase: true,
	metaKey: true,
	pageX: true,
	pageY: true,
	shiftKey: true,
	view: true,
	"char": true,
	code: true,
	charCode: true,
	key: true,
	keyCode: true,
	button: true,
	buttons: true,
	clientX: true,
	clientY: true,
	offsetX: true,
	offsetY: true,
	pointerId: true,
	pointerType: true,
	screenX: true,
	screenY: true,
	targetTouches: true,
	toElement: true,
	touches: true,
	which: true
}, jQuery.event.addProp );

jQuery.each( { focus: "focusin", blur: "focusout" }, function( type, delegateType ) {

	function focusMappedHandler( nativeEvent ) {
		if ( document.documentMode ) {

			// Support: IE 11+
			// Attach a single focusin/focusout handler on the document while someone wants
			// focus/blur. This is because the former are synchronous in IE while the latter
			// are async. In other browsers, all those handlers are invoked synchronously.

			// `handle` from private data would already wrap the event, but we need
			// to change the `type` here.
			var handle = dataPriv.get( this, "handle" ),
				event = jQuery.event.fix( nativeEvent );
			event.type = nativeEvent.type === "focusin" ? "focus" : "blur";
			event.isSimulated = true;

			// First, handle focusin/focusout
			handle( nativeEvent );

			// ...then, handle focus/blur
			//
			// focus/blur don't bubble while focusin/focusout do; simulate the former by only
			// invoking the handler at the lower level.
			if ( event.target === event.currentTarget ) {

				// The setup part calls `leverageNative`, which, in turn, calls
				// `jQuery.event.add`, so event handle will already have been set
				// by this point.
				handle( event );
			}
		} else {

			// For non-IE browsers, attach a single capturing handler on the document
			// while someone wants focusin/focusout.
			jQuery.event.simulate( delegateType, nativeEvent.target,
				jQuery.event.fix( nativeEvent ) );
		}
	}

	jQuery.event.special[ type ] = {

		// Utilize native event if possible so blur/focus sequence is correct
		setup: function() {

			var attaches;

			// Claim the first handler
			// dataPriv.set( this, "focus", ... )
			// dataPriv.set( this, "blur", ... )
			leverageNative( this, type, true );

			if ( document.documentMode ) {

				// Support: IE 9 - 11+
				// We use the same native handler for focusin & focus (and focusout & blur)
				// so we need to coordinate setup & teardown parts between those events.
				// Use `delegateType` as the key as `type` is already used by `leverageNative`.
				attaches = dataPriv.get( this, delegateType );
				if ( !attaches ) {
					this.addEventListener( delegateType, focusMappedHandler );
				}
				dataPriv.set( this, delegateType, ( attaches || 0 ) + 1 );
			} else {

				// Return false to allow normal processing in the caller
				return false;
			}
		},
		trigger: function() {

			// Force setup before trigger
			leverageNative( this, type );

			// Return non-false to allow normal event-path propagation
			return true;
		},

		teardown: function() {
			var attaches;

			if ( document.documentMode ) {
				attaches = dataPriv.get( this, delegateType ) - 1;
				if ( !attaches ) {
					this.removeEventListener( delegateType, focusMappedHandler );
					dataPriv.remove( this, delegateType );
				} else {
					dataPriv.set( this, delegateType, attaches );
				}
			} else {

				// Return false to indicate standard teardown should be applied
				return false;
			}
		},

		// Suppress native focus or blur if we're currently inside
		// a leveraged native-event stack
		_default: function( event ) {
			return dataPriv.get( event.target, type );
		},

		delegateType: delegateType
	};

	// Support: Firefox <=44
	// Firefox doesn't have focus(in | out) events
	// Related ticket - https://bugzilla.mozilla.org/show_bug.cgi?id=687787
	//
	// Support: Chrome <=48 - 49, Safari <=9.0 - 9.1
	// focus(in | out) events fire after focus & blur events,
	// which is spec violation - http://www.w3.org/TR/DOM-Level-3-Events/#events-focusevent-event-order
	// Related ticket - https://bugs.chromium.org/p/chromium/issues/detail?id=449857
	//
	// Support: IE 9 - 11+
	// To preserve relative focusin/focus & focusout/blur event order guaranteed on the 3.x branch,
	// attach a single handler for both events in IE.
	jQuery.event.special[ delegateType ] = {
		setup: function() {

			// Handle: regular nodes (via `this.ownerDocument`), window
			// (via `this.document`) & document (via `this`).
			var doc = this.ownerDocument || this.document || this,
				dataHolder = document.documentMode ? this : doc,
				attaches = dataPriv.get( dataHolder, delegateType );

			// Support: IE 9 - 11+
			// We use the same native handler for focusin & focus (and focusout & blur)
			// so we need to coordinate setup & teardown parts between those events.
			// Use `delegateType` as the key as `type` is already used by `leverageNative`.
			if ( !attaches ) {
				if ( document.documentMode ) {
					this.addEventListener( delegateType, focusMappedHandler );
				} else {
					doc.addEventListener( type, focusMappedHandler, true );
				}
			}
			dataPriv.set( dataHolder, delegateType, ( attaches || 0 ) + 1 );
		},
		teardown: function() {
			var doc = this.ownerDocument || this.document || this,
				dataHolder = document.documentMode ? this : doc,
				attaches = dataPriv.get( dataHolder, delegateType ) - 1;

			if ( !attaches ) {
				if ( document.documentMode ) {
					this.removeEventListener( delegateType, focusMappedHandler );
				} else {
					doc.removeEventListener( type, focusMappedHandler, true );
				}
				dataPriv.remove( dataHolder, delegateType );
			} else {
				dataPriv.set( dataHolder, delegateType, attaches );
			}
		}
	};
} );

// Create mouseenter/leave events using mouseover/out and event-time checks
// so that event delegation works in jQuery.
// Do the same for pointerenter/pointerleave and pointerover/pointerout
//
// Support: Safari 7 only
// Safari sends mouseenter too often; see:
// https://bugs.chromium.org/p/chromium/issues/detail?id=470258
// for the description of the bug (it existed in older Chrome versions as well).
jQuery.each( {
	mouseenter: "mouseover",
	mouseleave: "mouseout",
	pointerenter: "pointerover",
	pointerleave: "pointerout"
}, function( orig, fix ) {
	jQuery.event.special[ orig ] = {
		delegateType: fix,
		bindType: fix,

		handle: function( event ) {
			var ret,
				target = this,
				related = event.relatedTarget,
				handleObj = event.handleObj;

			// For mouseenter/leave call the handler if related is outside the target.
			// NB: No relatedTarget if the mouse left/entered the browser window
			if ( !related || ( related !== target && !jQuery.contains( target, related ) ) ) {
				event.type = handleObj.origType;
				ret = handleObj.handler.apply( this, arguments );
				event.type = fix;
			}
			return ret;
		}
	};
} );

jQuery.fn.extend( {

	on: function( types, selector, data, fn ) {
		return on( this, types, selector, data, fn );
	},
	one: function( types, selector, data, fn ) {
		return on( this, types, selector, data, fn, 1 );
	},
	off: function( types, selector, fn ) {
		var handleObj, type;
		if ( types && types.preventDefault && types.handleObj ) {

			// ( event )  dispatched jQuery.Event
			handleObj = types.handleObj;
			jQuery( types.delegateTarget ).off(
				handleObj.namespace ?
					handleObj.origType + "." + handleObj.namespace :
					handleObj.origType,
				handleObj.selector,
				handleObj.handler
			);
			return this;
		}
		if ( typeof types === "object" ) {

			// ( types-object [, selector] )
			for ( type in types ) {
				this.off( type, selector, types[ type ] );
			}
			return this;
		}
		if ( selector === false || typeof selector === "function" ) {

			// ( types [, fn] )
			fn = selector;
			selector = undefined;
		}
		if ( fn === false ) {
			fn = returnFalse;
		}
		return this.each( function() {
			jQuery.event.remove( this, types, fn, selector );
		} );
	}
} );


var

	// Support: IE <=10 - 11, Edge 12 - 13 only
	// In IE/Edge using regex groups here causes severe slowdowns.
	// See https://connect.microsoft.com/IE/feedback/details/1736512/
	rnoInnerhtml = /<script|<style|<link/i,

	// checked="checked" or checked
	rchecked = /checked\s*(?:[^=]|=\s*.checked.)/i,

	rcleanScript = /^\s*<!\[CDATA\[|\]\]>\s*$/g;

// Prefer a tbody over its parent table for containing new rows
function manipulationTarget( elem, content ) {
	if ( nodeName( elem, "table" ) &&
		nodeName( content.nodeType !== 11 ? content : content.firstChild, "tr" ) ) {

		return jQuery( elem ).children( "tbody" )[ 0 ] || elem;
	}

	return elem;
}

// Replace/restore the type attribute of script elements for safe DOM manipulation
function disableScript( elem ) {
	elem.type = ( elem.getAttribute( "type" ) !== null ) + "/" + elem.type;
	return elem;
}
function restoreScript( elem ) {
	if ( ( elem.type || "" ).slice( 0, 5 ) === "true/" ) {
		elem.type = elem.type.slice( 5 );
	} else {
		elem.removeAttribute( "type" );
	}

	return elem;
}

function cloneCopyEvent( src, dest ) {
	var i, l, type, pdataOld, udataOld, udataCur, events;

	if ( dest.nodeType !== 1 ) {
		return;
	}

	// 1. Copy private data: events, handlers, etc.
	if ( dataPriv.hasData( src ) ) {
		pdataOld = dataPriv.get( src );
		events = pdataOld.events;

		if ( events ) {
			dataPriv.remove( dest, "handle events" );

			for ( type in events ) {
				for ( i = 0, l = events[ type ].length; i < l; i++ ) {
					jQuery.event.add( dest, type, events[ type ][ i ] );
				}
			}
		}
	}

	// 2. Copy user data
	if ( dataUser.hasData( src ) ) {
		udataOld = dataUser.access( src );
		udataCur = jQuery.extend( {}, udataOld );

		dataUser.set( dest, udataCur );
	}
}

// Fix IE bugs, see support tests
function fixInput( src, dest ) {
	var nodeName = dest.nodeName.toLowerCase();

	// Fails to persist the checked state of a cloned checkbox or radio button.
	if ( nodeName === "input" && rcheckableType.test( src.type ) ) {
		dest.checked = src.checked;

	// Fails to return the selected option to the default selected state when cloning options
	} else if ( nodeName === "input" || nodeName === "textarea" ) {
		dest.defaultValue = src.defaultValue;
	}
}

function domManip( collection, args, callback, ignored ) {

	// Flatten any nested arrays
	args = flat( args );

	var fragment, first, scripts, hasScripts, node, doc,
		i = 0,
		l = collection.length,
		iNoClone = l - 1,
		value = args[ 0 ],
		valueIsFunction = isFunction( value );

	// We can't cloneNode fragments that contain checked, in WebKit
	if ( valueIsFunction ||
			( l > 1 && typeof value === "string" &&
				!support.checkClone && rchecked.test( value ) ) ) {
		return collection.each( function( index ) {
			var self = collection.eq( index );
			if ( valueIsFunction ) {
				args[ 0 ] = value.call( this, index, self.html() );
			}
			domManip( self, args, callback, ignored );
		} );
	}

	if ( l ) {
		fragment = buildFragment( args, collection[ 0 ].ownerDocument, false, collection, ignored );
		first = fragment.firstChild;

		if ( fragment.childNodes.length === 1 ) {
			fragment = first;
		}

		// Require either new content or an interest in ignored elements to invoke the callback
		if ( first || ignored ) {
			scripts = jQuery.map( getAll( fragment, "script" ), disableScript );
			hasScripts = scripts.length;

			// Use the original fragment for the last item
			// instead of the first because it can end up
			// being emptied incorrectly in certain situations (trac-8070).
			for ( ; i < l; i++ ) {
				node = fragment;

				if ( i !== iNoClone ) {
					node = jQuery.clone( node, true, true );

					// Keep references to cloned scripts for later restoration
					if ( hasScripts ) {

						// Support: Android <=4.0 only, PhantomJS 1 only
						// push.apply(_, arraylike) throws on ancient WebKit
						jQuery.merge( scripts, getAll( node, "script" ) );
					}
				}

				callback.call( collection[ i ], node, i );
			}

			if ( hasScripts ) {
				doc = scripts[ scripts.length - 1 ].ownerDocument;

				// Re-enable scripts
				jQuery.map( scripts, restoreScript );

				// Evaluate executable scripts on first document insertion
				for ( i = 0; i < hasScripts; i++ ) {
					node = scripts[ i ];
					if ( rscriptType.test( node.type || "" ) &&
						!dataPriv.access( node, "globalEval" ) &&
						jQuery.contains( doc, node ) ) {

						if ( node.src && ( node.type || "" ).toLowerCase()  !== "module" ) {

							// Optional AJAX dependency, but won't run scripts if not present
							if ( jQuery._evalUrl && !node.noModule ) {
								jQuery._evalUrl( node.src, {
									nonce: node.nonce || node.getAttribute( "nonce" )
								}, doc );
							}
						} else {

							// Unwrap a CDATA section containing script contents. This shouldn't be
							// needed as in XML documents they're already not visible when
							// inspecting element contents and in HTML documents they have no
							// meaning but we're preserving that logic for backwards compatibility.
							// This will be removed completely in 4.0. See gh-4904.
							DOMEval( node.textContent.replace( rcleanScript, "" ), node, doc );
						}
					}
				}
			}
		}
	}

	return collection;
}

function remove( elem, selector, keepData ) {
	var node,
		nodes = selector ? jQuery.filter( selector, elem ) : elem,
		i = 0;

	for ( ; ( node = nodes[ i ] ) != null; i++ ) {
		if ( !keepData && node.nodeType === 1 ) {
			jQuery.cleanData( getAll( node ) );
		}

		if ( node.parentNode ) {
			if ( keepData && isAttached( node ) ) {
				setGlobalEval( getAll( node, "script" ) );
			}
			node.parentNode.removeChild( node );
		}
	}

	return elem;
}

jQuery.extend( {
	htmlPrefilter: function( html ) {
		return html;
	},

	clone: function( elem, dataAndEvents, deepDataAndEvents ) {
		var i, l, srcElements, destElements,
			clone = elem.cloneNode( true ),
			inPage = isAttached( elem );

		// Fix IE cloning issues
		if ( !support.noCloneChecked && ( elem.nodeType === 1 || elem.nodeType === 11 ) &&
				!jQuery.isXMLDoc( elem ) ) {

			// We eschew jQuery#find here for performance reasons:
			// https://jsperf.com/getall-vs-sizzle/2
			destElements = getAll( clone );
			srcElements = getAll( elem );

			for ( i = 0, l = srcElements.length; i < l; i++ ) {
				fixInput( srcElements[ i ], destElements[ i ] );
			}
		}

		// Copy the events from the original to the clone
		if ( dataAndEvents ) {
			if ( deepDataAndEvents ) {
				srcElements = srcElements || getAll( elem );
				destElements = destElements || getAll( clone );

				for ( i = 0, l = srcElements.length; i < l; i++ ) {
					cloneCopyEvent( srcElements[ i ], destElements[ i ] );
				}
			} else {
				cloneCopyEvent( elem, clone );
			}
		}

		// Preserve script evaluation history
		destElements = getAll( clone, "script" );
		if ( destElements.length > 0 ) {
			setGlobalEval( destElements, !inPage && getAll( elem, "script" ) );
		}

		// Return the cloned set
		return clone;
	},

	cleanData: function( elems ) {
		var data, elem, type,
			special = jQuery.event.special,
			i = 0;

		for ( ; ( elem = elems[ i ] ) !== undefined; i++ ) {
			if ( acceptData( elem ) ) {
				if ( ( data = elem[ dataPriv.expando ] ) ) {
					if ( data.events ) {
						for ( type in data.events ) {
							if ( special[ type ] ) {
								jQuery.event.remove( elem, type );

							// This is a shortcut to avoid jQuery.event.remove's overhead
							} else {
								jQuery.removeEvent( elem, type, data.handle );
							}
						}
					}

					// Support: Chrome <=35 - 45+
					// Assign undefined instead of using delete, see Data#remove
					elem[ dataPriv.expando ] = undefined;
				}
				if ( elem[ dataUser.expando ] ) {

					// Support: Chrome <=35 - 45+
					// Assign undefined instead of using delete, see Data#remove
					elem[ dataUser.expando ] = undefined;
				}
			}
		}
	}
} );

jQuery.fn.extend( {
	detach: function( selector ) {
		return remove( this, selector, true );
	},

	remove: function( selector ) {
		return remove( this, selector );
	},

	text: function( value ) {
		return access( this, function( value ) {
			return value === undefined ?
				jQuery.text( this ) :
				this.empty().each( function() {
					if ( this.nodeType === 1 || this.nodeType === 11 || this.nodeType === 9 ) {
						this.textContent = value;
					}
				} );
		}, null, value, arguments.length );
	},

	append: function() {
		return domManip( this, arguments, function( elem ) {
			if ( this.nodeType === 1 || this.nodeType === 11 || this.nodeType === 9 ) {
				var target = manipulationTarget( this, elem );
				target.appendChild( elem );
			}
		} );
	},

	prepend: function() {
		return domManip( this, arguments, function( elem ) {
			if ( this.nodeType === 1 || this.nodeType === 11 || this.nodeType === 9 ) {
				var target = manipulationTarget( this, elem );
				target.insertBefore( elem, target.firstChild );
			}
		} );
	},

	before: function() {
		return domManip( this, arguments, function( elem ) {
			if ( this.parentNode ) {
				this.parentNode.insertBefore( elem, this );
			}
		} );
	},

	after: function() {
		return domManip( this, arguments, function( elem ) {
			if ( this.parentNode ) {
				this.parentNode.insertBefore( elem, this.nextSibling );
			}
		} );
	},

	empty: function() {
		var elem,
			i = 0;

		for ( ; ( elem = this[ i ] ) != null; i++ ) {
			if ( elem.nodeType === 1 ) {

				// Prevent memory leaks
				jQuery.cleanData( getAll( elem, false ) );

				// Remove any remaining nodes
				elem.textContent = "";
			}
		}

		return this;
	},

	clone: function( dataAndEvents, deepDataAndEvents ) {
		dataAndEvents = dataAndEvents == null ? false : dataAndEvents;
		deepDataAndEvents = deepDataAndEvents == null ? dataAndEvents : deepDataAndEvents;

		return this.map( function() {
			return jQuery.clone( this, dataAndEvents, deepDataAndEvents );
		} );
	},

	html: function( value ) {
		return access( this, function( value ) {
			var elem = this[ 0 ] || {},
				i = 0,
				l = this.length;

			if ( value === undefined && elem.nodeType === 1 ) {
				return elem.innerHTML;
			}

			// See if we can take a shortcut and just use innerHTML
			if ( typeof value === "string" && !rnoInnerhtml.test( value ) &&
				!wrapMap[ ( rtagName.exec( value ) || [ "", "" ] )[ 1 ].toLowerCase() ] ) {

				value = jQuery.htmlPrefilter( value );

				try {
					for ( ; i < l; i++ ) {
						elem = this[ i ] || {};

						// Remove element nodes and prevent memory leaks
						if ( elem.nodeType === 1 ) {
							jQuery.cleanData( getAll( elem, false ) );
							elem.innerHTML = value;
						}
					}

					elem = 0;

				// If using innerHTML throws an exception, use the fallback method
				} catch ( e ) {}
			}

			if ( elem ) {
				this.empty().append( value );
			}
		}, null, value, arguments.length );
	},

	replaceWith: function() {
		var ignored = [];

		// Make the changes, replacing each non-ignored context element with the new content
		return domManip( this, arguments, function( elem ) {
			var parent = this.parentNode;

			if ( jQuery.inArray( this, ignored ) < 0 ) {
				jQuery.cleanData( getAll( this ) );
				if ( parent ) {
					parent.replaceChild( elem, this );
				}
			}

		// Force callback invocation
		}, ignored );
	}
} );

jQuery.each( {
	appendTo: "append",
	prependTo: "prepend",
	insertBefore: "before",
	insertAfter: "after",
	replaceAll: "replaceWith"
}, function( name, original ) {
	jQuery.fn[ name ] = function( selector ) {
		var elems,
			ret = [],
			insert = jQuery( selector ),
			last = insert.length - 1,
			i = 0;

		for ( ; i <= last; i++ ) {
			elems = i === last ? this : this.clone( true );
			jQuery( insert[ i ] )[ original ]( elems );

			// Support: Android <=4.0 only, PhantomJS 1 only
			// .get() because push.apply(_, arraylike) throws on ancient WebKit
			push.apply( ret, elems.get() );
		}

		return this.pushStack( ret );
	};
} );
var rnumnonpx = new RegExp( "^(" + pnum + ")(?!px)[a-z%]+$", "i" );

var rcustomProp = /^--/;


var getStyles = function( elem ) {

		// Support: IE <=11 only, Firefox <=30 (trac-15098, trac-14150)
		// IE throws on elements created in popups
		// FF meanwhile throws on frame elements through "defaultView.getComputedStyle"
		var view = elem.ownerDocument.defaultView;

		if ( !view || !view.opener ) {
			view = window;
		}

		return view.getComputedStyle( elem );
	};

var swap = function( elem, options, callback ) {
	var ret, name,
		old = {};

	// Remember the old values, and insert the new ones
	for ( name in options ) {
		old[ name ] = elem.style[ name ];
		elem.style[ name ] = options[ name ];
	}

	ret = callback.call( elem );

	// Revert the old values
	for ( name in options ) {
		elem.style[ name ] = old[ name ];
	}

	return ret;
};


var rboxStyle = new RegExp( cssExpand.join( "|" ), "i" );



( function() {

	// Executing both pixelPosition & boxSizingReliable tests require only one layout
	// so they're executed at the same time to save the second computation.
	function computeStyleTests() {

		// This is a singleton, we need to execute it only once
		if ( !div ) {
			return;
		}

		container.style.cssText = "position:absolute;left:-11111px;width:60px;" +
			"margin-top:1px;padding:0;border:0";
		div.style.cssText =
			"position:relative;display:block;box-sizing:border-box;overflow:scroll;" +
			"margin:auto;border:1px;padding:1px;" +
			"width:60%;top:1%";
		documentElement.appendChild( container ).appendChild( div );

		var divStyle = window.getComputedStyle( div );
		pixelPositionVal = divStyle.top !== "1%";

		// Support: Android 4.0 - 4.3 only, Firefox <=3 - 44
		reliableMarginLeftVal = roundPixelMeasures( divStyle.marginLeft ) === 12;

		// Support: Android 4.0 - 4.3 only, Safari <=9.1 - 10.1, iOS <=7.0 - 9.3
		// Some styles come back with percentage values, even though they shouldn't
		div.style.right = "60%";
		pixelBoxStylesVal = roundPixelMeasures( divStyle.right ) === 36;

		// Support: IE 9 - 11 only
		// Detect misreporting of content dimensions for box-sizing:border-box elements
		boxSizingReliableVal = roundPixelMeasures( divStyle.width ) === 36;

		// Support: IE 9 only
		// Detect overflow:scroll screwiness (gh-3699)
		// Support: Chrome <=64
		// Don't get tricked when zoom affects offsetWidth (gh-4029)
		div.style.position = "absolute";
		scrollboxSizeVal = roundPixelMeasures( div.offsetWidth / 3 ) === 12;

		documentElement.removeChild( container );

		// Nullify the div so it wouldn't be stored in the memory and
		// it will also be a sign that checks already performed
		div = null;
	}

	function roundPixelMeasures( measure ) {
		return Math.round( parseFloat( measure ) );
	}

	var pixelPositionVal, boxSizingReliableVal, scrollboxSizeVal, pixelBoxStylesVal,
		reliableTrDimensionsVal, reliableMarginLeftVal,
		container = document.createElement( "div" ),
		div = document.createElement( "div" );

	// Finish early in limited (non-browser) environments
	if ( !div.style ) {
		return;
	}

	// Support: IE <=9 - 11 only
	// Style of cloned element affects source element cloned (trac-8908)
	div.style.backgroundClip = "content-box";
	div.cloneNode( true ).style.backgroundClip = "";
	support.clearCloneStyle = div.style.backgroundClip === "content-box";

	jQuery.extend( support, {
		boxSizingReliable: function() {
			computeStyleTests();
			return boxSizingReliableVal;
		},
		pixelBoxStyles: function() {
			computeStyleTests();
			return pixelBoxStylesVal;
		},
		pixelPosition: function() {
			computeStyleTests();
			return pixelPositionVal;
		},
		reliableMarginLeft: function() {
			computeStyleTests();
			return reliableMarginLeftVal;
		},
		scrollboxSize: function() {
			computeStyleTests();
			return scrollboxSizeVal;
		},

		// Support: IE 9 - 11+, Edge 15 - 18+
		// IE/Edge misreport `getComputedStyle` of table rows with width/height
		// set in CSS while `offset*` properties report correct values.
		// Behavior in IE 9 is more subtle than in newer versions & it passes
		// some versions of this test; make sure not to make it pass there!
		//
		// Support: Firefox 70+
		// Only Firefox includes border widths
		// in computed dimensions. (gh-4529)
		reliableTrDimensions: function() {
			var table, tr, trChild, trStyle;
			if ( reliableTrDimensionsVal == null ) {
				table = document.createElement( "table" );
				tr = document.createElement( "tr" );
				trChild = document.createElement( "div" );

				table.style.cssText = "position:absolute;left:-11111px;border-collapse:separate";
				tr.style.cssText = "box-sizing:content-box;border:1px solid";

				// Support: Chrome 86+
				// Height set through cssText does not get applied.
				// Computed height then comes back as 0.
				tr.style.height = "1px";
				trChild.style.height = "9px";

				// Support: Android 8 Chrome 86+
				// In our bodyBackground.html iframe,
				// display for all div elements is set to "inline",
				// which causes a problem only in Android 8 Chrome 86.
				// Ensuring the div is `display: block`
				// gets around this issue.
				trChild.style.display = "block";

				documentElement
					.appendChild( table )
					.appendChild( tr )
					.appendChild( trChild );

				trStyle = window.getComputedStyle( tr );
				reliableTrDimensionsVal = ( parseInt( trStyle.height, 10 ) +
					parseInt( trStyle.borderTopWidth, 10 ) +
					parseInt( trStyle.borderBottomWidth, 10 ) ) === tr.offsetHeight;

				documentElement.removeChild( table );
			}
			return reliableTrDimensionsVal;
		}
	} );
} )();


function curCSS( elem, name, computed ) {
	var width, minWidth, maxWidth, ret,
		isCustomProp = rcustomProp.test( name ),

		// Support: Firefox 51+
		// Retrieving style before computed somehow
		// fixes an issue with getting wrong values
		// on detached elements
		style = elem.style;

	computed = computed || getStyles( elem );

	// getPropertyValue is needed for:
	//   .css('filter') (IE 9 only, trac-12537)
	//   .css('--customProperty) (gh-3144)
	if ( computed ) {

		// Support: IE <=9 - 11+
		// IE only supports `"float"` in `getPropertyValue`; in computed styles
		// it's only available as `"cssFloat"`. We no longer modify properties
		// sent to `.css()` apart from camelCasing, so we need to check both.
		// Normally, this would create difference in behavior: if
		// `getPropertyValue` returns an empty string, the value returned
		// by `.css()` would be `undefined`. This is usually the case for
		// disconnected elements. However, in IE even disconnected elements
		// with no styles return `"none"` for `getPropertyValue( "float" )`
		ret = computed.getPropertyValue( name ) || computed[ name ];

		if ( isCustomProp && ret ) {

			// Support: Firefox 105+, Chrome <=105+
			// Spec requires trimming whitespace for custom properties (gh-4926).
			// Firefox only trims leading whitespace. Chrome just collapses
			// both leading & trailing whitespace to a single space.
			//
			// Fall back to `undefined` if empty string returned.
			// This collapses a missing definition with property defined
			// and set to an empty string but there's no standard API
			// allowing us to differentiate them without a performance penalty
			// and returning `undefined` aligns with older jQuery.
			//
			// rtrimCSS treats U+000D CARRIAGE RETURN and U+000C FORM FEED
			// as whitespace while CSS does not, but this is not a problem
			// because CSS preprocessing replaces them with U+000A LINE FEED
			// (which *is* CSS whitespace)
			// https://www.w3.org/TR/css-syntax-3/#input-preprocessing
			ret = ret.replace( rtrimCSS, "$1" ) || undefined;
		}

		if ( ret === "" && !isAttached( elem ) ) {
			ret = jQuery.style( elem, name );
		}

		// A tribute to the "awesome hack by Dean Edwards"
		// Android Browser returns percentage for some values,
		// but width seems to be reliably pixels.
		// This is against the CSSOM draft spec:
		// https://drafts.csswg.org/cssom/#resolved-values
		if ( !support.pixelBoxStyles() && rnumnonpx.test( ret ) && rboxStyle.test( name ) ) {

			// Remember the original values
			width = style.width;
			minWidth = style.minWidth;
			maxWidth = style.maxWidth;

			// Put in the new values to get a computed value out
			style.minWidth = style.maxWidth = style.width = ret;
			ret = computed.width;

			// Revert the changed values
			style.width = width;
			style.minWidth = minWidth;
			style.maxWidth = maxWidth;
		}
	}

	return ret !== undefined ?

		// Support: IE <=9 - 11 only
		// IE returns zIndex value as an integer.
		ret + "" :
		ret;
}


function addGetHookIf( conditionFn, hookFn ) {

	// Define the hook, we'll check on the first run if it's really needed.
	return {
		get: function() {
			if ( conditionFn() ) {

				// Hook not needed (or it's not possible to use it due
				// to missing dependency), remove it.
				delete this.get;
				return;
			}

			// Hook needed; redefine it so that the support test is not executed again.
			return ( this.get = hookFn ).apply( this, arguments );
		}
	};
}


var cssPrefixes = [ "Webkit", "Moz", "ms" ],
	emptyStyle = document.createElement( "div" ).style,
	vendorProps = {};

// Return a vendor-prefixed property or undefined
function vendorPropName( name ) {

	// Check for vendor prefixed names
	var capName = name[ 0 ].toUpperCase() + name.slice( 1 ),
		i = cssPrefixes.length;

	while ( i-- ) {
		name = cssPrefixes[ i ] + capName;
		if ( name in emptyStyle ) {
			return name;
		}
	}
}

// Return a potentially-mapped jQuery.cssProps or vendor prefixed property
function finalPropName( name ) {
	var final = jQuery.cssProps[ name ] || vendorProps[ name ];

	if ( final ) {
		return final;
	}
	if ( name in emptyStyle ) {
		return name;
	}
	return vendorProps[ name ] = vendorPropName( name ) || name;
}


var

	// Swappable if display is none or starts with table
	// except "table", "table-cell", or "table-caption"
	// See here for display values: https://developer.mozilla.org/en-US/docs/CSS/display
	rdisplayswap = /^(none|table(?!-c[ea]).+)/,
	cssShow = { position: "absolute", visibility: "hidden", display: "block" },
	cssNormalTransform = {
		letterSpacing: "0",
		fontWeight: "400"
	};

function setPositiveNumber( _elem, value, subtract ) {

	// Any relative (+/-) values have already been
	// normalized at this point
	var matches = rcssNum.exec( value );
	return matches ?

		// Guard against undefined "subtract", e.g., when used as in cssHooks
		Math.max( 0, matches[ 2 ] - ( subtract || 0 ) ) + ( matches[ 3 ] || "px" ) :
		value;
}

function boxModelAdjustment( elem, dimension, box, isBorderBox, styles, computedVal ) {
	var i = dimension === "width" ? 1 : 0,
		extra = 0,
		delta = 0,
		marginDelta = 0;

	// Adjustment may not be necessary
	if ( box === ( isBorderBox ? "border" : "content" ) ) {
		return 0;
	}

	for ( ; i < 4; i += 2 ) {

		// Both box models exclude margin
		// Count margin delta separately to only add it after scroll gutter adjustment.
		// This is needed to make negative margins work with `outerHeight( true )` (gh-3982).
		if ( box === "margin" ) {
			marginDelta += jQuery.css( elem, box + cssExpand[ i ], true, styles );
		}

		// If we get here with a content-box, we're seeking "padding" or "border" or "margin"
		if ( !isBorderBox ) {

			// Add padding
			delta += jQuery.css( elem, "padding" + cssExpand[ i ], true, styles );

			// For "border" or "margin", add border
			if ( box !== "padding" ) {
				delta += jQuery.css( elem, "border" + cssExpand[ i ] + "Width", true, styles );

			// But still keep track of it otherwise
			} else {
				extra += jQuery.css( elem, "border" + cssExpand[ i ] + "Width", true, styles );
			}

		// If we get here with a border-box (content + padding + border), we're seeking "content" or
		// "padding" or "margin"
		} else {

			// For "content", subtract padding
			if ( box === "content" ) {
				delta -= jQuery.css( elem, "padding" + cssExpand[ i ], true, styles );
			}

			// For "content" or "padding", subtract border
			if ( box !== "margin" ) {
				delta -= jQuery.css( elem, "border" + cssExpand[ i ] + "Width", true, styles );
			}
		}
	}

	// Account for positive content-box scroll gutter when requested by providing computedVal
	if ( !isBorderBox && computedVal >= 0 ) {

		// offsetWidth/offsetHeight is a rounded sum of content, padding, scroll gutter, and border
		// Assuming integer scroll gutter, subtract the rest and round down
		delta += Math.max( 0, Math.ceil(
			elem[ "offset" + dimension[ 0 ].toUpperCase() + dimension.slice( 1 ) ] -
			computedVal -
			delta -
			extra -
			0.5

		// If offsetWidth/offsetHeight is unknown, then we can't determine content-box scroll gutter
		// Use an explicit zero to avoid NaN (gh-3964)
		) ) || 0;
	}

	return delta + marginDelta;
}

function getWidthOrHeight( elem, dimension, extra ) {

	// Start with computed style
	var styles = getStyles( elem ),

		// To avoid forcing a reflow, only fetch boxSizing if we need it (gh-4322).
		// Fake content-box until we know it's needed to know the true value.
		boxSizingNeeded = !support.boxSizingReliable() || extra,
		isBorderBox = boxSizingNeeded &&
			jQuery.css( elem, "boxSizing", false, styles ) === "border-box",
		valueIsBorderBox = isBorderBox,

		val = curCSS( elem, dimension, styles ),
		offsetProp = "offset" + dimension[ 0 ].toUpperCase() + dimension.slice( 1 );

	// Support: Firefox <=54
	// Return a confounding non-pixel value or feign ignorance, as appropriate.
	if ( rnumnonpx.test( val ) ) {
		if ( !extra ) {
			return val;
		}
		val = "auto";
	}


	// Support: IE 9 - 11 only
	// Use offsetWidth/offsetHeight for when box sizing is unreliable.
	// In those cases, the computed value can be trusted to be border-box.
	if ( ( !support.boxSizingReliable() && isBorderBox ||

		// Support: IE 10 - 11+, Edge 15 - 18+
		// IE/Edge misreport `getComputedStyle` of table rows with width/height
		// set in CSS while `offset*` properties report correct values.
		// Interestingly, in some cases IE 9 doesn't suffer from this issue.
		!support.reliableTrDimensions() && nodeName( elem, "tr" ) ||

		// Fall back to offsetWidth/offsetHeight when value is "auto"
		// This happens for inline elements with no explicit setting (gh-3571)
		val === "auto" ||

		// Support: Android <=4.1 - 4.3 only
		// Also use offsetWidth/offsetHeight for misreported inline dimensions (gh-3602)
		!parseFloat( val ) && jQuery.css( elem, "display", false, styles ) === "inline" ) &&

		// Make sure the element is visible & connected
		elem.getClientRects().length ) {

		isBorderBox = jQuery.css( elem, "boxSizing", false, styles ) === "border-box";

		// Where available, offsetWidth/offsetHeight approximate border box dimensions.
		// Where not available (e.g., SVG), assume unreliable box-sizing and interpret the
		// retrieved value as a content box dimension.
		valueIsBorderBox = offsetProp in elem;
		if ( valueIsBorderBox ) {
			val = elem[ offsetProp ];
		}
	}

	// Normalize "" and auto
	val = parseFloat( val ) || 0;

	// Adjust for the element's box model
	return ( val +
		boxModelAdjustment(
			elem,
			dimension,
			extra || ( isBorderBox ? "border" : "content" ),
			valueIsBorderBox,
			styles,

			// Provide the current computed size to request scroll gutter calculation (gh-3589)
			val
		)
	) + "px";
}

jQuery.extend( {

	// Add in style property hooks for overriding the default
	// behavior of getting and setting a style property
	cssHooks: {
		opacity: {
			get: function( elem, computed ) {
				if ( computed ) {

					// We should always get a number back from opacity
					var ret = curCSS( elem, "opacity" );
					return ret === "" ? "1" : ret;
				}
			}
		}
	},

	// Don't automatically add "px" to these possibly-unitless properties
	cssNumber: {
		animationIterationCount: true,
		aspectRatio: true,
		borderImageSlice: true,
		columnCount: true,
		flexGrow: true,
		flexShrink: true,
		fontWeight: true,
		gridArea: true,
		gridColumn: true,
		gridColumnEnd: true,
		gridColumnStart: true,
		gridRow: true,
		gridRowEnd: true,
		gridRowStart: true,
		lineHeight: true,
		opacity: true,
		order: true,
		orphans: true,
		scale: true,
		widows: true,
		zIndex: true,
		zoom: true,

		// SVG-related
		fillOpacity: true,
		floodOpacity: true,
		stopOpacity: true,
		strokeMiterlimit: true,
		strokeOpacity: true
	},

	// Add in properties whose names you wish to fix before
	// setting or getting the value
	cssProps: {},

	// Get and set the style property on a DOM Node
	style: function( elem, name, value, extra ) {

		// Don't set styles on text and comment nodes
		if ( !elem || elem.nodeType === 3 || elem.nodeType === 8 || !elem.style ) {
			return;
		}

		// Make sure that we're working with the right name
		var ret, type, hooks,
			origName = camelCase( name ),
			isCustomProp = rcustomProp.test( name ),
			style = elem.style;

		// Make sure that we're working with the right name. We don't
		// want to query the value if it is a CSS custom property
		// since they are user-defined.
		if ( !isCustomProp ) {
			name = finalPropName( origName );
		}

		// Gets hook for the prefixed version, then unprefixed version
		hooks = jQuery.cssHooks[ name ] || jQuery.cssHooks[ origName ];

		// Check if we're setting a value
		if ( value !== undefined ) {
			type = typeof value;

			// Convert "+=" or "-=" to relative numbers (trac-7345)
			if ( type === "string" && ( ret = rcssNum.exec( value ) ) && ret[ 1 ] ) {
				value = adjustCSS( elem, name, ret );

				// Fixes bug trac-9237
				type = "number";
			}

			// Make sure that null and NaN values aren't set (trac-7116)
			if ( value == null || value !== value ) {
				return;
			}

			// If a number was passed in, add the unit (except for certain CSS properties)
			// The isCustomProp check can be removed in jQuery 4.0 when we only auto-append
			// "px" to a few hardcoded values.
			if ( type === "number" && !isCustomProp ) {
				value += ret && ret[ 3 ] || ( jQuery.cssNumber[ origName ] ? "" : "px" );
			}

			// background-* props affect original clone's values
			if ( !support.clearCloneStyle && value === "" && name.indexOf( "background" ) === 0 ) {
				style[ name ] = "inherit";
			}

			// If a hook was provided, use that value, otherwise just set the specified value
			if ( !hooks || !( "set" in hooks ) ||
				( value = hooks.set( elem, value, extra ) ) !== undefined ) {

				if ( isCustomProp ) {
					style.setProperty( name, value );
				} else {
					style[ name ] = value;
				}
			}

		} else {

			// If a hook was provided get the non-computed value from there
			if ( hooks && "get" in hooks &&
				( ret = hooks.get( elem, false, extra ) ) !== undefined ) {

				return ret;
			}

			// Otherwise just get the value from the style object
			return style[ name ];
		}
	},

	css: function( elem, name, extra, styles ) {
		var val, num, hooks,
			origName = camelCase( name ),
			isCustomProp = rcustomProp.test( name );

		// Make sure that we're working with the right name. We don't
		// want to modify the value if it is a CSS custom property
		// since they are user-defined.
		if ( !isCustomProp ) {
			name = finalPropName( origName );
		}

		// Try prefixed name followed by the unprefixed name
		hooks = jQuery.cssHooks[ name ] || jQuery.cssHooks[ origName ];

		// If a hook was provided get the computed value from there
		if ( hooks && "get" in hooks ) {
			val = hooks.get( elem, true, extra );
		}

		// Otherwise, if a way to get the computed value exists, use that
		if ( val === undefined ) {
			val = curCSS( elem, name, styles );
		}

		// Convert "normal" to computed value
		if ( val === "normal" && name in cssNormalTransform ) {
			val = cssNormalTransform[ name ];
		}

		// Make numeric if forced or a qualifier was provided and val looks numeric
		if ( extra === "" || extra ) {
			num = parseFloat( val );
			return extra === true || isFinite( num ) ? num || 0 : val;
		}

		return val;
	}
} );

jQuery.each( [ "height", "width" ], function( _i, dimension ) {
	jQuery.cssHooks[ dimension ] = {
		get: function( elem, computed, extra ) {
			if ( computed ) {

				// Certain elements can have dimension info if we invisibly show them
				// but it must have a current display style that would benefit
				return rdisplayswap.test( jQuery.css( elem, "display" ) ) &&

					// Support: Safari 8+
					// Table columns in Safari have non-zero offsetWidth & zero
					// getBoundingClientRect().width unless display is changed.
					// Support: IE <=11 only
					// Running getBoundingClientRect on a disconnected node
					// in IE throws an error.
					( !elem.getClientRects().length || !elem.getBoundingClientRect().width ) ?
					swap( elem, cssShow, function() {
						return getWidthOrHeight( elem, dimension, extra );
					} ) :
					getWidthOrHeight( elem, dimension, extra );
			}
		},

		set: function( elem, value, extra ) {
			var matches,
				styles = getStyles( elem ),

				// Only read styles.position if the test has a chance to fail
				// to avoid forcing a reflow.
				scrollboxSizeBuggy = !support.scrollboxSize() &&
					styles.position === "absolute",

				// To avoid forcing a reflow, only fetch boxSizing if we need it (gh-3991)
				boxSizingNeeded = scrollboxSizeBuggy || extra,
				isBorderBox = boxSizingNeeded &&
					jQuery.css( elem, "boxSizing", false, styles ) === "border-box",
				subtract = extra ?
					boxModelAdjustment(
						elem,
						dimension,
						extra,
						isBorderBox,
						styles
					) :
					0;

			// Account for unreliable border-box dimensions by comparing offset* to computed and
			// faking a content-box to get border and padding (gh-3699)
			if ( isBorderBox && scrollboxSizeBuggy ) {
				subtract -= Math.ceil(
					elem[ "offset" + dimension[ 0 ].toUpperCase() + dimension.slice( 1 ) ] -
					parseFloat( styles[ dimension ] ) -
					boxModelAdjustment( elem, dimension, "border", false, styles ) -
					0.5
				);
			}

			// Convert to pixels if value adjustment is needed
			if ( subtract && ( matches = rcssNum.exec( value ) ) &&
				( matches[ 3 ] || "px" ) !== "px" ) {

				elem.style[ dimension ] = value;
				value = jQuery.css( elem, dimension );
			}

			return setPositiveNumber( elem, value, subtract );
		}
	};
} );

jQuery.cssHooks.marginLeft = addGetHookIf( support.reliableMarginLeft,
	function( elem, computed ) {
		if ( computed ) {
			return ( parseFloat( curCSS( elem, "marginLeft" ) ) ||
				elem.getBoundingClientRect().left -
					swap( elem, { marginLeft: 0 }, function() {
						return elem.getBoundingClientRect().left;
					} )
			) + "px";
		}
	}
);

// These hooks are used by animate to expand properties
jQuery.each( {
	margin: "",
	padding: "",
	border: "Width"
}, function( prefix, suffix ) {
	jQuery.cssHooks[ prefix + suffix ] = {
		expand: function( value ) {
			var i = 0,
				expanded = {},

				// Assumes a single number if not a string
				parts = typeof value === "string" ? value.split( " " ) : [ value ];

			for ( ; i < 4; i++ ) {
				expanded[ prefix + cssExpand[ i ] + suffix ] =
					parts[ i ] || parts[ i - 2 ] || parts[ 0 ];
			}

			return expanded;
		}
	};

	if ( prefix !== "margin" ) {
		jQuery.cssHooks[ prefix + suffix ].set = setPositiveNumber;
	}
} );

jQuery.fn.extend( {
	css: function( name, value ) {
		return access( this, function( elem, name, value ) {
			var styles, len,
				map = {},
				i = 0;

			if ( Array.isArray( name ) ) {
				styles = getStyles( elem );
				len = name.length;

				for ( ; i < len; i++ ) {
					map[ name[ i ] ] = jQuery.css( elem, name[ i ], false, styles );
				}

				return map;
			}

			return value !== undefined ?
				jQuery.style( elem, name, value ) :
				jQuery.css( elem, name );
		}, name, value, arguments.length > 1 );
	}
} );


function Tween( elem, options, prop, end, easing ) {
	return new Tween.prototype.init( elem, options, prop, end, easing );
}
jQuery.Tween = Tween;

Tween.prototype = {
	constructor: Tween,
	init: function( elem, options, prop, end, easing, unit ) {
		this.elem = elem;
		this.prop = prop;
		this.easing = easing || jQuery.easing._default;
		this.options = options;
		this.start = this.now = this.cur();
		this.end = end;
		this.unit = unit || ( jQuery.cssNumber[ prop ] ? "" : "px" );
	},
	cur: function() {
		var hooks = Tween.propHooks[ this.prop ];

		return hooks && hooks.get ?
			hooks.get( this ) :
			Tween.propHooks._default.get( this );
	},
	run: function( percent ) {
		var eased,
			hooks = Tween.propHooks[ this.prop ];

		if ( this.options.duration ) {
			this.pos = eased = jQuery.easing[ this.easing ](
				percent, this.options.duration * percent, 0, 1, this.options.duration
			);
		} else {
			this.pos = eased = percent;
		}
		this.now = ( this.end - this.start ) * eased + this.start;

		if ( this.options.step ) {
			this.options.step.call( this.elem, this.now, this );
		}

		if ( hooks && hooks.set ) {
			hooks.set( this );
		} else {
			Tween.propHooks._default.set( this );
		}
		return this;
	}
};

Tween.prototype.init.prototype = Tween.prototype;

Tween.propHooks = {
	_default: {
		get: function( tween ) {
			var result;

			// Use a property on the element directly when it is not a DOM element,
			// or when there is no matching style property that exists.
			if ( tween.elem.nodeType !== 1 ||
				tween.elem[ tween.prop ] != null && tween.elem.style[ tween.prop ] == null ) {
				return tween.elem[ tween.prop ];
			}

			// Passing an empty string as a 3rd parameter to .css will automatically
			// attempt a parseFloat and fallback to a string if the parse fails.
			// Simple values such as "10px" are parsed to Float;
			// complex values such as "rotate(1rad)" are returned as-is.
			result = jQuery.css( tween.elem, tween.prop, "" );

			// Empty strings, null, undefined and "auto" are converted to 0.
			return !result || result === "auto" ? 0 : result;
		},
		set: function( tween ) {

			// Use step hook for back compat.
			// Use cssHook if its there.
			// Use .style if available and use plain properties where available.
			if ( jQuery.fx.step[ tween.prop ] ) {
				jQuery.fx.step[ tween.prop ]( tween );
			} else if ( tween.elem.nodeType === 1 && (
				jQuery.cssHooks[ tween.prop ] ||
					tween.elem.style[ finalPropName( tween.prop ) ] != null ) ) {
				jQuery.style( tween.elem, tween.prop, tween.now + tween.unit );
			} else {
				tween.elem[ tween.prop ] = tween.now;
			}
		}
	}
};

// Support: IE <=9 only
// Panic based approach to setting things on disconnected nodes
Tween.propHooks.scrollTop = Tween.propHooks.scrollLeft = {
	set: function( tween ) {
		if ( tween.elem.nodeType && tween.elem.parentNode ) {
			tween.elem[ tween.prop ] = tween.now;
		}
	}
};

jQuery.easing = {
	linear: function( p ) {
		return p;
	},
	swing: function( p ) {
		return 0.5 - Math.cos( p * Math.PI ) / 2;
	},
	_default: "swing"
};

jQuery.fx = Tween.prototype.init;

// Back compat <1.8 extension point
jQuery.fx.step = {};




var
	fxNow, inProgress,
	rfxtypes = /^(?:toggle|show|hide)$/,
	rrun = /queueHooks$/;

function schedule() {
	if ( inProgress ) {
		if ( document.hidden === false && window.requestAnimationFrame ) {
			window.requestAnimationFrame( schedule );
		} else {
			window.setTimeout( schedule, jQuery.fx.interval );
		}

		jQuery.fx.tick();
	}
}

// Animations created synchronously will run synchronously
function createFxNow() {
	window.setTimeout( function() {
		fxNow = undefined;
	} );
	return ( fxNow = Date.now() );
}

// Generate parameters to create a standard animation
function genFx( type, includeWidth ) {
	var which,
		i = 0,
		attrs = { height: type };

	// If we include width, step value is 1 to do all cssExpand values,
	// otherwise step value is 2 to skip over Left and Right
	includeWidth = includeWidth ? 1 : 0;
	for ( ; i < 4; i += 2 - includeWidth ) {
		which = cssExpand[ i ];
		attrs[ "margin" + which ] = attrs[ "padding" + which ] = type;
	}

	if ( includeWidth ) {
		attrs.opacity = attrs.width = type;
	}

	return attrs;
}

function createTween( value, prop, animation ) {
	var tween,
		collection = ( Animation.tweeners[ prop ] || [] ).concat( Animation.tweeners[ "*" ] ),
		index = 0,
		length = collection.length;
	for ( ; index < length; index++ ) {
		if ( ( tween = collection[ index ].call( animation, prop, value ) ) ) {

			// We're done with this property
			return tween;
		}
	}
}

function defaultPrefilter( elem, props, opts ) {
	var prop, value, toggle, hooks, oldfire, propTween, restoreDisplay, display,
		isBox = "width" in props || "height" in props,
		anim = this,
		orig = {},
		style = elem.style,
		hidden = elem.nodeType && isHiddenWithinTree( elem ),
		dataShow = dataPriv.get( elem, "fxshow" );

	// Queue-skipping animations hijack the fx hooks
	if ( !opts.queue ) {
		hooks = jQuery._queueHooks( elem, "fx" );
		if ( hooks.unqueued == null ) {
			hooks.unqueued = 0;
			oldfire = hooks.empty.fire;
			hooks.empty.fire = function() {
				if ( !hooks.unqueued ) {
					oldfire();
				}
			};
		}
		hooks.unqueued++;

		anim.always( function() {

			// Ensure the complete handler is called before this completes
			anim.always( function() {
				hooks.unqueued--;
				if ( !jQuery.queue( elem, "fx" ).length ) {
					hooks.empty.fire();
				}
			} );
		} );
	}

	// Detect show/hide animations
	for ( prop in props ) {
		value = props[ prop ];
		if ( rfxtypes.test( value ) ) {
			delete props[ prop ];
			toggle = toggle || value === "toggle";
			if ( value === ( hidden ? "hide" : "show" ) ) {

				// Pretend to be hidden if this is a "show" and
				// there is still data from a stopped show/hide
				if ( value === "show" && dataShow && dataShow[ prop ] !== undefined ) {
					hidden = true;

				// Ignore all other no-op show/hide data
				} else {
					continue;
				}
			}
			orig[ prop ] = dataShow && dataShow[ prop ] || jQuery.style( elem, prop );
		}
	}

	// Bail out if this is a no-op like .hide().hide()
	propTween = !jQuery.isEmptyObject( props );
	if ( !propTween && jQuery.isEmptyObject( orig ) ) {
		return;
	}

	// Restrict "overflow" and "display" styles during box animations
	if ( isBox && elem.nodeType === 1 ) {

		// Support: IE <=9 - 11, Edge 12 - 15
		// Record all 3 overflow attributes because IE does not infer the shorthand
		// from identically-valued overflowX and overflowY and Edge just mirrors
		// the overflowX value there.
		opts.overflow = [ style.overflow, style.overflowX, style.overflowY ];

		// Identify a display type, preferring old show/hide data over the CSS cascade
		restoreDisplay = dataShow && dataShow.display;
		if ( restoreDisplay == null ) {
			restoreDisplay = dataPriv.get( elem, "display" );
		}
		display = jQuery.css( elem, "display" );
		if ( display === "none" ) {
			if ( restoreDisplay ) {
				display = restoreDisplay;
			} else {

				// Get nonempty value(s) by temporarily forcing visibility
				showHide( [ elem ], true );
				restoreDisplay = elem.style.display || restoreDisplay;
				display = jQuery.css( elem, "display" );
				showHide( [ elem ] );
			}
		}

		// Animate inline elements as inline-block
		if ( display === "inline" || display === "inline-block" && restoreDisplay != null ) {
			if ( jQuery.css( elem, "float" ) === "none" ) {

				// Restore the original display value at the end of pure show/hide animations
				if ( !propTween ) {
					anim.done( function() {
						style.display = restoreDisplay;
					} );
					if ( restoreDisplay == null ) {
						display = style.display;
						restoreDisplay = display === "none" ? "" : display;
					}
				}
				style.display = "inline-block";
			}
		}
	}

	if ( opts.overflow ) {
		style.overflow = "hidden";
		anim.always( function() {
			style.overflow = opts.overflow[ 0 ];
			style.overflowX = opts.overflow[ 1 ];
			style.overflowY = opts.overflow[ 2 ];
		} );
	}

	// Implement show/hide animations
	propTween = false;
	for ( prop in orig ) {

		// General show/hide setup for this element animation
		if ( !propTween ) {
			if ( dataShow ) {
				if ( "hidden" in dataShow ) {
					hidden = dataShow.hidden;
				}
			} else {
				dataShow = dataPriv.access( elem, "fxshow", { display: restoreDisplay } );
			}

			// Store hidden/visible for toggle so `.stop().toggle()` "reverses"
			if ( toggle ) {
				dataShow.hidden = !hidden;
			}

			// Show elements before animating them
			if ( hidden ) {
				showHide( [ elem ], true );
			}

			/* eslint-disable no-loop-func */

			anim.done( function() {

				/* eslint-enable no-loop-func */

				// The final step of a "hide" animation is actually hiding the element
				if ( !hidden ) {
					showHide( [ elem ] );
				}
				dataPriv.remove( elem, "fxshow" );
				for ( prop in orig ) {
					jQuery.style( elem, prop, orig[ prop ] );
				}
			} );
		}

		// Per-property setup
		propTween = createTween( hidden ? dataShow[ prop ] : 0, prop, anim );
		if ( !( prop in dataShow ) ) {
			dataShow[ prop ] = propTween.start;
			if ( hidden ) {
				propTween.end = propTween.start;
				propTween.start = 0;
			}
		}
	}
}

function propFilter( props, specialEasing ) {
	var index, name, easing, value, hooks;

	// camelCase, specialEasing and expand cssHook pass
	for ( index in props ) {
		name = camelCase( index );
		easing = specialEasing[ name ];
		value = props[ index ];
		if ( Array.isArray( value ) ) {
			easing = value[ 1 ];
			value = props[ index ] = value[ 0 ];
		}

		if ( index !== name ) {
			props[ name ] = value;
			delete props[ index ];
		}

		hooks = jQuery.cssHooks[ name ];
		if ( hooks && "expand" in hooks ) {
			value = hooks.expand( value );
			delete props[ name ];

			// Not quite $.extend, this won't overwrite existing keys.
			// Reusing 'index' because we have the correct "name"
			for ( index in value ) {
				if ( !( index in props ) ) {
					props[ index ] = value[ index ];
					specialEasing[ index ] = easing;
				}
			}
		} else {
			specialEasing[ name ] = easing;
		}
	}
}

function Animation( elem, properties, options ) {
	var result,
		stopped,
		index = 0,
		length = Animation.prefilters.length,
		deferred = jQuery.Deferred().always( function() {

			// Don't match elem in the :animated selector
			delete tick.elem;
		} ),
		tick = function() {
			if ( stopped ) {
				return false;
			}
			var currentTime = fxNow || createFxNow(),
				remaining = Math.max( 0, animation.startTime + animation.duration - currentTime ),

				// Support: Android 2.3 only
				// Archaic crash bug won't allow us to use `1 - ( 0.5 || 0 )` (trac-12497)
				temp = remaining / animation.duration || 0,
				percent = 1 - temp,
				index = 0,
				length = animation.tweens.length;

			for ( ; index < length; index++ ) {
				animation.tweens[ index ].run( percent );
			}

			deferred.notifyWith( elem, [ animation, percent, remaining ] );

			// If there's more to do, yield
			if ( percent < 1 && length ) {
				return remaining;
			}

			// If this was an empty animation, synthesize a final progress notification
			if ( !length ) {
				deferred.notifyWith( elem, [ animation, 1, 0 ] );
			}

			// Resolve the animation and report its conclusion
			deferred.resolveWith( elem, [ animation ] );
			return false;
		},
		animation = deferred.promise( {
			elem: elem,
			props: jQuery.extend( {}, properties ),
			opts: jQuery.extend( true, {
				specialEasing: {},
				easing: jQuery.easing._default
			}, options ),
			originalProperties: properties,
			originalOptions: options,
			startTime: fxNow || createFxNow(),
			duration: options.duration,
			tweens: [],
			createTween: function( prop, end ) {
				var tween = jQuery.Tween( elem, animation.opts, prop, end,
					animation.opts.specialEasing[ prop ] || animation.opts.easing );
				animation.tweens.push( tween );
				return tween;
			},
			stop: function( gotoEnd ) {
				var index = 0,

					// If we are going to the end, we want to run all the tweens
					// otherwise we skip this part
					length = gotoEnd ? animation.tweens.length : 0;
				if ( stopped ) {
					return this;
				}
				stopped = true;
				for ( ; index < length; index++ ) {
					animation.tweens[ index ].run( 1 );
				}

				// Resolve when we played the last frame; otherwise, reject
				if ( gotoEnd ) {
					deferred.notifyWith( elem, [ animation, 1, 0 ] );
					deferred.resolveWith( elem, [ animation, gotoEnd ] );
				} else {
					deferred.rejectWith( elem, [ animation, gotoEnd ] );
				}
				return this;
			}
		} ),
		props = animation.props;

	propFilter( props, animation.opts.specialEasing );

	for ( ; index < length; index++ ) {
		result = Animation.prefilters[ index ].call( animation, elem, props, animation.opts );
		if ( result ) {
			if ( isFunction( result.stop ) ) {
				jQuery._queueHooks( animation.elem, animation.opts.queue ).stop =
					result.stop.bind( result );
			}
			return result;
		}
	}

	jQuery.map( props, createTween, animation );

	if ( isFunction( animation.opts.start ) ) {
		animation.opts.start.call( elem, animation );
	}

	// Attach callbacks from options
	animation
		.progress( animation.opts.progress )
		.done( animation.opts.done, animation.opts.complete )
		.fail( animation.opts.fail )
		.always( animation.opts.always );

	jQuery.fx.timer(
		jQuery.extend( tick, {
			elem: elem,
			anim: animation,
			queue: animation.opts.queue
		} )
	);

	return animation;
}

jQuery.Animation = jQuery.extend( Animation, {

	tweeners: {
		"*": [ function( prop, value ) {
			var tween = this.createTween( prop, value );
			adjustCSS( tween.elem, prop, rcssNum.exec( value ), tween );
			return tween;
		} ]
	},

	tweener: function( props, callback ) {
		if ( isFunction( props ) ) {
			callback = props;
			props = [ "*" ];
		} else {
			props = props.match( rnothtmlwhite );
		}

		var prop,
			index = 0,
			length = props.length;

		for ( ; index < length; index++ ) {
			prop = props[ index ];
			Animation.tweeners[ prop ] = Animation.tweeners[ prop ] || [];
			Animation.tweeners[ prop ].unshift( callback );
		}
	},

	prefilters: [ defaultPrefilter ],

	prefilter: function( callback, prepend ) {
		if ( prepend ) {
			Animation.prefilters.unshift( callback );
		} else {
			Animation.prefilters.push( callback );
		}
	}
} );

jQuery.speed = function( speed, easing, fn ) {
	var opt = speed && typeof speed === "object" ? jQuery.extend( {}, speed ) : {
		complete: fn || !fn && easing ||
			isFunction( speed ) && speed,
		duration: speed,
		easing: fn && easing || easing && !isFunction( easing ) && easing
	};

	// Go to the end state if fx are off
	if ( jQuery.fx.off ) {
		opt.duration = 0;

	} else {
		if ( typeof opt.duration !== "number" ) {
			if ( opt.duration in jQuery.fx.speeds ) {
				opt.duration = jQuery.fx.speeds[ opt.duration ];

			} else {
				opt.duration = jQuery.fx.speeds._default;
			}
		}
	}

	// Normalize opt.queue - true/undefined/null -> "fx"
	if ( opt.queue == null || opt.queue === true ) {
		opt.queue = "fx";
	}

	// Queueing
	opt.old = opt.complete;

	opt.complete = function() {
		if ( isFunction( opt.old ) ) {
			opt.old.call( this );
		}

		if ( opt.queue ) {
			jQuery.dequeue( this, opt.queue );
		}
	};

	return opt;
};

jQuery.fn.extend( {
	fadeTo: function( speed, to, easing, callback ) {

		// Show any hidden elements after setting opacity to 0
		return this.filter( isHiddenWithinTree ).css( "opacity", 0 ).show()

			// Animate to the value specified
			.end().animate( { opacity: to }, speed, easing, callback );
	},
	animate: function( prop, speed, easing, callback ) {
		var empty = jQuery.isEmptyObject( prop ),
			optall = jQuery.speed( speed, easing, callback ),
			doAnimation = function() {

				// Operate on a copy of prop so per-property easing won't be lost
				var anim = Animation( this, jQuery.extend( {}, prop ), optall );

				// Empty animations, or finishing resolves immediately
				if ( empty || dataPriv.get( this, "finish" ) ) {
					anim.stop( true );
				}
			};

		doAnimation.finish = doAnimation;

		return empty || optall.queue === false ?
			this.each( doAnimation ) :
			this.queue( optall.queue, doAnimation );
	},
	stop: function( type, clearQueue, gotoEnd ) {
		var stopQueue = function( hooks ) {
			var stop = hooks.stop;
			delete hooks.stop;
			stop( gotoEnd );
		};

		if ( typeof type !== "string" ) {
			gotoEnd = clearQueue;
			clearQueue = type;
			type = undefined;
		}
		if ( clearQueue ) {
			this.queue( type || "fx", [] );
		}

		return this.each( function() {
			var dequeue = true,
				index = type != null && type + "queueHooks",
				timers = jQuery.timers,
				data = dataPriv.get( this );

			if ( index ) {
				if ( data[ index ] && data[ index ].stop ) {
					stopQueue( data[ index ] );
				}
			} else {
				for ( index in data ) {
					if ( data[ index ] && data[ index ].stop && rrun.test( index ) ) {
						stopQueue( data[ index ] );
					}
				}
			}

			for ( index = timers.length; index--; ) {
				if ( timers[ index ].elem === this &&
					( type == null || timers[ index ].queue === type ) ) {

					timers[ index ].anim.stop( gotoEnd );
					dequeue = false;
					timers.splice( index, 1 );
				}
			}

			// Start the next in the queue if the last step wasn't forced.
			// Timers currently will call their complete callbacks, which
			// will dequeue but only if they were gotoEnd.
			if ( dequeue || !gotoEnd ) {
				jQuery.dequeue( this, type );
			}
		} );
	},
	finish: function( type ) {
		if ( type !== false ) {
			type = type || "fx";
		}
		return this.each( function() {
			var index,
				data = dataPriv.get( this ),
				queue = data[ type + "queue" ],
				hooks = data[ type + "queueHooks" ],
				timers = jQuery.timers,
				length = queue ? queue.length : 0;

			// Enable finishing flag on private data
			data.finish = true;

			// Empty the queue first
			jQuery.queue( this, type, [] );

			if ( hooks && hooks.stop ) {
				hooks.stop.call( this, true );
			}

			// Look for any active animations, and finish them
			for ( index = timers.length; index--; ) {
				if ( timers[ index ].elem === this && timers[ index ].queue === type ) {
					timers[ index ].anim.stop( true );
					timers.splice( index, 1 );
				}
			}

			// Look for any animations in the old queue and finish them
			for ( index = 0; index < length; index++ ) {
				if ( queue[ index ] && queue[ index ].finish ) {
					queue[ index ].finish.call( this );
				}
			}

			// Turn off finishing flag
			delete data.finish;
		} );
	}
} );

jQuery.each( [ "toggle", "show", "hide" ], function( _i, name ) {
	var cssFn = jQuery.fn[ name ];
	jQuery.fn[ name ] = function( speed, easing, callback ) {
		return speed == null || typeof speed === "boolean" ?
			cssFn.apply( this, arguments ) :
			this.animate( genFx( name, true ), speed, easing, callback );
	};
} );

// Generate shortcuts for custom animations
jQuery.each( {
	slideDown: genFx( "show" ),
	slideUp: genFx( "hide" ),
	slideToggle: genFx( "toggle" ),
	fadeIn: { opacity: "show" },
	fadeOut: { opacity: "hide" },
	fadeToggle: { opacity: "toggle" }
}, function( name, props ) {
	jQuery.fn[ name ] = function( speed, easing, callback ) {
		return this.animate( props, speed, easing, callback );
	};
} );

jQuery.timers = [];
jQuery.fx.tick = function() {
	var timer,
		i = 0,
		timers = jQuery.timers;

	fxNow = Date.now();

	for ( ; i < timers.length; i++ ) {
		timer = timers[ i ];

		// Run the timer and safely remove it when done (allowing for external removal)
		if ( !timer() && timers[ i ] === timer ) {
			timers.splice( i--, 1 );
		}
	}

	if ( !timers.length ) {
		jQuery.fx.stop();
	}
	fxNow = undefined;
};

jQuery.fx.timer = function( timer ) {
	jQuery.timers.push( timer );
	jQuery.fx.start();
};

jQuery.fx.interval = 13;
jQuery.fx.start = function() {
	if ( inProgress ) {
		return;
	}

	inProgress = true;
	schedule();
};

jQuery.fx.stop = function() {
	inProgress = null;
};

jQuery.fx.speeds = {
	slow: 600,
	fast: 200,

	// Default speed
	_default: 400
};


// Based off of the plugin by Clint Helfers, with permission.
jQuery.fn.delay = function( time, type ) {
	time = jQuery.fx ? jQuery.fx.speeds[ time ] || time : time;
	type = type || "fx";

	return this.queue( type, function( next, hooks ) {
		var timeout = window.setTimeout( next, time );
		hooks.stop = function() {
			window.clearTimeout( timeout );
		};
	} );
};


( function() {
	var input = document.createElement( "input" ),
		select = document.createElement( "select" ),
		opt = select.appendChild( document.createElement( "option" ) );

	input.type = "checkbox";

	// Support: Android <=4.3 only
	// Default value for a checkbox should be "on"
	support.checkOn = input.value !== "";

	// Support: IE <=11 only
	// Must access selectedIndex to make default options select
	support.optSelected = opt.selected;

	// Support: IE <=11 only
	// An input loses its value after becoming a radio
	input = document.createElement( "input" );
	input.value = "t";
	input.type = "radio";
	support.radioValue = input.value === "t";
} )();


var boolHook,
	attrHandle = jQuery.expr.attrHandle;

jQuery.fn.extend( {
	attr: function( name, value ) {
		return access( this, jQuery.attr, name, value, arguments.length > 1 );
	},

	removeAttr: function( name ) {
		return this.each( function() {
			jQuery.removeAttr( this, name );
		} );
	}
} );

jQuery.extend( {
	attr: function( elem, name, value ) {
		var ret, hooks,
			nType = elem.nodeType;

		// Don't get/set attributes on text, comment and attribute nodes
		if ( nType === 3 || nType === 8 || nType === 2 ) {
			return;
		}

		// Fallback to prop when attributes are not supported
		if ( typeof elem.getAttribute === "undefined" ) {
			return jQuery.prop( elem, name, value );
		}

		// Attribute hooks are determined by the lowercase version
		// Grab necessary hook if one is defined
		if ( nType !== 1 || !jQuery.isXMLDoc( elem ) ) {
			hooks = jQuery.attrHooks[ name.toLowerCase() ] ||
				( jQuery.expr.match.bool.test( name ) ? boolHook : undefined );
		}

		if ( value !== undefined ) {
			if ( value === null ) {
				jQuery.removeAttr( elem, name );
				return;
			}

			if ( hooks && "set" in hooks &&
				( ret = hooks.set( elem, value, name ) ) !== undefined ) {
				return ret;
			}

			elem.setAttribute( name, value + "" );
			return value;
		}

		if ( hooks && "get" in hooks && ( ret = hooks.get( elem, name ) ) !== null ) {
			return ret;
		}

		ret = jQuery.find.attr( elem, name );

		// Non-existent attributes return null, we normalize to undefined
		return ret == null ? undefined : ret;
	},

	attrHooks: {
		type: {
			set: function( elem, value ) {
				if ( !support.radioValue && value === "radio" &&
					nodeName( elem, "input" ) ) {
					var val = elem.value;
					elem.setAttribute( "type", value );
					if ( val ) {
						elem.value = val;
					}
					return value;
				}
			}
		}
	},

	removeAttr: function( elem, value ) {
		var name,
			i = 0,

			// Attribute names can contain non-HTML whitespace characters
			// https://html.spec.whatwg.org/multipage/syntax.html#attributes-2
			attrNames = value && value.match( rnothtmlwhite );

		if ( attrNames && elem.nodeType === 1 ) {
			while ( ( name = attrNames[ i++ ] ) ) {
				elem.removeAttribute( name );
			}
		}
	}
} );

// Hooks for boolean attributes
boolHook = {
	set: function( elem, value, name ) {
		if ( value === false ) {

			// Remove boolean attributes when set to false
			jQuery.removeAttr( elem, name );
		} else {
			elem.setAttribute( name, name );
		}
		return name;
	}
};

jQuery.each( jQuery.expr.match.bool.source.match( /\w+/g ), function( _i, name ) {
	var getter = attrHandle[ name ] || jQuery.find.attr;

	attrHandle[ name ] = function( elem, name, isXML ) {
		var ret, handle,
			lowercaseName = name.toLowerCase();

		if ( !isXML ) {

			// Avoid an infinite loop by temporarily removing this function from the getter
			handle = attrHandle[ lowercaseName ];
			attrHandle[ lowercaseName ] = ret;
			ret = getter( elem, name, isXML ) != null ?
				lowercaseName :
				null;
			attrHandle[ lowercaseName ] = handle;
		}
		return ret;
	};
} );




var rfocusable = /^(?:input|select|textarea|button)$/i,
	rclickable = /^(?:a|area)$/i;

jQuery.fn.extend( {
	prop: function( name, value ) {
		return access( this, jQuery.prop, name, value, arguments.length > 1 );
	},

	removeProp: function( name ) {
		return this.each( function() {
			delete this[ jQuery.propFix[ name ] || name ];
		} );
	}
} );

jQuery.extend( {
	prop: function( elem, name, value ) {
		var ret, hooks,
			nType = elem.nodeType;

		// Don't get/set properties on text, comment and attribute nodes
		if ( nType === 3 || nType === 8 || nType === 2 ) {
			return;
		}

		if ( nType !== 1 || !jQuery.isXMLDoc( elem ) ) {

			// Fix name and attach hooks
			name = jQuery.propFix[ name ] || name;
			hooks = jQuery.propHooks[ name ];
		}

		if ( value !== undefined ) {
			if ( hooks && "set" in hooks &&
				( ret = hooks.set( elem, value, name ) ) !== undefined ) {
				return ret;
			}

			return ( elem[ name ] = value );
		}

		if ( hooks && "get" in hooks && ( ret = hooks.get( elem, name ) ) !== null ) {
			return ret;
		}

		return elem[ name ];
	},

	propHooks: {
		tabIndex: {
			get: function( elem ) {

				// Support: IE <=9 - 11 only
				// elem.tabIndex doesn't always return the
				// correct value when it hasn't been explicitly set
				// Use proper attribute retrieval (trac-12072)
				var tabindex = jQuery.find.attr( elem, "tabindex" );

				if ( tabindex ) {
					return parseInt( tabindex, 10 );
				}

				if (
					rfocusable.test( elem.nodeName ) ||
					rclickable.test( elem.nodeName ) &&
					elem.href
				) {
					return 0;
				}

				return -1;
			}
		}
	},

	propFix: {
		"for": "htmlFor",
		"class": "className"
	}
} );

// Support: IE <=11 only
// Accessing the selectedIndex property
// forces the browser to respect setting selected
// on the option
// The getter ensures a default option is selected
// when in an optgroup
// eslint rule "no-unused-expressions" is disabled for this code
// since it considers such accessions noop
if ( !support.optSelected ) {
	jQuery.propHooks.selected = {
		get: function( elem ) {

			/* eslint no-unused-expressions: "off" */

			var parent = elem.parentNode;
			if ( parent && parent.parentNode ) {
				parent.parentNode.selectedIndex;
			}
			return null;
		},
		set: function( elem ) {

			/* eslint no-unused-expressions: "off" */

			var parent = elem.parentNode;
			if ( parent ) {
				parent.selectedIndex;

				if ( parent.parentNode ) {
					parent.parentNode.selectedIndex;
				}
			}
		}
	};
}

jQuery.each( [
	"tabIndex",
	"readOnly",
	"maxLength",
	"cellSpacing",
	"cellPadding",
	"rowSpan",
	"colSpan",
	"useMap",
	"frameBorder",
	"contentEditable"
], function() {
	jQuery.propFix[ this.toLowerCase() ] = this;
} );




	// Strip and collapse whitespace according to HTML spec
	// https://infra.spec.whatwg.org/#strip-and-collapse-ascii-whitespace
	function stripAndCollapse( value ) {
		var tokens = value.match( rnothtmlwhite ) || [];
		return tokens.join( " " );
	}


function getClass( elem ) {
	return elem.getAttribute && elem.getAttribute( "class" ) || "";
}

function classesToArray( value ) {
	if ( Array.isArray( value ) ) {
		return value;
	}
	if ( typeof value === "string" ) {
		return value.match( rnothtmlwhite ) || [];
	}
	return [];
}

jQuery.fn.extend( {
	addClass: function( value ) {
		var classNames, cur, curValue, className, i, finalValue;

		if ( isFunction( value ) ) {
			return this.each( function( j ) {
				jQuery( this ).addClass( value.call( this, j, getClass( this ) ) );
			} );
		}

		classNames = classesToArray( value );

		if ( classNames.length ) {
			return this.each( function() {
				curValue = getClass( this );
				cur = this.nodeType === 1 && ( " " + stripAndCollapse( curValue ) + " " );

				if ( cur ) {
					for ( i = 0; i < classNames.length; i++ ) {
						className = classNames[ i ];
						if ( cur.indexOf( " " + className + " " ) < 0 ) {
							cur += className + " ";
						}
					}

					// Only assign if different to avoid unneeded rendering.
					finalValue = stripAndCollapse( cur );
					if ( curValue !== finalValue ) {
						this.setAttribute( "class", finalValue );
					}
				}
			} );
		}

		return this;
	},

	removeClass: function( value ) {
		var classNames, cur, curValue, className, i, finalValue;

		if ( isFunction( value ) ) {
			return this.each( function( j ) {
				jQuery( this ).removeClass( value.call( this, j, getClass( this ) ) );
			} );
		}

		if ( !arguments.length ) {
			return this.attr( "class", "" );
		}

		classNames = classesToArray( value );

		if ( classNames.length ) {
			return this.each( function() {
				curValue = getClass( this );

				// This expression is here for better compressibility (see addClass)
				cur = this.nodeType === 1 && ( " " + stripAndCollapse( curValue ) + " " );

				if ( cur ) {
					for ( i = 0; i < classNames.length; i++ ) {
						className = classNames[ i ];

						// Remove *all* instances
						while ( cur.indexOf( " " + className + " " ) > -1 ) {
							cur = cur.replace( " " + className + " ", " " );
						}
					}

					// Only assign if different to avoid unneeded rendering.
					finalValue = stripAndCollapse( cur );
					if ( curValue !== finalValue ) {
						this.setAttribute( "class", finalValue );
					}
				}
			} );
		}

		return this;
	},

	toggleClass: function( value, stateVal ) {
		var classNames, className, i, self,
			type = typeof value,
			isValidValue = type === "string" || Array.isArray( value );

		if ( isFunction( value ) ) {
			return this.each( function( i ) {
				jQuery( this ).toggleClass(
					value.call( this, i, getClass( this ), stateVal ),
					stateVal
				);
			} );
		}

		if ( typeof stateVal === "boolean" && isValidValue ) {
			return stateVal ? this.addClass( value ) : this.removeClass( value );
		}

		classNames = classesToArray( value );

		return this.each( function() {
			if ( isValidValue ) {

				// Toggle individual class names
				self = jQuery( this );

				for ( i = 0; i < classNames.length; i++ ) {
					className = classNames[ i ];

					// Check each className given, space separated list
					if ( self.hasClass( className ) ) {
						self.removeClass( className );
					} else {
						self.addClass( className );
					}
				}

			// Toggle whole class name
			} else if ( value === undefined || type === "boolean" ) {
				className = getClass( this );
				if ( className ) {

					// Store className if set
					dataPriv.set( this, "__className__", className );
				}

				// If the element has a class name or if we're passed `false`,
				// then remove the whole classname (if there was one, the above saved it).
				// Otherwise bring back whatever was previously saved (if anything),
				// falling back to the empty string if nothing was stored.
				if ( this.setAttribute ) {
					this.setAttribute( "class",
						className || value === false ?
							"" :
							dataPriv.get( this, "__className__" ) || ""
					);
				}
			}
		} );
	},

	hasClass: function( selector ) {
		var className, elem,
			i = 0;

		className = " " + selector + " ";
		while ( ( elem = this[ i++ ] ) ) {
			if ( elem.nodeType === 1 &&
				( " " + stripAndCollapse( getClass( elem ) ) + " " ).indexOf( className ) > -1 ) {
				return true;
			}
		}

		return false;
	}
} );




var rreturn = /\r/g;

jQuery.fn.extend( {
	val: function( value ) {
		var hooks, ret, valueIsFunction,
			elem = this[ 0 ];

		if ( !arguments.length ) {
			if ( elem ) {
				hooks = jQuery.valHooks[ elem.type ] ||
					jQuery.valHooks[ elem.nodeName.toLowerCase() ];

				if ( hooks &&
					"get" in hooks &&
					( ret = hooks.get( elem, "value" ) ) !== undefined
				) {
					return ret;
				}

				ret = elem.value;

				// Handle most common string cases
				if ( typeof ret === "string" ) {
					return ret.replace( rreturn, "" );
				}

				// Handle cases where value is null/undef or number
				return ret == null ? "" : ret;
			}

			return;
		}

		valueIsFunction = isFunction( value );

		return this.each( function( i ) {
			var val;

			if ( this.nodeType !== 1 ) {
				return;
			}

			if ( valueIsFunction ) {
				val = value.call( this, i, jQuery( this ).val() );
			} else {
				val = value;
			}

			// Treat null/undefined as ""; convert numbers to string
			if ( val == null ) {
				val = "";

			} else if ( typeof val === "number" ) {
				val += "";

			} else if ( Array.isArray( val ) ) {
				val = jQuery.map( val, function( value ) {
					return value == null ? "" : value + "";
				} );
			}

			hooks = jQuery.valHooks[ this.type ] || jQuery.valHooks[ this.nodeName.toLowerCase() ];

			// If set returns undefined, fall back to normal setting
			if ( !hooks || !( "set" in hooks ) || hooks.set( this, val, "value" ) === undefined ) {
				this.value = val;
			}
		} );
	}
} );

jQuery.extend( {
	valHooks: {
		option: {
			get: function( elem ) {

				var val = jQuery.find.attr( elem, "value" );
				return val != null ?
					val :

					// Support: IE <=10 - 11 only
					// option.text throws exceptions (trac-14686, trac-14858)
					// Strip and collapse whitespace
					// https://html.spec.whatwg.org/#strip-and-collapse-whitespace
					stripAndCollapse( jQuery.text( elem ) );
			}
		},
		select: {
			get: function( elem ) {
				var value, option, i,
					options = elem.options,
					index = elem.selectedIndex,
					one = elem.type === "select-one",
					values = one ? null : [],
					max = one ? index + 1 : options.length;

				if ( index < 0 ) {
					i = max;

				} else {
					i = one ? index : 0;
				}

				// Loop through all the selected options
				for ( ; i < max; i++ ) {
					option = options[ i ];

					// Support: IE <=9 only
					// IE8-9 doesn't update selected after form reset (trac-2551)
					if ( ( option.selected || i === index ) &&

							// Don't return options that are disabled or in a disabled optgroup
							!option.disabled &&
							( !option.parentNode.disabled ||
								!nodeName( option.parentNode, "optgroup" ) ) ) {

						// Get the specific value for the option
						value = jQuery( option ).val();

						// We don't need an array for one selects
						if ( one ) {
							return value;
						}

						// Multi-Selects return an array
						values.push( value );
					}
				}

				return values;
			},

			set: function( elem, value ) {
				var optionSet, option,
					options = elem.options,
					values = jQuery.makeArray( value ),
					i = options.length;

				while ( i-- ) {
					option = options[ i ];

					/* eslint-disable no-cond-assign */

					if ( option.selected =
						jQuery.inArray( jQuery.valHooks.option.get( option ), values ) > -1
					) {
						optionSet = true;
					}

					/* eslint-enable no-cond-assign */
				}

				// Force browsers to behave consistently when non-matching value is set
				if ( !optionSet ) {
					elem.selectedIndex = -1;
				}
				return values;
			}
		}
	}
} );

// Radios and checkboxes getter/setter
jQuery.each( [ "radio", "checkbox" ], function() {
	jQuery.valHooks[ this ] = {
		set: function( elem, value ) {
			if ( Array.isArray( value ) ) {
				return ( elem.checked = jQuery.inArray( jQuery( elem ).val(), value ) > -1 );
			}
		}
	};
	if ( !support.checkOn ) {
		jQuery.valHooks[ this ].get = function( elem ) {
			return elem.getAttribute( "value" ) === null ? "on" : elem.value;
		};
	}
} );




// Return jQuery for attributes-only inclusion
var location = window.location;

var nonce = { guid: Date.now() };

var rquery = ( /\?/ );



// Cross-browser xml parsing
jQuery.parseXML = function( data ) {
	var xml, parserErrorElem;
	if ( !data || typeof data !== "string" ) {
		return null;
	}

	// Support: IE 9 - 11 only
	// IE throws on parseFromString with invalid input.
	try {
		xml = ( new window.DOMParser() ).parseFromString( data, "text/xml" );
	} catch ( e ) {}

	parserErrorElem = xml && xml.getElementsByTagName( "parsererror" )[ 0 ];
	if ( !xml || parserErrorElem ) {
		jQuery.error( "Invalid XML: " + (
			parserErrorElem ?
				jQuery.map( parserErrorElem.childNodes, function( el ) {
					return el.textContent;
				} ).join( "\n" ) :
				data
		) );
	}
	return xml;
};


var rfocusMorph = /^(?:focusinfocus|focusoutblur)$/,
	stopPropagationCallback = function( e ) {
		e.stopPropagation();
	};

jQuery.extend( jQuery.event, {

	trigger: function( event, data, elem, onlyHandlers ) {

		var i, cur, tmp, bubbleType, ontype, handle, special, lastElement,
			eventPath = [ elem || document ],
			type = hasOwn.call( event, "type" ) ? event.type : event,
			namespaces = hasOwn.call( event, "namespace" ) ? event.namespace.split( "." ) : [];

		cur = lastElement = tmp = elem = elem || document;

		// Don't do events on text and comment nodes
		if ( elem.nodeType === 3 || elem.nodeType === 8 ) {
			return;
		}

		// focus/blur morphs to focusin/out; ensure we're not firing them right now
		if ( rfocusMorph.test( type + jQuery.event.triggered ) ) {
			return;
		}

		if ( type.indexOf( "." ) > -1 ) {

			// Namespaced trigger; create a regexp to match event type in handle()
			namespaces = type.split( "." );
			type = namespaces.shift();
			namespaces.sort();
		}
		ontype = type.indexOf( ":" ) < 0 && "on" + type;

		// Caller can pass in a jQuery.Event object, Object, or just an event type string
		event = event[ jQuery.expando ] ?
			event :
			new jQuery.Event( type, typeof event === "object" && event );

		// Trigger bitmask: & 1 for native handlers; & 2 for jQuery (always true)
		event.isTrigger = onlyHandlers ? 2 : 3;
		event.namespace = namespaces.join( "." );
		event.rnamespace = event.namespace ?
			new RegExp( "(^|\\.)" + namespaces.join( "\\.(?:.*\\.|)" ) + "(\\.|$)" ) :
			null;

		// Clean up the event in case it is being reused
		event.result = undefined;
		if ( !event.target ) {
			event.target = elem;
		}

		// Clone any incoming data and prepend the event, creating the handler arg list
		data = data == null ?
			[ event ] :
			jQuery.makeArray( data, [ event ] );

		// Allow special events to draw outside the lines
		special = jQuery.event.special[ type ] || {};
		if ( !onlyHandlers && special.trigger && special.trigger.apply( elem, data ) === false ) {
			return;
		}

		// Determine event propagation path in advance, per W3C events spec (trac-9951)
		// Bubble up to document, then to window; watch for a global ownerDocument var (trac-9724)
		if ( !onlyHandlers && !special.noBubble && !isWindow( elem ) ) {

			bubbleType = special.delegateType || type;
			if ( !rfocusMorph.test( bubbleType + type ) ) {
				cur = cur.parentNode;
			}
			for ( ; cur; cur = cur.parentNode ) {
				eventPath.push( cur );
				tmp = cur;
			}

			// Only add window if we got to document (e.g., not plain obj or detached DOM)
			if ( tmp === ( elem.ownerDocument || document ) ) {
				eventPath.push( tmp.defaultView || tmp.parentWindow || window );
			}
		}

		// Fire handlers on the event path
		i = 0;
		while ( ( cur = eventPath[ i++ ] ) && !event.isPropagationStopped() ) {
			lastElement = cur;
			event.type = i > 1 ?
				bubbleType :
				special.bindType || type;

			// jQuery handler
			handle = ( dataPriv.get( cur, "events" ) || Object.create( null ) )[ event.type ] &&
				dataPriv.get( cur, "handle" );
			if ( handle ) {
				handle.apply( cur, data );
			}

			// Native handler
			handle = ontype && cur[ ontype ];
			if ( handle && handle.apply && acceptData( cur ) ) {
				event.result = handle.apply( cur, data );
				if ( event.result === false ) {
					event.preventDefault();
				}
			}
		}
		event.type = type;

		// If nobody prevented the default action, do it now
		if ( !onlyHandlers && !event.isDefaultPrevented() ) {

			if ( ( !special._default ||
				special._default.apply( eventPath.pop(), data ) === false ) &&
				acceptData( elem ) ) {

				// Call a native DOM method on the target with the same name as the event.
				// Don't do default actions on window, that's where global variables be (trac-6170)
				if ( ontype && isFunction( elem[ type ] ) && !isWindow( elem ) ) {

					// Don't re-trigger an onFOO event when we call its FOO() method
					tmp = elem[ ontype ];

					if ( tmp ) {
						elem[ ontype ] = null;
					}

					// Prevent re-triggering of the same event, since we already bubbled it above
					jQuery.event.triggered = type;

					if ( event.isPropagationStopped() ) {
						lastElement.addEventListener( type, stopPropagationCallback );
					}

					elem[ type ]();

					if ( event.isPropagationStopped() ) {
						lastElement.removeEventListener( type, stopPropagationCallback );
					}

					jQuery.event.triggered = undefined;

					if ( tmp ) {
						elem[ ontype ] = tmp;
					}
				}
			}
		}

		return event.result;
	},

	// Piggyback on a donor event to simulate a different one
	// Used only for `focus(in | out)` events
	simulate: function( type, elem, event ) {
		var e = jQuery.extend(
			new jQuery.Event(),
			event,
			{
				type: type,
				isSimulated: true
			}
		);

		jQuery.event.trigger( e, null, elem );
	}

} );

jQuery.fn.extend( {

	trigger: function( type, data ) {
		return this.each( function() {
			jQuery.event.trigger( type, data, this );
		} );
	},
	triggerHandler: function( type, data ) {
		var elem = this[ 0 ];
		if ( elem ) {
			return jQuery.event.trigger( type, data, elem, true );
		}
	}
} );


var
	rbracket = /\[\]$/,
	rCRLF = /\r?\n/g,
	rsubmitterTypes = /^(?:submit|button|image|reset|file)$/i,
	rsubmittable = /^(?:input|select|textarea|keygen)/i;

function buildParams( prefix, obj, traditional, add ) {
	var name;

	if ( Array.isArray( obj ) ) {

		// Serialize array item.
		jQuery.each( obj, function( i, v ) {
			if ( traditional || rbracket.test( prefix ) ) {

				// Treat each array item as a scalar.
				add( prefix, v );

			} else {

				// Item is non-scalar (array or object), encode its numeric index.
				buildParams(
					prefix + "[" + ( typeof v === "object" && v != null ? i : "" ) + "]",
					v,
					traditional,
					add
				);
			}
		} );

	} else if ( !traditional && toType( obj ) === "object" ) {

		// Serialize object item.
		for ( name in obj ) {
			buildParams( prefix + "[" + name + "]", obj[ name ], traditional, add );
		}

	} else {

		// Serialize scalar item.
		add( prefix, obj );
	}
}

// Serialize an array of form elements or a set of
// key/values into a query string
jQuery.param = function( a, traditional ) {
	var prefix,
		s = [],
		add = function( key, valueOrFunction ) {

			// If value is a function, invoke it and use its return value
			var value = isFunction( valueOrFunction ) ?
				valueOrFunction() :
				valueOrFunction;

			s[ s.length ] = encodeURIComponent( key ) + "=" +
				encodeURIComponent( value == null ? "" : value );
		};

	if ( a == null ) {
		return "";
	}

	// If an array was passed in, assume that it is an array of form elements.
	if ( Array.isArray( a ) || ( a.jquery && !jQuery.isPlainObject( a ) ) ) {

		// Serialize the form elements
		jQuery.each( a, function() {
			add( this.name, this.value );
		} );

	} else {

		// If traditional, encode the "old" way (the way 1.3.2 or older
		// did it), otherwise encode params recursively.
		for ( prefix in a ) {
			buildParams( prefix, a[ prefix ], traditional, add );
		}
	}

	// Return the resulting serialization
	return s.join( "&" );
};

jQuery.fn.extend( {
	serialize: function() {
		return jQuery.param( this.serializeArray() );
	},
	serializeArray: function() {
		return this.map( function() {

			// Can add propHook for "elements" to filter or add form elements
			var elements = jQuery.prop( this, "elements" );
			return elements ? jQuery.makeArray( elements ) : this;
		} ).filter( function() {
			var type = this.type;

			// Use .is( ":disabled" ) so that fieldset[disabled] works
			return this.name && !jQuery( this ).is( ":disabled" ) &&
				rsubmittable.test( this.nodeName ) && !rsubmitterTypes.test( type ) &&
				( this.checked || !rcheckableType.test( type ) );
		} ).map( function( _i, elem ) {
			var val = jQuery( this ).val();

			if ( val == null ) {
				return null;
			}

			if ( Array.isArray( val ) ) {
				return jQuery.map( val, function( val ) {
					return { name: elem.name, value: val.replace( rCRLF, "\r\n" ) };
				} );
			}

			return { name: elem.name, value: val.replace( rCRLF, "\r\n" ) };
		} ).get();
	}
} );


var
	r20 = /%20/g,
	rhash = /#.*$/,
	rantiCache = /([?&])_=[^&]*/,
	rheaders = /^(.*?):[ \t]*([^\r\n]*)$/mg,

	// trac-7653, trac-8125, trac-8152: local protocol detection
	rlocalProtocol = /^(?:about|app|app-storage|.+-extension|file|res|widget):$/,
	rnoContent = /^(?:GET|HEAD)$/,
	rprotocol = /^\/\//,

	/* Prefilters
	 * 1) They are useful to introduce custom dataTypes (see ajax/jsonp.js for an example)
	 * 2) These are called:
	 *    - BEFORE asking for a transport
	 *    - AFTER param serialization (s.data is a string if s.processData is true)
	 * 3) key is the dataType
	 * 4) the catchall symbol "*" can be used
	 * 5) execution will start with transport dataType and THEN continue down to "*" if needed
	 */
	prefilters = {},

	/* Transports bindings
	 * 1) key is the dataType
	 * 2) the catchall symbol "*" can be used
	 * 3) selection will start with transport dataType and THEN go to "*" if needed
	 */
	transports = {},

	// Avoid comment-prolog char sequence (trac-10098); must appease lint and evade compression
	allTypes = "*/".concat( "*" ),

	// Anchor tag for parsing the document origin
	originAnchor = document.createElement( "a" );

originAnchor.href = location.href;

// Base "constructor" for jQuery.ajaxPrefilter and jQuery.ajaxTransport
function addToPrefiltersOrTransports( structure ) {

	// dataTypeExpression is optional and defaults to "*"
	return function( dataTypeExpression, func ) {

		if ( typeof dataTypeExpression !== "string" ) {
			func = dataTypeExpression;
			dataTypeExpression = "*";
		}

		var dataType,
			i = 0,
			dataTypes = dataTypeExpression.toLowerCase().match( rnothtmlwhite ) || [];

		if ( isFunction( func ) ) {

			// For each dataType in the dataTypeExpression
			while ( ( dataType = dataTypes[ i++ ] ) ) {

				// Prepend if requested
				if ( dataType[ 0 ] === "+" ) {
					dataType = dataType.slice( 1 ) || "*";
					( structure[ dataType ] = structure[ dataType ] || [] ).unshift( func );

				// Otherwise append
				} else {
					( structure[ dataType ] = structure[ dataType ] || [] ).push( func );
				}
			}
		}
	};
}

// Base inspection function for prefilters and transports
function inspectPrefiltersOrTransports( structure, options, originalOptions, jqXHR ) {

	var inspected = {},
		seekingTransport = ( structure === transports );

	function inspect( dataType ) {
		var selected;
		inspected[ dataType ] = true;
		jQuery.each( structure[ dataType ] || [], function( _, prefilterOrFactory ) {
			var dataTypeOrTransport = prefilterOrFactory( options, originalOptions, jqXHR );
			if ( typeof dataTypeOrTransport === "string" &&
				!seekingTransport && !inspected[ dataTypeOrTransport ] ) {

				options.dataTypes.unshift( dataTypeOrTransport );
				inspect( dataTypeOrTransport );
				return false;
			} else if ( seekingTransport ) {
				return !( selected = dataTypeOrTransport );
			}
		} );
		return selected;
	}

	return inspect( options.dataTypes[ 0 ] ) || !inspected[ "*" ] && inspect( "*" );
}

// A special extend for ajax options
// that takes "flat" options (not to be deep extended)
// Fixes trac-9887
function ajaxExtend( target, src ) {
	var key, deep,
		flatOptions = jQuery.ajaxSettings.flatOptions || {};

	for ( key in src ) {
		if ( src[ key ] !== undefined ) {
			( flatOptions[ key ] ? target : ( deep || ( deep = {} ) ) )[ key ] = src[ key ];
		}
	}
	if ( deep ) {
		jQuery.extend( true, target, deep );
	}

	return target;
}

/* Handles responses to an ajax request:
 * - finds the right dataType (mediates between content-type and expected dataType)
 * - returns the corresponding response
 */
function ajaxHandleResponses( s, jqXHR, responses ) {

	var ct, type, finalDataType, firstDataType,
		contents = s.contents,
		dataTypes = s.dataTypes;

	// Remove auto dataType and get content-type in the process
	while ( dataTypes[ 0 ] === "*" ) {
		dataTypes.shift();
		if ( ct === undefined ) {
			ct = s.mimeType || jqXHR.getResponseHeader( "Content-Type" );
		}
	}

	// Check if we're dealing with a known content-type
	if ( ct ) {
		for ( type in contents ) {
			if ( contents[ type ] && contents[ type ].test( ct ) ) {
				dataTypes.unshift( type );
				break;
			}
		}
	}

	// Check to see if we have a response for the expected dataType
	if ( dataTypes[ 0 ] in responses ) {
		finalDataType = dataTypes[ 0 ];
	} else {

		// Try convertible dataTypes
		for ( type in responses ) {
			if ( !dataTypes[ 0 ] || s.converters[ type + " " + dataTypes[ 0 ] ] ) {
				finalDataType = type;
				break;
			}
			if ( !firstDataType ) {
				firstDataType = type;
			}
		}

		// Or just use first one
		finalDataType = finalDataType || firstDataType;
	}

	// If we found a dataType
	// We add the dataType to the list if needed
	// and return the corresponding response
	if ( finalDataType ) {
		if ( finalDataType !== dataTypes[ 0 ] ) {
			dataTypes.unshift( finalDataType );
		}
		return responses[ finalDataType ];
	}
}

/* Chain conversions given the request and the original response
 * Also sets the responseXXX fields on the jqXHR instance
 */
function ajaxConvert( s, response, jqXHR, isSuccess ) {
	var conv2, current, conv, tmp, prev,
		converters = {},

		// Work with a copy of dataTypes in case we need to modify it for conversion
		dataTypes = s.dataTypes.slice();

	// Create converters map with lowercased keys
	if ( dataTypes[ 1 ] ) {
		for ( conv in s.converters ) {
			converters[ conv.toLowerCase() ] = s.converters[ conv ];
		}
	}

	current = dataTypes.shift();

	// Convert to each sequential dataType
	while ( current ) {

		if ( s.responseFields[ current ] ) {
			jqXHR[ s.responseFields[ current ] ] = response;
		}

		// Apply the dataFilter if provided
		if ( !prev && isSuccess && s.dataFilter ) {
			response = s.dataFilter( response, s.dataType );
		}

		prev = current;
		current = dataTypes.shift();

		if ( current ) {

			// There's only work to do if current dataType is non-auto
			if ( current === "*" ) {

				current = prev;

			// Convert response if prev dataType is non-auto and differs from current
			} else if ( prev !== "*" && prev !== current ) {

				// Seek a direct converter
				conv = converters[ prev + " " + current ] || converters[ "* " + current ];

				// If none found, seek a pair
				if ( !conv ) {
					for ( conv2 in converters ) {

						// If conv2 outputs current
						tmp = conv2.split( " " );
						if ( tmp[ 1 ] === current ) {

							// If prev can be converted to accepted input
							conv = converters[ prev + " " + tmp[ 0 ] ] ||
								converters[ "* " + tmp[ 0 ] ];
							if ( conv ) {

								// Condense equivalence converters
								if ( conv === true ) {
									conv = converters[ conv2 ];

								// Otherwise, insert the intermediate dataType
								} else if ( converters[ conv2 ] !== true ) {
									current = tmp[ 0 ];
									dataTypes.unshift( tmp[ 1 ] );
								}
								break;
							}
						}
					}
				}

				// Apply converter (if not an equivalence)
				if ( conv !== true ) {

					// Unless errors are allowed to bubble, catch and return them
					if ( conv && s.throws ) {
						response = conv( response );
					} else {
						try {
							response = conv( response );
						} catch ( e ) {
							return {
								state: "parsererror",
								error: conv ? e : "No conversion from " + prev + " to " + current
							};
						}
					}
				}
			}
		}
	}

	return { state: "success", data: response };
}

jQuery.extend( {

	// Counter for holding the number of active queries
	active: 0,

	// Last-Modified header cache for next request
	lastModified: {},
	etag: {},

	ajaxSettings: {
		url: location.href,
		type: "GET",
		isLocal: rlocalProtocol.test( location.protocol ),
		global: true,
		processData: true,
		async: true,
		contentType: "application/x-www-form-urlencoded; charset=UTF-8",

		/*
		timeout: 0,
		data: null,
		dataType: null,
		username: null,
		password: null,
		cache: null,
		throws: false,
		traditional: false,
		headers: {},
		*/

		accepts: {
			"*": allTypes,
			text: "text/plain",
			html: "text/html",
			xml: "application/xml, text/xml",
			json: "application/json, text/javascript"
		},

		contents: {
			xml: /\bxml\b/,
			html: /\bhtml/,
			json: /\bjson\b/
		},

		responseFields: {
			xml: "responseXML",
			text: "responseText",
			json: "responseJSON"
		},

		// Data converters
		// Keys separate source (or catchall "*") and destination types with a single space
		converters: {

			// Convert anything to text
			"* text": String,

			// Text to html (true = no transformation)
			"text html": true,

			// Evaluate text as a json expression
			"text json": JSON.parse,

			// Parse text as xml
			"text xml": jQuery.parseXML
		},

		// For options that shouldn't be deep extended:
		// you can add your own custom options here if
		// and when you create one that shouldn't be
		// deep extended (see ajaxExtend)
		flatOptions: {
			url: true,
			context: true
		}
	},

	// Creates a full fledged settings object into target
	// with both ajaxSettings and settings fields.
	// If target is omitted, writes into ajaxSettings.
	ajaxSetup: function( target, settings ) {
		return settings ?

			// Building a settings object
			ajaxExtend( ajaxExtend( target, jQuery.ajaxSettings ), settings ) :

			// Extending ajaxSettings
			ajaxExtend( jQuery.ajaxSettings, target );
	},

	ajaxPrefilter: addToPrefiltersOrTransports( prefilters ),
	ajaxTransport: addToPrefiltersOrTransports( transports ),

	// Main method
	ajax: function( url, options ) {

		// If url is an object, simulate pre-1.5 signature
		if ( typeof url === "object" ) {
			options = url;
			url = undefined;
		}

		// Force options to be an object
		options = options || {};

		var transport,

			// URL without anti-cache param
			cacheURL,

			// Response headers
			responseHeadersString,
			responseHeaders,

			// timeout handle
			timeoutTimer,

			// Url cleanup var
			urlAnchor,

			// Request state (becomes false upon send and true upon completion)
			completed,

			// To know if global events are to be dispatched
			fireGlobals,

			// Loop variable
			i,

			// uncached part of the url
			uncached,

			// Create the final options object
			s = jQuery.ajaxSetup( {}, options ),

			// Callbacks context
			callbackContext = s.context || s,

			// Context for global events is callbackContext if it is a DOM node or jQuery collection
			globalEventContext = s.context &&
				( callbackContext.nodeType || callbackContext.jquery ) ?
				jQuery( callbackContext ) :
				jQuery.event,

			// Deferreds
			deferred = jQuery.Deferred(),
			completeDeferred = jQuery.Callbacks( "once memory" ),

			// Status-dependent callbacks
			statusCode = s.statusCode || {},

			// Headers (they are sent all at once)
			requestHeaders = {},
			requestHeadersNames = {},

			// Default abort message
			strAbort = "canceled",

			// Fake xhr
			jqXHR = {
				readyState: 0,

				// Builds headers hashtable if needed
				getResponseHeader: function( key ) {
					var match;
					if ( completed ) {
						if ( !responseHeaders ) {
							responseHeaders = {};
							while ( ( match = rheaders.exec( responseHeadersString ) ) ) {
								responseHeaders[ match[ 1 ].toLowerCase() + " " ] =
									( responseHeaders[ match[ 1 ].toLowerCase() + " " ] || [] )
										.concat( match[ 2 ] );
							}
						}
						match = responseHeaders[ key.toLowerCase() + " " ];
					}
					return match == null ? null : match.join( ", " );
				},

				// Raw string
				getAllResponseHeaders: function() {
					return completed ? responseHeadersString : null;
				},

				// Caches the header
				setRequestHeader: function( name, value ) {
					if ( completed == null ) {
						name = requestHeadersNames[ name.toLowerCase() ] =
							requestHeadersNames[ name.toLowerCase() ] || name;
						requestHeaders[ name ] = value;
					}
					return this;
				},

				// Overrides response content-type header
				overrideMimeType: function( type ) {
					if ( completed == null ) {
						s.mimeType = type;
					}
					return this;
				},

				// Status-dependent callbacks
				statusCode: function( map ) {
					var code;
					if ( map ) {
						if ( completed ) {

							// Execute the appropriate callbacks
							jqXHR.always( map[ jqXHR.status ] );
						} else {

							// Lazy-add the new callbacks in a way that preserves old ones
							for ( code in map ) {
								statusCode[ code ] = [ statusCode[ code ], map[ code ] ];
							}
						}
					}
					return this;
				},

				// Cancel the request
				abort: function( statusText ) {
					var finalText = statusText || strAbort;
					if ( transport ) {
						transport.abort( finalText );
					}
					done( 0, finalText );
					return this;
				}
			};

		// Attach deferreds
		deferred.promise( jqXHR );

		// Add protocol if not provided (prefilters might expect it)
		// Handle falsy url in the settings object (trac-10093: consistency with old signature)
		// We also use the url parameter if available
		s.url = ( ( url || s.url || location.href ) + "" )
			.replace( rprotocol, location.protocol + "//" );

		// Alias method option to type as per ticket trac-12004
		s.type = options.method || options.type || s.method || s.type;

		// Extract dataTypes list
		s.dataTypes = ( s.dataType || "*" ).toLowerCase().match( rnothtmlwhite ) || [ "" ];

		// A cross-domain request is in order when the origin doesn't match the current origin.
		if ( s.crossDomain == null ) {
			urlAnchor = document.createElement( "a" );

			// Support: IE <=8 - 11, Edge 12 - 15
			// IE throws exception on accessing the href property if url is malformed,
			// e.g. http://example.com:80x/
			try {
				urlAnchor.href = s.url;

				// Support: IE <=8 - 11 only
				// Anchor's host property isn't correctly set when s.url is relative
				urlAnchor.href = urlAnchor.href;
				s.crossDomain = originAnchor.protocol + "//" + originAnchor.host !==
					urlAnchor.protocol + "//" + urlAnchor.host;
			} catch ( e ) {

				// If there is an error parsing the URL, assume it is crossDomain,
				// it can be rejected by the transport if it is invalid
				s.crossDomain = true;
			}
		}

		// Convert data if not already a string
		if ( s.data && s.processData && typeof s.data !== "string" ) {
			s.data = jQuery.param( s.data, s.traditional );
		}

		// Apply prefilters
		inspectPrefiltersOrTransports( prefilters, s, options, jqXHR );

		// If request was aborted inside a prefilter, stop there
		if ( completed ) {
			return jqXHR;
		}

		// We can fire global events as of now if asked to
		// Don't fire events if jQuery.event is undefined in an AMD-usage scenario (trac-15118)
		fireGlobals = jQuery.event && s.global;

		// Watch for a new set of requests
		if ( fireGlobals && jQuery.active++ === 0 ) {
			jQuery.event.trigger( "ajaxStart" );
		}

		// Uppercase the type
		s.type = s.type.toUpperCase();

		// Determine if request has content
		s.hasContent = !rnoContent.test( s.type );

		// Save the URL in case we're toying with the If-Modified-Since
		// and/or If-None-Match header later on
		// Remove hash to simplify url manipulation
		cacheURL = s.url.replace( rhash, "" );

		// More options handling for requests with no content
		if ( !s.hasContent ) {

			// Remember the hash so we can put it back
			uncached = s.url.slice( cacheURL.length );

			// If data is available and should be processed, append data to url
			if ( s.data && ( s.processData || typeof s.data === "string" ) ) {
				cacheURL += ( rquery.test( cacheURL ) ? "&" : "?" ) + s.data;

				// trac-9682: remove data so that it's not used in an eventual retry
				delete s.data;
			}

			// Add or update anti-cache param if needed
			if ( s.cache === false ) {
				cacheURL = cacheURL.replace( rantiCache, "$1" );
				uncached = ( rquery.test( cacheURL ) ? "&" : "?" ) + "_=" + ( nonce.guid++ ) +
					uncached;
			}

			// Put hash and anti-cache on the URL that will be requested (gh-1732)
			s.url = cacheURL + uncached;

		// Change '%20' to '+' if this is encoded form body content (gh-2658)
		} else if ( s.data && s.processData &&
			( s.contentType || "" ).indexOf( "application/x-www-form-urlencoded" ) === 0 ) {
			s.data = s.data.replace( r20, "+" );
		}

		// Set the If-Modified-Since and/or If-None-Match header, if in ifModified mode.
		if ( s.ifModified ) {
			if ( jQuery.lastModified[ cacheURL ] ) {
				jqXHR.setRequestHeader( "If-Modified-Since", jQuery.lastModified[ cacheURL ] );
			}
			if ( jQuery.etag[ cacheURL ] ) {
				jqXHR.setRequestHeader( "If-None-Match", jQuery.etag[ cacheURL ] );
			}
		}

		// Set the correct header, if data is being sent
		if ( s.data && s.hasContent && s.contentType !== false || options.contentType ) {
			jqXHR.setRequestHeader( "Content-Type", s.contentType );
		}

		// Set the Accepts header for the server, depending on the dataType
		jqXHR.setRequestHeader(
			"Accept",
			s.dataTypes[ 0 ] && s.accepts[ s.dataTypes[ 0 ] ] ?
				s.accepts[ s.dataTypes[ 0 ] ] +
					( s.dataTypes[ 0 ] !== "*" ? ", " + allTypes + "; q=0.01" : "" ) :
				s.accepts[ "*" ]
		);

		// Check for headers option
		for ( i in s.headers ) {
			jqXHR.setRequestHeader( i, s.headers[ i ] );
		}

		// Allow custom headers/mimetypes and early abort
		if ( s.beforeSend &&
			( s.beforeSend.call( callbackContext, jqXHR, s ) === false || completed ) ) {

			// Abort if not done already and return
			return jqXHR.abort();
		}

		// Aborting is no longer a cancellation
		strAbort = "abort";

		// Install callbacks on deferreds
		completeDeferred.add( s.complete );
		jqXHR.done( s.success );
		jqXHR.fail( s.error );

		// Get transport
		transport = inspectPrefiltersOrTransports( transports, s, options, jqXHR );

		// If no transport, we auto-abort
		if ( !transport ) {
			done( -1, "No Transport" );
		} else {
			jqXHR.readyState = 1;

			// Send global event
			if ( fireGlobals ) {
				globalEventContext.trigger( "ajaxSend", [ jqXHR, s ] );
			}

			// If request was aborted inside ajaxSend, stop there
			if ( completed ) {
				return jqXHR;
			}

			// Timeout
			if ( s.async && s.timeout > 0 ) {
				timeoutTimer = window.setTimeout( function() {
					jqXHR.abort( "timeout" );
				}, s.timeout );
			}

			try {
				completed = false;
				transport.send( requestHeaders, done );
			} catch ( e ) {

				// Rethrow post-completion exceptions
				if ( completed ) {
					throw e;
				}

				// Propagate others as results
				done( -1, e );
			}
		}

		// Callback for when everything is done
		function done( status, nativeStatusText, responses, headers ) {
			var isSuccess, success, error, response, modified,
				statusText = nativeStatusText;

			// Ignore repeat invocations
			if ( completed ) {
				return;
			}

			completed = true;

			// Clear timeout if it exists
			if ( timeoutTimer ) {
				window.clearTimeout( timeoutTimer );
			}

			// Dereference transport for early garbage collection
			// (no matter how long the jqXHR object will be used)
			transport = undefined;

			// Cache response headers
			responseHeadersString = headers || "";

			// Set readyState
			jqXHR.readyState = status > 0 ? 4 : 0;

			// Determine if successful
			isSuccess = status >= 200 && status < 300 || status === 304;

			// Get response data
			if ( responses ) {
				response = ajaxHandleResponses( s, jqXHR, responses );
			}

			// Use a noop converter for missing script but not if jsonp
			if ( !isSuccess &&
				jQuery.inArray( "script", s.dataTypes ) > -1 &&
				jQuery.inArray( "json", s.dataTypes ) < 0 ) {
				s.converters[ "text script" ] = function() {};
			}

			// Convert no matter what (that way responseXXX fields are always set)
			response = ajaxConvert( s, response, jqXHR, isSuccess );

			// If successful, handle type chaining
			if ( isSuccess ) {

				// Set the If-Modified-Since and/or If-None-Match header, if in ifModified mode.
				if ( s.ifModified ) {
					modified = jqXHR.getResponseHeader( "Last-Modified" );
					if ( modified ) {
						jQuery.lastModified[ cacheURL ] = modified;
					}
					modified = jqXHR.getResponseHeader( "etag" );
					if ( modified ) {
						jQuery.etag[ cacheURL ] = modified;
					}
				}

				// if no content
				if ( status === 204 || s.type === "HEAD" ) {
					statusText = "nocontent";

				// if not modified
				} else if ( status === 304 ) {
					statusText = "notmodified";

				// If we have data, let's convert it
				} else {
					statusText = response.state;
					success = response.data;
					error = response.error;
					isSuccess = !error;
				}
			} else {

				// Extract error from statusText and normalize for non-aborts
				error = statusText;
				if ( status || !statusText ) {
					statusText = "error";
					if ( status < 0 ) {
						status = 0;
					}
				}
			}

			// Set data for the fake xhr object
			jqXHR.status = status;
			jqXHR.statusText = ( nativeStatusText || statusText ) + "";

			// Success/Error
			if ( isSuccess ) {
				deferred.resolveWith( callbackContext, [ success, statusText, jqXHR ] );
			} else {
				deferred.rejectWith( callbackContext, [ jqXHR, statusText, error ] );
			}

			// Status-dependent callbacks
			jqXHR.statusCode( statusCode );
			statusCode = undefined;

			if ( fireGlobals ) {
				globalEventContext.trigger( isSuccess ? "ajaxSuccess" : "ajaxError",
					[ jqXHR, s, isSuccess ? success : error ] );
			}

			// Complete
			completeDeferred.fireWith( callbackContext, [ jqXHR, statusText ] );

			if ( fireGlobals ) {
				globalEventContext.trigger( "ajaxComplete", [ jqXHR, s ] );

				// Handle the global AJAX counter
				if ( !( --jQuery.active ) ) {
					jQuery.event.trigger( "ajaxStop" );
				}
			}
		}

		return jqXHR;
	},

	getJSON: function( url, data, callback ) {
		return jQuery.get( url, data, callback, "json" );
	},

	getScript: function( url, callback ) {
		return jQuery.get( url, undefined, callback, "script" );
	}
} );

jQuery.each( [ "get", "post" ], function( _i, method ) {
	jQuery[ method ] = function( url, data, callback, type ) {

		// Shift arguments if data argument was omitted
		if ( isFunction( data ) ) {
			type = type || callback;
			callback = data;
			data = undefined;
		}

		// The url can be an options object (which then must have .url)
		return jQuery.ajax( jQuery.extend( {
			url: url,
			type: method,
			dataType: type,
			data: data,
			success: callback
		}, jQuery.isPlainObject( url ) && url ) );
	};
} );

jQuery.ajaxPrefilter( function( s ) {
	var i;
	for ( i in s.headers ) {
		if ( i.toLowerCase() === "content-type" ) {
			s.contentType = s.headers[ i ] || "";
		}
	}
} );


jQuery._evalUrl = function( url, options, doc ) {
	return jQuery.ajax( {
		url: url,

		// Make this explicit, since user can override this through ajaxSetup (trac-11264)
		type: "GET",
		dataType: "script",
		cache: true,
		async: false,
		global: false,

		// Only evaluate the response if it is successful (gh-4126)
		// dataFilter is not invoked for failure responses, so using it instead
		// of the default converter is kludgy but it works.
		converters: {
			"text script": function() {}
		},
		dataFilter: function( response ) {
			jQuery.globalEval( response, options, doc );
		}
	} );
};


jQuery.fn.extend( {
	wrapAll: function( html ) {
		var wrap;

		if ( this[ 0 ] ) {
			if ( isFunction( html ) ) {
				html = html.call( this[ 0 ] );
			}

			// The elements to wrap the target around
			wrap = jQuery( html, this[ 0 ].ownerDocument ).eq( 0 ).clone( true );

			if ( this[ 0 ].parentNode ) {
				wrap.insertBefore( this[ 0 ] );
			}

			wrap.map( function() {
				var elem = this;

				while ( elem.firstElementChild ) {
					elem = elem.firstElementChild;
				}

				return elem;
			} ).append( this );
		}

		return this;
	},

	wrapInner: function( html ) {
		if ( isFunction( html ) ) {
			return this.each( function( i ) {
				jQuery( this ).wrapInner( html.call( this, i ) );
			} );
		}

		return this.each( function() {
			var self = jQuery( this ),
				contents = self.contents();

			if ( contents.length ) {
				contents.wrapAll( html );

			} else {
				self.append( html );
			}
		} );
	},

	wrap: function( html ) {
		var htmlIsFunction = isFunction( html );

		return this.each( function( i ) {
			jQuery( this ).wrapAll( htmlIsFunction ? html.call( this, i ) : html );
		} );
	},

	unwrap: function( selector ) {
		this.parent( selector ).not( "body" ).each( function() {
			jQuery( this ).replaceWith( this.childNodes );
		} );
		return this;
	}
} );


jQuery.expr.pseudos.hidden = function( elem ) {
	return !jQuery.expr.pseudos.visible( elem );
};
jQuery.expr.pseudos.visible = function( elem ) {
	return !!( elem.offsetWidth || elem.offsetHeight || elem.getClientRects().length );
};




jQuery.ajaxSettings.xhr = function() {
	try {
		return new window.XMLHttpRequest();
	} catch ( e ) {}
};

var xhrSuccessStatus = {

		// File protocol always yields status code 0, assume 200
		0: 200,

		// Support: IE <=9 only
		// trac-1450: sometimes IE returns 1223 when it should be 204
		1223: 204
	},
	xhrSupported = jQuery.ajaxSettings.xhr();

support.cors = !!xhrSupported && ( "withCredentials" in xhrSupported );
support.ajax = xhrSupported = !!xhrSupported;

jQuery.ajaxTransport( function( options ) {
	var callback, errorCallback;

	// Cross domain only allowed if supported through XMLHttpRequest
	if ( support.cors || xhrSupported && !options.crossDomain ) {
		return {
			send: function( headers, complete ) {
				var i,
					xhr = options.xhr();

				xhr.open(
					options.type,
					options.url,
					options.async,
					options.username,
					options.password
				);

				// Apply custom fields if provided
				if ( options.xhrFields ) {
					for ( i in options.xhrFields ) {
						xhr[ i ] = options.xhrFields[ i ];
					}
				}

				// Override mime type if needed
				if ( options.mimeType && xhr.overrideMimeType ) {
					xhr.overrideMimeType( options.mimeType );
				}

				// X-Requested-With header
				// For cross-domain requests, seeing as conditions for a preflight are
				// akin to a jigsaw puzzle, we simply never set it to be sure.
				// (it can always be set on a per-request basis or even using ajaxSetup)
				// For same-domain requests, won't change header if already provided.
				if ( !options.crossDomain && !headers[ "X-Requested-With" ] ) {
					headers[ "X-Requested-With" ] = "XMLHttpRequest";
				}

				// Set headers
				for ( i in headers ) {
					xhr.setRequestHeader( i, headers[ i ] );
				}

				// Callback
				callback = function( type ) {
					return function() {
						if ( callback ) {
							callback = errorCallback = xhr.onload =
								xhr.onerror = xhr.onabort = xhr.ontimeout =
									xhr.onreadystatechange = null;

							if ( type === "abort" ) {
								xhr.abort();
							} else if ( type === "error" ) {

								// Support: IE <=9 only
								// On a manual native abort, IE9 throws
								// errors on any property access that is not readyState
								if ( typeof xhr.status !== "number" ) {
									complete( 0, "error" );
								} else {
									complete(

										// File: protocol always yields status 0; see trac-8605, trac-14207
										xhr.status,
										xhr.statusText
									);
								}
							} else {
								complete(
									xhrSuccessStatus[ xhr.status ] || xhr.status,
									xhr.statusText,

									// Support: IE <=9 only
									// IE9 has no XHR2 but throws on binary (trac-11426)
									// For XHR2 non-text, let the caller handle it (gh-2498)
									( xhr.responseType || "text" ) !== "text"  ||
									typeof xhr.responseText !== "string" ?
										{ binary: xhr.response } :
										{ text: xhr.responseText },
									xhr.getAllResponseHeaders()
								);
							}
						}
					};
				};

				// Listen to events
				xhr.onload = callback();
				errorCallback = xhr.onerror = xhr.ontimeout = callback( "error" );

				// Support: IE 9 only
				// Use onreadystatechange to replace onabort
				// to handle uncaught aborts
				if ( xhr.onabort !== undefined ) {
					xhr.onabort = errorCallback;
				} else {
					xhr.onreadystatechange = function() {

						// Check readyState before timeout as it changes
						if ( xhr.readyState === 4 ) {

							// Allow onerror to be called first,
							// but that will not handle a native abort
							// Also, save errorCallback to a variable
							// as xhr.onerror cannot be accessed
							window.setTimeout( function() {
								if ( callback ) {
									errorCallback();
								}
							} );
						}
					};
				}

				// Create the abort callback
				callback = callback( "abort" );

				try {

					// Do send the request (this may raise an exception)
					xhr.send( options.hasContent && options.data || null );
				} catch ( e ) {

					// trac-14683: Only rethrow if this hasn't been notified as an error yet
					if ( callback ) {
						throw e;
					}
				}
			},

			abort: function() {
				if ( callback ) {
					callback();
				}
			}
		};
	}
} );




// Prevent auto-execution of scripts when no explicit dataType was provided (See gh-2432)
jQuery.ajaxPrefilter( function( s ) {
	if ( s.crossDomain ) {
		s.contents.script = false;
	}
} );

// Install script dataType
jQuery.ajaxSetup( {
	accepts: {
		script: "text/javascript, application/javascript, " +
			"application/ecmascript, application/x-ecmascript"
	},
	contents: {
		script: /\b(?:java|ecma)script\b/
	},
	converters: {
		"text script": function( text ) {
			jQuery.globalEval( text );
			return text;
		}
	}
} );

// Handle cache's special case and crossDomain
jQuery.ajaxPrefilter( "script", function( s ) {
	if ( s.cache === undefined ) {
		s.cache = false;
	}
	if ( s.crossDomain ) {
		s.type = "GET";
	}
} );

// Bind script tag hack transport
jQuery.ajaxTransport( "script", function( s ) {

	// This transport only deals with cross domain or forced-by-attrs requests
	if ( s.crossDomain || s.scriptAttrs ) {
		var script, callback;
		return {
			send: function( _, complete ) {
				script = jQuery( "<script>" )
					.attr( s.scriptAttrs || {} )
					.prop( { charset: s.scriptCharset, src: s.url } )
					.on( "load error", callback = function( evt ) {
						script.remove();
						callback = null;
						if ( evt ) {
							complete( evt.type === "error" ? 404 : 200, evt.type );
						}
					} );

				// Use native DOM manipulation to avoid our domManip AJAX trickery
				document.head.appendChild( script[ 0 ] );
			},
			abort: function() {
				if ( callback ) {
					callback();
				}
			}
		};
	}
} );




var oldCallbacks = [],
	rjsonp = /(=)\?(?=&|$)|\?\?/;

// Default jsonp settings
jQuery.ajaxSetup( {
	jsonp: "callback",
	jsonpCallback: function() {
		var callback = oldCallbacks.pop() || ( jQuery.expando + "_" + ( nonce.guid++ ) );
		this[ callback ] = true;
		return callback;
	}
} );

// Detect, normalize options and install callbacks for jsonp requests
jQuery.ajaxPrefilter( "json jsonp", function( s, originalSettings, jqXHR ) {

	var callbackName, overwritten, responseContainer,
		jsonProp = s.jsonp !== false && ( rjsonp.test( s.url ) ?
			"url" :
			typeof s.data === "string" &&
				( s.contentType || "" )
					.indexOf( "application/x-www-form-urlencoded" ) === 0 &&
				rjsonp.test( s.data ) && "data"
		);

	// Handle iff the expected data type is "jsonp" or we have a parameter to set
	if ( jsonProp || s.dataTypes[ 0 ] === "jsonp" ) {

		// Get callback name, remembering preexisting value associated with it
		callbackName = s.jsonpCallback = isFunction( s.jsonpCallback ) ?
			s.jsonpCallback() :
			s.jsonpCallback;

		// Insert callback into url or form data
		if ( jsonProp ) {
			s[ jsonProp ] = s[ jsonProp ].replace( rjsonp, "$1" + callbackName );
		} else if ( s.jsonp !== false ) {
			s.url += ( rquery.test( s.url ) ? "&" : "?" ) + s.jsonp + "=" + callbackName;
		}

		// Use data converter to retrieve json after script execution
		s.converters[ "script json" ] = function() {
			if ( !responseContainer ) {
				jQuery.error( callbackName + " was not called" );
			}
			return responseContainer[ 0 ];
		};

		// Force json dataType
		s.dataTypes[ 0 ] = "json";

		// Install callback
		overwritten = window[ callbackName ];
		window[ callbackName ] = function() {
			responseContainer = arguments;
		};

		// Clean-up function (fires after converters)
		jqXHR.always( function() {

			// If previous value didn't exist - remove it
			if ( overwritten === undefined ) {
				jQuery( window ).removeProp( callbackName );

			// Otherwise restore preexisting value
			} else {
				window[ callbackName ] = overwritten;
			}

			// Save back as free
			if ( s[ callbackName ] ) {

				// Make sure that re-using the options doesn't screw things around
				s.jsonpCallback = originalSettings.jsonpCallback;

				// Save the callback name for future use
				oldCallbacks.push( callbackName );
			}

			// Call if it was a function and we have a response
			if ( responseContainer && isFunction( overwritten ) ) {
				overwritten( responseContainer[ 0 ] );
			}

			responseContainer = overwritten = undefined;
		} );

		// Delegate to script
		return "script";
	}
} );




// Support: Safari 8 only
// In Safari 8 documents created via document.implementation.createHTMLDocument
// collapse sibling forms: the second one becomes a child of the first one.
// Because of that, this security measure has to be disabled in Safari 8.
// https://bugs.webkit.org/show_bug.cgi?id=137337
support.createHTMLDocument = ( function() {
	var body = document.implementation.createHTMLDocument( "" ).body;
	body.innerHTML = "<form></form><form></form>";
	return body.childNodes.length === 2;
} )();


// Argument "data" should be string of html
// context (optional): If specified, the fragment will be created in this context,
// defaults to document
// keepScripts (optional): If true, will include scripts passed in the html string
jQuery.parseHTML = function( data, context, keepScripts ) {
	if ( typeof data !== "string" ) {
		return [];
	}
	if ( typeof context === "boolean" ) {
		keepScripts = context;
		context = false;
	}

	var base, parsed, scripts;

	if ( !context ) {

		// Stop scripts or inline event handlers from being executed immediately
		// by using document.implementation
		if ( support.createHTMLDocument ) {
			context = document.implementation.createHTMLDocument( "" );

			// Set the base href for the created document
			// so any parsed elements with URLs
			// are based on the document's URL (gh-2965)
			base = context.createElement( "base" );
			base.href = document.location.href;
			context.head.appendChild( base );
		} else {
			context = document;
		}
	}

	parsed = rsingleTag.exec( data );
	scripts = !keepScripts && [];

	// Single tag
	if ( parsed ) {
		return [ context.createElement( parsed[ 1 ] ) ];
	}

	parsed = buildFragment( [ data ], context, scripts );

	if ( scripts && scripts.length ) {
		jQuery( scripts ).remove();
	}

	return jQuery.merge( [], parsed.childNodes );
};


/**
 * Load a url into a page
 */
jQuery.fn.load = function( url, params, callback ) {
	var selector, type, response,
		self = this,
		off = url.indexOf( " " );

	if ( off > -1 ) {
		selector = stripAndCollapse( url.slice( off ) );
		url = url.slice( 0, off );
	}

	// If it's a function
	if ( isFunction( params ) ) {

		// We assume that it's the callback
		callback = params;
		params = undefined;

	// Otherwise, build a param string
	} else if ( params && typeof params === "object" ) {
		type = "POST";
	}

	// If we have elements to modify, make the request
	if ( self.length > 0 ) {
		jQuery.ajax( {
			url: url,

			// If "type" variable is undefined, then "GET" method will be used.
			// Make value of this field explicit since
			// user can override it through ajaxSetup method
			type: type || "GET",
			dataType: "html",
			data: params
		} ).done( function( responseText ) {

			// Save response for use in complete callback
			response = arguments;

			self.html( selector ?

				// If a selector was specified, locate the right elements in a dummy div
				// Exclude scripts to avoid IE 'Permission Denied' errors
				jQuery( "<div>" ).append( jQuery.parseHTML( responseText ) ).find( selector ) :

				// Otherwise use the full result
				responseText );

		// If the request succeeds, this function gets "data", "status", "jqXHR"
		// but they are ignored because response was set above.
		// If it fails, this function gets "jqXHR", "status", "error"
		} ).always( callback && function( jqXHR, status ) {
			self.each( function() {
				callback.apply( this, response || [ jqXHR.responseText, status, jqXHR ] );
			} );
		} );
	}

	return this;
};




jQuery.expr.pseudos.animated = function( elem ) {
	return jQuery.grep( jQuery.timers, function( fn ) {
		return elem === fn.elem;
	} ).length;
};




jQuery.offset = {
	setOffset: function( elem, options, i ) {
		var curPosition, curLeft, curCSSTop, curTop, curOffset, curCSSLeft, calculatePosition,
			position = jQuery.css( elem, "position" ),
			curElem = jQuery( elem ),
			props = {};

		// Set position first, in-case top/left are set even on static elem
		if ( position === "static" ) {
			elem.style.position = "relative";
		}

		curOffset = curElem.offset();
		curCSSTop = jQuery.css( elem, "top" );
		curCSSLeft = jQuery.css( elem, "left" );
		calculatePosition = ( position === "absolute" || position === "fixed" ) &&
			( curCSSTop + curCSSLeft ).indexOf( "auto" ) > -1;

		// Need to be able to calculate position if either
		// top or left is auto and position is either absolute or fixed
		if ( calculatePosition ) {
			curPosition = curElem.position();
			curTop = curPosition.top;
			curLeft = curPosition.left;

		} else {
			curTop = parseFloat( curCSSTop ) || 0;
			curLeft = parseFloat( curCSSLeft ) || 0;
		}

		if ( isFunction( options ) ) {

			// Use jQuery.extend here to allow modification of coordinates argument (gh-1848)
			options = options.call( elem, i, jQuery.extend( {}, curOffset ) );
		}

		if ( options.top != null ) {
			props.top = ( options.top - curOffset.top ) + curTop;
		}
		if ( options.left != null ) {
			props.left = ( options.left - curOffset.left ) + curLeft;
		}

		if ( "using" in options ) {
			options.using.call( elem, props );

		} else {
			curElem.css( props );
		}
	}
};

jQuery.fn.extend( {

	// offset() relates an element's border box to the document origin
	offset: function( options ) {

		// Preserve chaining for setter
		if ( arguments.length ) {
			return options === undefined ?
				this :
				this.each( function( i ) {
					jQuery.offset.setOffset( this, options, i );
				} );
		}

		var rect, win,
			elem = this[ 0 ];

		if ( !elem ) {
			return;
		}

		// Return zeros for disconnected and hidden (display: none) elements (gh-2310)
		// Support: IE <=11 only
		// Running getBoundingClientRect on a
		// disconnected node in IE throws an error
		if ( !elem.getClientRects().length ) {
			return { top: 0, left: 0 };
		}

		// Get document-relative position by adding viewport scroll to viewport-relative gBCR
		rect = elem.getBoundingClientRect();
		win = elem.ownerDocument.defaultView;
		return {
			top: rect.top + win.pageYOffset,
			left: rect.left + win.pageXOffset
		};
	},

	// position() relates an element's margin box to its offset parent's padding box
	// This corresponds to the behavior of CSS absolute positioning
	position: function() {
		if ( !this[ 0 ] ) {
			return;
		}

		var offsetParent, offset, doc,
			elem = this[ 0 ],
			parentOffset = { top: 0, left: 0 };

		// position:fixed elements are offset from the viewport, which itself always has zero offset
		if ( jQuery.css( elem, "position" ) === "fixed" ) {

			// Assume position:fixed implies availability of getBoundingClientRect
			offset = elem.getBoundingClientRect();

		} else {
			offset = this.offset();

			// Account for the *real* offset parent, which can be the document or its root element
			// when a statically positioned element is identified
			doc = elem.ownerDocument;
			offsetParent = elem.offsetParent || doc.documentElement;
			while ( offsetParent &&
				( offsetParent === doc.body || offsetParent === doc.documentElement ) &&
				jQuery.css( offsetParent, "position" ) === "static" ) {

				offsetParent = offsetParent.parentNode;
			}
			if ( offsetParent && offsetParent !== elem && offsetParent.nodeType === 1 ) {

				// Incorporate borders into its offset, since they are outside its content origin
				parentOffset = jQuery( offsetParent ).offset();
				parentOffset.top += jQuery.css( offsetParent, "borderTopWidth", true );
				parentOffset.left += jQuery.css( offsetParent, "borderLeftWidth", true );
			}
		}

		// Subtract parent offsets and element margins
		return {
			top: offset.top - parentOffset.top - jQuery.css( elem, "marginTop", true ),
			left: offset.left - parentOffset.left - jQuery.css( elem, "marginLeft", true )
		};
	},

	// This method will return documentElement in the following cases:
	// 1) For the element inside the iframe without offsetParent, this method will return
	//    documentElement of the parent window
	// 2) For the hidden or detached element
	// 3) For body or html element, i.e. in case of the html node - it will return itself
	//
	// but those exceptions were never presented as a real life use-cases
	// and might be considered as more preferable results.
	//
	// This logic, however, is not guaranteed and can change at any point in the future
	offsetParent: function() {
		return this.map( function() {
			var offsetParent = this.offsetParent;

			while ( offsetParent && jQuery.css( offsetParent, "position" ) === "static" ) {
				offsetParent = offsetParent.offsetParent;
			}

			return offsetParent || documentElement;
		} );
	}
} );

// Create scrollLeft and scrollTop methods
jQuery.each( { scrollLeft: "pageXOffset", scrollTop: "pageYOffset" }, function( method, prop ) {
	var top = "pageYOffset" === prop;

	jQuery.fn[ method ] = function( val ) {
		return access( this, function( elem, method, val ) {

			// Coalesce documents and windows
			var win;
			if ( isWindow( elem ) ) {
				win = elem;
			} else if ( elem.nodeType === 9 ) {
				win = elem.defaultView;
			}

			if ( val === undefined ) {
				return win ? win[ prop ] : elem[ method ];
			}

			if ( win ) {
				win.scrollTo(
					!top ? val : win.pageXOffset,
					top ? val : win.pageYOffset
				);

			} else {
				elem[ method ] = val;
			}
		}, method, val, arguments.length );
	};
} );

// Support: Safari <=7 - 9.1, Chrome <=37 - 49
// Add the top/left cssHooks using jQuery.fn.position
// Webkit bug: https://bugs.webkit.org/show_bug.cgi?id=29084
// Blink bug: https://bugs.chromium.org/p/chromium/issues/detail?id=589347
// getComputedStyle returns percent when specified for top/left/bottom/right;
// rather than make the css module depend on the offset module, just check for it here
jQuery.each( [ "top", "left" ], function( _i, prop ) {
	jQuery.cssHooks[ prop ] = addGetHookIf( support.pixelPosition,
		function( elem, computed ) {
			if ( computed ) {
				computed = curCSS( elem, prop );

				// If curCSS returns percentage, fallback to offset
				return rnumnonpx.test( computed ) ?
					jQuery( elem ).position()[ prop ] + "px" :
					computed;
			}
		}
	);
} );


// Create innerHeight, innerWidth, height, width, outerHeight and outerWidth methods
jQuery.each( { Height: "height", Width: "width" }, function( name, type ) {
	jQuery.each( {
		padding: "inner" + name,
		content: type,
		"": "outer" + name
	}, function( defaultExtra, funcName ) {

		// Margin is only for outerHeight, outerWidth
		jQuery.fn[ funcName ] = function( margin, value ) {
			var chainable = arguments.length && ( defaultExtra || typeof margin !== "boolean" ),
				extra = defaultExtra || ( margin === true || value === true ? "margin" : "border" );

			return access( this, function( elem, type, value ) {
				var doc;

				if ( isWindow( elem ) ) {

					// $( window ).outerWidth/Height return w/h including scrollbars (gh-1729)
					return funcName.indexOf( "outer" ) === 0 ?
						elem[ "inner" + name ] :
						elem.document.documentElement[ "client" + name ];
				}

				// Get document width or height
				if ( elem.nodeType === 9 ) {
					doc = elem.documentElement;

					// Either scroll[Width/Height] or offset[Width/Height] or client[Width/Height],
					// whichever is greatest
					return Math.max(
						elem.body[ "scroll" + name ], doc[ "scroll" + name ],
						elem.body[ "offset" + name ], doc[ "offset" + name ],
						doc[ "client" + name ]
					);
				}

				return value === undefined ?

					// Get width or height on the element, requesting but not forcing parseFloat
					jQuery.css( elem, type, extra ) :

					// Set width or height on the element
					jQuery.style( elem, type, value, extra );
			}, type, chainable ? margin : undefined, chainable );
		};
	} );
} );


jQuery.each( [
	"ajaxStart",
	"ajaxStop",
	"ajaxComplete",
	"ajaxError",
	"ajaxSuccess",
	"ajaxSend"
], function( _i, type ) {
	jQuery.fn[ type ] = function( fn ) {
		return this.on( type, fn );
	};
} );




jQuery.fn.extend( {

	bind: function( types, data, fn ) {
		return this.on( types, null, data, fn );
	},
	unbind: function( types, fn ) {
		return this.off( types, null, fn );
	},

	delegate: function( selector, types, data, fn ) {
		return this.on( types, selector, data, fn );
	},
	undelegate: function( selector, types, fn ) {

		// ( namespace ) or ( selector, types [, fn] )
		return arguments.length === 1 ?
			this.off( selector, "**" ) :
			this.off( types, selector || "**", fn );
	},

	hover: function( fnOver, fnOut ) {
		return this
			.on( "mouseenter", fnOver )
			.on( "mouseleave", fnOut || fnOver );
	}
} );

jQuery.each(
	( "blur focus focusin focusout resize scroll click dblclick " +
	"mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave " +
	"change select submit keydown keypress keyup contextmenu" ).split( " " ),
	function( _i, name ) {

		// Handle event binding
		jQuery.fn[ name ] = function( data, fn ) {
			return arguments.length > 0 ?
				this.on( name, null, data, fn ) :
				this.trigger( name );
		};
	}
);




// Support: Android <=4.0 only
// Make sure we trim BOM and NBSP
// Require that the "whitespace run" starts from a non-whitespace
// to avoid O(N^2) behavior when the engine would try matching "\s+$" at each space position.
var rtrim = /^[\s\uFEFF\xA0]+|([^\s\uFEFF\xA0])[\s\uFEFF\xA0]+$/g;

// Bind a function to a context, optionally partially applying any
// arguments.
// jQuery.proxy is deprecated to promote standards (specifically Function#bind)
// However, it is not slated for removal any time soon
jQuery.proxy = function( fn, context ) {
	var tmp, args, proxy;

	if ( typeof context === "string" ) {
		tmp = fn[ context ];
		context = fn;
		fn = tmp;
	}

	// Quick check to determine if target is callable, in the spec
	// this throws a TypeError, but we will just return undefined.
	if ( !isFunction( fn ) ) {
		return undefined;
	}

	// Simulated bind
	args = slice.call( arguments, 2 );
	proxy = function() {
		return fn.apply( context || this, args.concat( slice.call( arguments ) ) );
	};

	// Set the guid of unique handler to the same of original handler, so it can be removed
	proxy.guid = fn.guid = fn.guid || jQuery.guid++;

	return proxy;
};

jQuery.holdReady = function( hold ) {
	if ( hold ) {
		jQuery.readyWait++;
	} else {
		jQuery.ready( true );
	}
};
jQuery.isArray = Array.isArray;
jQuery.parseJSON = JSON.parse;
jQuery.nodeName = nodeName;
jQuery.isFunction = isFunction;
jQuery.isWindow = isWindow;
jQuery.camelCase = camelCase;
jQuery.type = toType;

jQuery.now = Date.now;

jQuery.isNumeric = function( obj ) {

	// As of jQuery 3.0, isNumeric is limited to
	// strings and numbers (primitives or objects)
	// that can be coerced to finite numbers (gh-2662)
	var type = jQuery.type( obj );
	return ( type === "number" || type === "string" ) &&

		// parseFloat NaNs numeric-cast false positives ("")
		// ...but misinterprets leading-number strings, particularly hex literals ("0x...")
		// subtraction forces infinities to NaN
		!isNaN( obj - parseFloat( obj ) );
};

jQuery.trim = function( text ) {
	return text == null ?
		"" :
		( text + "" ).replace( rtrim, "$1" );
};



// Register as a named AMD module, since jQuery can be concatenated with other
// files that may use define, but not via a proper concatenation script that
// understands anonymous AMD modules. A named AMD is safest and most robust
// way to register. Lowercase jquery is used because AMD module names are
// derived from file names, and jQuery is normally delivered in a lowercase
// file name. Do this after creating the global so that if an AMD module wants
// to call noConflict to hide this version of jQuery, it will work.

// Note that for maximum portability, libraries that are not jQuery should
// declare themselves as anonymous modules, and avoid setting a global if an
// AMD loader is present. jQuery is a special case. For more information, see
// https://github.com/jrburke/requirejs/wiki/Updating-existing-libraries#wiki-anon

if ( true ) {
	!(__WEBPACK_AMD_DEFINE_ARRAY__ = [], __WEBPACK_AMD_DEFINE_RESULT__ = (function() {
		return jQuery;
	}).apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__),
		__WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__));
}




var

	// Map over jQuery in case of overwrite
	_jQuery = window.jQuery,

	// Map over the $ in case of overwrite
	_$ = window.$;

jQuery.noConflict = function( deep ) {
	if ( window.$ === jQuery ) {
		window.$ = _$;
	}

	if ( deep && window.jQuery === jQuery ) {
		window.jQuery = _jQuery;
	}

	return jQuery;
};

// Expose jQuery and $ identifiers, even in AMD
// (trac-7102#comment:10, https://github.com/jquery/jquery/pull/557)
// and CommonJS for browser emulators (trac-13566)
if ( typeof noGlobal === "undefined" ) {
	window.jQuery = window.$ = jQuery;
}




return jQuery;
} );


/***/ }),

/***/ 5177:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

var _typeof = (__webpack_require__(20474)["default"]);
var _Object$defineProperty = __webpack_require__(99685);
var _Symbol = __webpack_require__(3015);
var _Object$create = __webpack_require__(78341);
var _Object$getPrototypeOf = __webpack_require__(5626);
var _forEachInstanceProperty = __webpack_require__(49756);
var _pushInstanceProperty = __webpack_require__(50650);
var _Object$setPrototypeOf = __webpack_require__(42186);
var _Promise = __webpack_require__(74690);
var _reverseInstanceProperty = __webpack_require__(24440);
var _sliceInstanceProperty = __webpack_require__(26231);
function _regeneratorRuntime() {
  "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */
  module.exports = _regeneratorRuntime = function _regeneratorRuntime() {
    return e;
  }, module.exports.__esModule = true, module.exports["default"] = module.exports;
  var t,
    e = {},
    r = Object.prototype,
    n = r.hasOwnProperty,
    o = _Object$defineProperty || function (t, e, r) {
      t[e] = r.value;
    },
    i = "function" == typeof _Symbol ? _Symbol : {},
    a = i.iterator || "@@iterator",
    c = i.asyncIterator || "@@asyncIterator",
    u = i.toStringTag || "@@toStringTag";
  function define(t, e, r) {
    return _Object$defineProperty(t, e, {
      value: r,
      enumerable: !0,
      configurable: !0,
      writable: !0
    }), t[e];
  }
  try {
    define({}, "");
  } catch (t) {
    define = function define(t, e, r) {
      return t[e] = r;
    };
  }
  function wrap(t, e, r, n) {
    var i = e && e.prototype instanceof Generator ? e : Generator,
      a = _Object$create(i.prototype),
      c = new Context(n || []);
    return o(a, "_invoke", {
      value: makeInvokeMethod(t, r, c)
    }), a;
  }
  function tryCatch(t, e, r) {
    try {
      return {
        type: "normal",
        arg: t.call(e, r)
      };
    } catch (t) {
      return {
        type: "throw",
        arg: t
      };
    }
  }
  e.wrap = wrap;
  var h = "suspendedStart",
    l = "suspendedYield",
    f = "executing",
    s = "completed",
    y = {};
  function Generator() {}
  function GeneratorFunction() {}
  function GeneratorFunctionPrototype() {}
  var p = {};
  define(p, a, function () {
    return this;
  });
  var d = _Object$getPrototypeOf,
    v = d && d(d(values([])));
  v && v !== r && n.call(v, a) && (p = v);
  var g = GeneratorFunctionPrototype.prototype = Generator.prototype = _Object$create(p);
  function defineIteratorMethods(t) {
    var _context;
    _forEachInstanceProperty(_context = ["next", "throw", "return"]).call(_context, function (e) {
      define(t, e, function (t) {
        return this._invoke(e, t);
      });
    });
  }
  function AsyncIterator(t, e) {
    function invoke(r, o, i, a) {
      var c = tryCatch(t[r], t, o);
      if ("throw" !== c.type) {
        var u = c.arg,
          h = u.value;
        return h && "object" == _typeof(h) && n.call(h, "__await") ? e.resolve(h.__await).then(function (t) {
          invoke("next", t, i, a);
        }, function (t) {
          invoke("throw", t, i, a);
        }) : e.resolve(h).then(function (t) {
          u.value = t, i(u);
        }, function (t) {
          return invoke("throw", t, i, a);
        });
      }
      a(c.arg);
    }
    var r;
    o(this, "_invoke", {
      value: function value(t, n) {
        function callInvokeWithMethodAndArg() {
          return new e(function (e, r) {
            invoke(t, n, e, r);
          });
        }
        return r = r ? r.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg();
      }
    });
  }
  function makeInvokeMethod(e, r, n) {
    var o = h;
    return function (i, a) {
      if (o === f) throw new Error("Generator is already running");
      if (o === s) {
        if ("throw" === i) throw a;
        return {
          value: t,
          done: !0
        };
      }
      for (n.method = i, n.arg = a;;) {
        var c = n.delegate;
        if (c) {
          var u = maybeInvokeDelegate(c, n);
          if (u) {
            if (u === y) continue;
            return u;
          }
        }
        if ("next" === n.method) n.sent = n._sent = n.arg;else if ("throw" === n.method) {
          if (o === h) throw o = s, n.arg;
          n.dispatchException(n.arg);
        } else "return" === n.method && n.abrupt("return", n.arg);
        o = f;
        var p = tryCatch(e, r, n);
        if ("normal" === p.type) {
          if (o = n.done ? s : l, p.arg === y) continue;
          return {
            value: p.arg,
            done: n.done
          };
        }
        "throw" === p.type && (o = s, n.method = "throw", n.arg = p.arg);
      }
    };
  }
  function maybeInvokeDelegate(e, r) {
    var n = r.method,
      o = e.iterator[n];
    if (o === t) return r.delegate = null, "throw" === n && e.iterator["return"] && (r.method = "return", r.arg = t, maybeInvokeDelegate(e, r), "throw" === r.method) || "return" !== n && (r.method = "throw", r.arg = new TypeError("The iterator does not provide a '" + n + "' method")), y;
    var i = tryCatch(o, e.iterator, r.arg);
    if ("throw" === i.type) return r.method = "throw", r.arg = i.arg, r.delegate = null, y;
    var a = i.arg;
    return a ? a.done ? (r[e.resultName] = a.value, r.next = e.nextLoc, "return" !== r.method && (r.method = "next", r.arg = t), r.delegate = null, y) : a : (r.method = "throw", r.arg = new TypeError("iterator result is not an object"), r.delegate = null, y);
  }
  function pushTryEntry(t) {
    var _context2;
    var e = {
      tryLoc: t[0]
    };
    1 in t && (e.catchLoc = t[1]), 2 in t && (e.finallyLoc = t[2], e.afterLoc = t[3]), _pushInstanceProperty(_context2 = this.tryEntries).call(_context2, e);
  }
  function resetTryEntry(t) {
    var e = t.completion || {};
    e.type = "normal", delete e.arg, t.completion = e;
  }
  function Context(t) {
    this.tryEntries = [{
      tryLoc: "root"
    }], _forEachInstanceProperty(t).call(t, pushTryEntry, this), this.reset(!0);
  }
  function values(e) {
    if (e || "" === e) {
      var r = e[a];
      if (r) return r.call(e);
      if ("function" == typeof e.next) return e;
      if (!isNaN(e.length)) {
        var o = -1,
          i = function next() {
            for (; ++o < e.length;) if (n.call(e, o)) return next.value = e[o], next.done = !1, next;
            return next.value = t, next.done = !0, next;
          };
        return i.next = i;
      }
    }
    throw new TypeError(_typeof(e) + " is not iterable");
  }
  return GeneratorFunction.prototype = GeneratorFunctionPrototype, o(g, "constructor", {
    value: GeneratorFunctionPrototype,
    configurable: !0
  }), o(GeneratorFunctionPrototype, "constructor", {
    value: GeneratorFunction,
    configurable: !0
  }), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, u, "GeneratorFunction"), e.isGeneratorFunction = function (t) {
    var e = "function" == typeof t && t.constructor;
    return !!e && (e === GeneratorFunction || "GeneratorFunction" === (e.displayName || e.name));
  }, e.mark = function (t) {
    return _Object$setPrototypeOf ? _Object$setPrototypeOf(t, GeneratorFunctionPrototype) : (t.__proto__ = GeneratorFunctionPrototype, define(t, u, "GeneratorFunction")), t.prototype = _Object$create(g), t;
  }, e.awrap = function (t) {
    return {
      __await: t
    };
  }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, c, function () {
    return this;
  }), e.AsyncIterator = AsyncIterator, e.async = function (t, r, n, o, i) {
    void 0 === i && (i = _Promise);
    var a = new AsyncIterator(wrap(t, r, n, o), i);
    return e.isGeneratorFunction(r) ? a : a.next().then(function (t) {
      return t.done ? t.value : a.next();
    });
  }, defineIteratorMethods(g), define(g, u, "Generator"), define(g, a, function () {
    return this;
  }), define(g, "toString", function () {
    return "[object Generator]";
  }), e.keys = function (t) {
    var e = Object(t),
      r = [];
    for (var n in e) _pushInstanceProperty(r).call(r, n);
    return _reverseInstanceProperty(r).call(r), function next() {
      for (; r.length;) {
        var t = r.pop();
        if (t in e) return next.value = t, next.done = !1, next;
      }
      return next.done = !0, next;
    };
  }, e.values = values, Context.prototype = {
    constructor: Context,
    reset: function reset(e) {
      var _context3;
      if (this.prev = 0, this.next = 0, this.sent = this._sent = t, this.done = !1, this.delegate = null, this.method = "next", this.arg = t, _forEachInstanceProperty(_context3 = this.tryEntries).call(_context3, resetTryEntry), !e) for (var r in this) "t" === r.charAt(0) && n.call(this, r) && !isNaN(+_sliceInstanceProperty(r).call(r, 1)) && (this[r] = t);
    },
    stop: function stop() {
      this.done = !0;
      var t = this.tryEntries[0].completion;
      if ("throw" === t.type) throw t.arg;
      return this.rval;
    },
    dispatchException: function dispatchException(e) {
      if (this.done) throw e;
      var r = this;
      function handle(n, o) {
        return a.type = "throw", a.arg = e, r.next = n, o && (r.method = "next", r.arg = t), !!o;
      }
      for (var o = this.tryEntries.length - 1; o >= 0; --o) {
        var i = this.tryEntries[o],
          a = i.completion;
        if ("root" === i.tryLoc) return handle("end");
        if (i.tryLoc <= this.prev) {
          var c = n.call(i, "catchLoc"),
            u = n.call(i, "finallyLoc");
          if (c && u) {
            if (this.prev < i.catchLoc) return handle(i.catchLoc, !0);
            if (this.prev < i.finallyLoc) return handle(i.finallyLoc);
          } else if (c) {
            if (this.prev < i.catchLoc) return handle(i.catchLoc, !0);
          } else {
            if (!u) throw new Error("try statement without catch or finally");
            if (this.prev < i.finallyLoc) return handle(i.finallyLoc);
          }
        }
      }
    },
    abrupt: function abrupt(t, e) {
      for (var r = this.tryEntries.length - 1; r >= 0; --r) {
        var o = this.tryEntries[r];
        if (o.tryLoc <= this.prev && n.call(o, "finallyLoc") && this.prev < o.finallyLoc) {
          var i = o;
          break;
        }
      }
      i && ("break" === t || "continue" === t) && i.tryLoc <= e && e <= i.finallyLoc && (i = null);
      var a = i ? i.completion : {};
      return a.type = t, a.arg = e, i ? (this.method = "next", this.next = i.finallyLoc, y) : this.complete(a);
    },
    complete: function complete(t, e) {
      if ("throw" === t.type) throw t.arg;
      return "break" === t.type || "continue" === t.type ? this.next = t.arg : "return" === t.type ? (this.rval = this.arg = t.arg, this.method = "return", this.next = "end") : "normal" === t.type && e && (this.next = e), y;
    },
    finish: function finish(t) {
      for (var e = this.tryEntries.length - 1; e >= 0; --e) {
        var r = this.tryEntries[e];
        if (r.finallyLoc === t) return this.complete(r.completion, r.afterLoc), resetTryEntry(r), y;
      }
    },
    "catch": function _catch(t) {
      for (var e = this.tryEntries.length - 1; e >= 0; --e) {
        var r = this.tryEntries[e];
        if (r.tryLoc === t) {
          var n = r.completion;
          if ("throw" === n.type) {
            var o = n.arg;
            resetTryEntry(r);
          }
          return o;
        }
      }
      throw new Error("illegal catch attempt");
    },
    delegateYield: function delegateYield(e, r, n) {
      return this.delegate = {
        iterator: values(e),
        resultName: r,
        nextLoc: n
      }, "next" === this.method && (this.arg = t), y;
    }
  }, e;
}
module.exports = _regeneratorRuntime, module.exports.__esModule = true, module.exports["default"] = module.exports;

/***/ }),

/***/ 20474:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

var _Symbol = __webpack_require__(3015);
var _Symbol$iterator = __webpack_require__(96424);
function _typeof(o) {
  "@babel/helpers - typeof";

  return (module.exports = _typeof = "function" == typeof _Symbol && "symbol" == typeof _Symbol$iterator ? function (o) {
    return typeof o;
  } : function (o) {
    return o && "function" == typeof _Symbol && o.constructor === _Symbol && o !== _Symbol.prototype ? "symbol" : typeof o;
  }, module.exports.__esModule = true, module.exports["default"] = module.exports), _typeof(o);
}
module.exports = _typeof, module.exports.__esModule = true, module.exports["default"] = module.exports;

/***/ }),

/***/ 30222:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

// TODO(Babel 8): Remove this file.

var runtime = __webpack_require__(5177)();
module.exports = runtime;

// Copied from https://github.com/facebook/regenerator/blob/main/packages/runtime/runtime.js#L736=
try {
  regeneratorRuntime = runtime;
} catch (accidentalStrictMode) {
  if (typeof globalThis === "object") {
    globalThis.regeneratorRuntime = runtime;
  } else {
    Function("r", "regeneratorRuntime = r")(runtime);
  }
}


/***/ }),

/***/ 35825:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var parent = __webpack_require__(88195);

module.exports = parent;


/***/ }),

/***/ 21665:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var parent = __webpack_require__(55567);

module.exports = parent;


/***/ }),

/***/ 64939:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var parent = __webpack_require__(72181);

module.exports = parent;


/***/ }),

/***/ 98059:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var parent = __webpack_require__(76765);

module.exports = parent;


/***/ }),

/***/ 1816:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var parent = __webpack_require__(42093);

module.exports = parent;


/***/ }),

/***/ 64437:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var parent = __webpack_require__(45602);

module.exports = parent;


/***/ }),

/***/ 74371:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var parent = __webpack_require__(73740);

module.exports = parent;


/***/ }),

/***/ 26477:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var parent = __webpack_require__(74301);

module.exports = parent;


/***/ }),

/***/ 89199:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var parent = __webpack_require__(32948);
__webpack_require__(52606);

module.exports = parent;


/***/ }),

/***/ 90204:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var parent = __webpack_require__(14454);

__webpack_require__(73705);
__webpack_require__(21935);
__webpack_require__(11944);
__webpack_require__(55539);

module.exports = parent;


/***/ }),

/***/ 65003:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var parent = __webpack_require__(4690);

module.exports = parent;


/***/ }),

/***/ 25887:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var parent = __webpack_require__(87263);

module.exports = parent;


/***/ }),

/***/ 40001:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

__webpack_require__(62212);
var getBuiltInPrototypeMethod = __webpack_require__(30251);

module.exports = getBuiltInPrototypeMethod('Array', 'forEach');


/***/ }),

/***/ 22295:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

__webpack_require__(53549);
var getBuiltInPrototypeMethod = __webpack_require__(30251);

module.exports = getBuiltInPrototypeMethod('Array', 'push');


/***/ }),

/***/ 3246:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

__webpack_require__(7901);
var getBuiltInPrototypeMethod = __webpack_require__(30251);

module.exports = getBuiltInPrototypeMethod('Array', 'reverse');


/***/ }),

/***/ 55586:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

__webpack_require__(43837);
var getBuiltInPrototypeMethod = __webpack_require__(30251);

module.exports = getBuiltInPrototypeMethod('Array', 'slice');


/***/ }),

/***/ 53264:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var isPrototypeOf = __webpack_require__(61727);
var method = __webpack_require__(22295);

var ArrayPrototype = Array.prototype;

module.exports = function (it) {
  var own = it.push;
  return it === ArrayPrototype || (isPrototypeOf(ArrayPrototype, it) && own === ArrayPrototype.push) ? method : own;
};


/***/ }),

/***/ 45051:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var isPrototypeOf = __webpack_require__(61727);
var method = __webpack_require__(3246);

var ArrayPrototype = Array.prototype;

module.exports = function (it) {
  var own = it.reverse;
  return it === ArrayPrototype || (isPrototypeOf(ArrayPrototype, it) && own === ArrayPrototype.reverse) ? method : own;
};


/***/ }),

/***/ 14558:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var isPrototypeOf = __webpack_require__(61727);
var method = __webpack_require__(55586);

var ArrayPrototype = Array.prototype;

module.exports = function (it) {
  var own = it.slice;
  return it === ArrayPrototype || (isPrototypeOf(ArrayPrototype, it) && own === ArrayPrototype.slice) ? method : own;
};


/***/ }),

/***/ 38858:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

__webpack_require__(43225);
var path = __webpack_require__(29068);

var Object = path.Object;

module.exports = function create(P, D) {
  return Object.create(P, D);
};


/***/ }),

/***/ 88641:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

__webpack_require__(19727);
var path = __webpack_require__(29068);

var Object = path.Object;

var defineProperty = module.exports = function defineProperty(it, key, desc) {
  return Object.defineProperty(it, key, desc);
};

if (Object.defineProperty.sham) defineProperty.sham = true;


/***/ }),

/***/ 72426:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

__webpack_require__(17992);
var path = __webpack_require__(29068);

module.exports = path.Object.getPrototypeOf;


/***/ }),

/***/ 51435:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

__webpack_require__(33951);
var path = __webpack_require__(29068);

module.exports = path.Object.setPrototypeOf;


/***/ }),

/***/ 58462:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

__webpack_require__(96864);
__webpack_require__(71997);
__webpack_require__(86069);
__webpack_require__(89927);
__webpack_require__(18795);
__webpack_require__(13233);
__webpack_require__(38840);
__webpack_require__(6028);
__webpack_require__(61345);
var path = __webpack_require__(29068);

module.exports = path.Promise;


/***/ }),

/***/ 53941:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

__webpack_require__(51845);
__webpack_require__(86069);
__webpack_require__(91967);
__webpack_require__(342);
__webpack_require__(48861);
__webpack_require__(83092);
__webpack_require__(86538);
__webpack_require__(50459);
__webpack_require__(32303);
__webpack_require__(23236);
__webpack_require__(91654);
__webpack_require__(34833);
__webpack_require__(20316);
__webpack_require__(16925);
__webpack_require__(83135);
__webpack_require__(39390);
__webpack_require__(25938);
__webpack_require__(78518);
__webpack_require__(39786);
__webpack_require__(26716);
var path = __webpack_require__(29068);

module.exports = path.Symbol;


/***/ }),

/***/ 24101:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

__webpack_require__(71997);
__webpack_require__(86069);
__webpack_require__(61345);
__webpack_require__(50459);
var WrappedWellKnownSymbolModule = __webpack_require__(18248);

module.exports = WrappedWellKnownSymbolModule.f('iterator');


/***/ }),

/***/ 47548:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

__webpack_require__(18242);
__webpack_require__(83135);
var WrappedWellKnownSymbolModule = __webpack_require__(18248);

module.exports = WrappedWellKnownSymbolModule.f('toPrimitive');


/***/ }),

/***/ 49756:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

module.exports = __webpack_require__(80538);


/***/ }),

/***/ 50650:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

module.exports = __webpack_require__(79788);


/***/ }),

/***/ 24440:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

module.exports = __webpack_require__(90519);


/***/ }),

/***/ 26231:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

module.exports = __webpack_require__(58189);


/***/ }),

/***/ 78341:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

module.exports = __webpack_require__(90695);


/***/ }),

/***/ 99685:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

module.exports = __webpack_require__(31685);


/***/ }),

/***/ 5626:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

module.exports = __webpack_require__(10223);


/***/ }),

/***/ 42186:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

module.exports = __webpack_require__(17013);


/***/ }),

/***/ 74690:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

module.exports = __webpack_require__(890);


/***/ }),

/***/ 3015:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

module.exports = __webpack_require__(1768);


/***/ }),

/***/ 96424:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

module.exports = __webpack_require__(56228);


/***/ }),

/***/ 80538:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var parent = __webpack_require__(35825);

module.exports = parent;


/***/ }),

/***/ 79788:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var parent = __webpack_require__(21665);

module.exports = parent;


/***/ }),

/***/ 90519:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var parent = __webpack_require__(64939);

module.exports = parent;


/***/ }),

/***/ 58189:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var parent = __webpack_require__(98059);

module.exports = parent;


/***/ }),

/***/ 90695:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var parent = __webpack_require__(1816);

module.exports = parent;


/***/ }),

/***/ 31685:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var parent = __webpack_require__(64437);

module.exports = parent;


/***/ }),

/***/ 10223:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var parent = __webpack_require__(74371);

module.exports = parent;


/***/ }),

/***/ 17013:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var parent = __webpack_require__(26477);

module.exports = parent;


/***/ }),

/***/ 890:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var parent = __webpack_require__(89199);
// TODO: Remove from `core-js@4`
__webpack_require__(79791);
__webpack_require__(3264);
__webpack_require__(75415);
__webpack_require__(79091);

module.exports = parent;


/***/ }),

/***/ 1768:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var parent = __webpack_require__(90204);
__webpack_require__(93361);
__webpack_require__(65539);
__webpack_require__(84163);
__webpack_require__(76499);
// TODO: Remove from `core-js@4`
__webpack_require__(66714);
__webpack_require__(85704);
__webpack_require__(16206);
__webpack_require__(81548);
__webpack_require__(11666);

module.exports = parent;


/***/ }),

/***/ 56228:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var parent = __webpack_require__(65003);

module.exports = parent;


/***/ }),

/***/ 74360:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var parent = __webpack_require__(25887);

module.exports = parent;


/***/ }),

/***/ 45935:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var isCallable = __webpack_require__(9934);
var tryToString = __webpack_require__(1028);

var $TypeError = TypeError;

// `Assert: IsCallable(argument) is true`
module.exports = function (argument) {
  if (isCallable(argument)) return argument;
  throw new $TypeError(tryToString(argument) + ' is not a function');
};


/***/ }),

/***/ 73164:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var isConstructor = __webpack_require__(57936);
var tryToString = __webpack_require__(1028);

var $TypeError = TypeError;

// `Assert: IsConstructor(argument) is true`
module.exports = function (argument) {
  if (isConstructor(argument)) return argument;
  throw new $TypeError(tryToString(argument) + ' is not a constructor');
};


/***/ }),

/***/ 37844:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var isCallable = __webpack_require__(9934);

var $String = String;
var $TypeError = TypeError;

module.exports = function (argument) {
  if (typeof argument == 'object' || isCallable(argument)) return argument;
  throw new $TypeError("Can't set " + $String(argument) + ' as a prototype');
};


/***/ }),

/***/ 66888:
/***/ (function(module) {

"use strict";

module.exports = function () { /* empty */ };


/***/ }),

/***/ 40927:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var isPrototypeOf = __webpack_require__(61727);

var $TypeError = TypeError;

module.exports = function (it, Prototype) {
  if (isPrototypeOf(Prototype, it)) return it;
  throw new $TypeError('Incorrect invocation');
};


/***/ }),

/***/ 18879:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var isObject = __webpack_require__(39611);

var $String = String;
var $TypeError = TypeError;

// `Assert: Type(argument) is Object`
module.exports = function (argument) {
  if (isObject(argument)) return argument;
  throw new $TypeError($String(argument) + ' is not an object');
};


/***/ }),

/***/ 96456:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var $forEach = (__webpack_require__(92503).forEach);
var arrayMethodIsStrict = __webpack_require__(38709);

var STRICT_METHOD = arrayMethodIsStrict('forEach');

// `Array.prototype.forEach` method implementation
// https://tc39.es/ecma262/#sec-array.prototype.foreach
module.exports = !STRICT_METHOD ? function forEach(callbackfn /* , thisArg */) {
  return $forEach(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);
// eslint-disable-next-line es/no-array-prototype-foreach -- safe
} : [].forEach;


/***/ }),

/***/ 78520:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var toIndexedObject = __webpack_require__(73747);
var toAbsoluteIndex = __webpack_require__(58100);
var lengthOfArrayLike = __webpack_require__(37165);

// `Array.prototype.{ indexOf, includes }` methods implementation
var createMethod = function (IS_INCLUDES) {
  return function ($this, el, fromIndex) {
    var O = toIndexedObject($this);
    var length = lengthOfArrayLike(O);
    var index = toAbsoluteIndex(fromIndex, length);
    var value;
    // Array#includes uses SameValueZero equality algorithm
    // eslint-disable-next-line no-self-compare -- NaN check
    if (IS_INCLUDES && el !== el) while (length > index) {
      value = O[index++];
      // eslint-disable-next-line no-self-compare -- NaN check
      if (value !== value) return true;
    // Array#indexOf ignores holes, Array#includes - not
    } else for (;length > index; index++) {
      if ((IS_INCLUDES || index in O) && O[index] === el) return IS_INCLUDES || index || 0;
    } return !IS_INCLUDES && -1;
  };
};

module.exports = {
  // `Array.prototype.includes` method
  // https://tc39.es/ecma262/#sec-array.prototype.includes
  includes: createMethod(true),
  // `Array.prototype.indexOf` method
  // https://tc39.es/ecma262/#sec-array.prototype.indexof
  indexOf: createMethod(false)
};


/***/ }),

/***/ 92503:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var bind = __webpack_require__(29605);
var uncurryThis = __webpack_require__(72537);
var IndexedObject = __webpack_require__(108);
var toObject = __webpack_require__(42962);
var lengthOfArrayLike = __webpack_require__(37165);
var arraySpeciesCreate = __webpack_require__(7265);

var push = uncurryThis([].push);

// `Array.prototype.{ forEach, map, filter, some, every, find, findIndex, filterReject }` methods implementation
var createMethod = function (TYPE) {
  var IS_MAP = TYPE === 1;
  var IS_FILTER = TYPE === 2;
  var IS_SOME = TYPE === 3;
  var IS_EVERY = TYPE === 4;
  var IS_FIND_INDEX = TYPE === 6;
  var IS_FILTER_REJECT = TYPE === 7;
  var NO_HOLES = TYPE === 5 || IS_FIND_INDEX;
  return function ($this, callbackfn, that, specificCreate) {
    var O = toObject($this);
    var self = IndexedObject(O);
    var length = lengthOfArrayLike(self);
    var boundFunction = bind(callbackfn, that);
    var index = 0;
    var create = specificCreate || arraySpeciesCreate;
    var target = IS_MAP ? create($this, length) : IS_FILTER || IS_FILTER_REJECT ? create($this, 0) : undefined;
    var value, result;
    for (;length > index; index++) if (NO_HOLES || index in self) {
      value = self[index];
      result = boundFunction(value, index, O);
      if (TYPE) {
        if (IS_MAP) target[index] = result; // map
        else if (result) switch (TYPE) {
          case 3: return true;              // some
          case 5: return value;             // find
          case 6: return index;             // findIndex
          case 2: push(target, value);      // filter
        } else switch (TYPE) {
          case 4: return false;             // every
          case 7: push(target, value);      // filterReject
        }
      }
    }
    return IS_FIND_INDEX ? -1 : IS_SOME || IS_EVERY ? IS_EVERY : target;
  };
};

module.exports = {
  // `Array.prototype.forEach` method
  // https://tc39.es/ecma262/#sec-array.prototype.foreach
  forEach: createMethod(0),
  // `Array.prototype.map` method
  // https://tc39.es/ecma262/#sec-array.prototype.map
  map: createMethod(1),
  // `Array.prototype.filter` method
  // https://tc39.es/ecma262/#sec-array.prototype.filter
  filter: createMethod(2),
  // `Array.prototype.some` method
  // https://tc39.es/ecma262/#sec-array.prototype.some
  some: createMethod(3),
  // `Array.prototype.every` method
  // https://tc39.es/ecma262/#sec-array.prototype.every
  every: createMethod(4),
  // `Array.prototype.find` method
  // https://tc39.es/ecma262/#sec-array.prototype.find
  find: createMethod(5),
  // `Array.prototype.findIndex` method
  // https://tc39.es/ecma262/#sec-array.prototype.findIndex
  findIndex: createMethod(6),
  // `Array.prototype.filterReject` method
  // https://github.com/tc39/proposal-array-filtering
  filterReject: createMethod(7)
};


/***/ }),

/***/ 18388:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var fails = __webpack_require__(49353);
var wellKnownSymbol = __webpack_require__(52442);
var V8_VERSION = __webpack_require__(15131);

var SPECIES = wellKnownSymbol('species');

module.exports = function (METHOD_NAME) {
  // We can't use this feature detection in V8 since it causes
  // deoptimization and serious performance degradation
  // https://github.com/zloirock/core-js/issues/677
  return V8_VERSION >= 51 || !fails(function () {
    var array = [];
    var constructor = array.constructor = {};
    constructor[SPECIES] = function () {
      return { foo: 1 };
    };
    return array[METHOD_NAME](Boolean).foo !== 1;
  });
};


/***/ }),

/***/ 38709:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var fails = __webpack_require__(49353);

module.exports = function (METHOD_NAME, argument) {
  var method = [][METHOD_NAME];
  return !!method && fails(function () {
    // eslint-disable-next-line no-useless-call -- required for testing
    method.call(null, argument || function () { return 1; }, 1);
  });
};


/***/ }),

/***/ 21145:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var DESCRIPTORS = __webpack_require__(43794);
var isArray = __webpack_require__(13527);

var $TypeError = TypeError;
// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe
var getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;

// Safari < 13 does not throw an error in this case
var SILENT_ON_NON_WRITABLE_LENGTH_SET = DESCRIPTORS && !function () {
  // makes no sense without proper strict mode support
  if (this !== undefined) return true;
  try {
    // eslint-disable-next-line es/no-object-defineproperty -- safe
    Object.defineProperty([], 'length', { writable: false }).length = 1;
  } catch (error) {
    return error instanceof TypeError;
  }
}();

module.exports = SILENT_ON_NON_WRITABLE_LENGTH_SET ? function (O, length) {
  if (isArray(O) && !getOwnPropertyDescriptor(O, 'length').writable) {
    throw new $TypeError('Cannot set read only .length');
  } return O.length = length;
} : function (O, length) {
  return O.length = length;
};


/***/ }),

/***/ 14030:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var toAbsoluteIndex = __webpack_require__(58100);
var lengthOfArrayLike = __webpack_require__(37165);
var createProperty = __webpack_require__(981);

var $Array = Array;
var max = Math.max;

module.exports = function (O, start, end) {
  var length = lengthOfArrayLike(O);
  var k = toAbsoluteIndex(start, length);
  var fin = toAbsoluteIndex(end === undefined ? length : end, length);
  var result = $Array(max(fin - k, 0));
  var n = 0;
  for (; k < fin; k++, n++) createProperty(result, n, O[k]);
  result.length = n;
  return result;
};


/***/ }),

/***/ 52076:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var uncurryThis = __webpack_require__(72537);

module.exports = uncurryThis([].slice);


/***/ }),

/***/ 1388:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var isArray = __webpack_require__(13527);
var isConstructor = __webpack_require__(57936);
var isObject = __webpack_require__(39611);
var wellKnownSymbol = __webpack_require__(52442);

var SPECIES = wellKnownSymbol('species');
var $Array = Array;

// a part of `ArraySpeciesCreate` abstract operation
// https://tc39.es/ecma262/#sec-arrayspeciescreate
module.exports = function (originalArray) {
  var C;
  if (isArray(originalArray)) {
    C = originalArray.constructor;
    // cross-realm fallback
    if (isConstructor(C) && (C === $Array || isArray(C.prototype))) C = undefined;
    else if (isObject(C)) {
      C = C[SPECIES];
      if (C === null) C = undefined;
    }
  } return C === undefined ? $Array : C;
};


/***/ }),

/***/ 7265:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var arraySpeciesConstructor = __webpack_require__(1388);

// `ArraySpeciesCreate` abstract operation
// https://tc39.es/ecma262/#sec-arrayspeciescreate
module.exports = function (originalArray, length) {
  return new (arraySpeciesConstructor(originalArray))(length === 0 ? 0 : length);
};


/***/ }),

/***/ 97670:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var wellKnownSymbol = __webpack_require__(52442);

var ITERATOR = wellKnownSymbol('iterator');
var SAFE_CLOSING = false;

try {
  var called = 0;
  var iteratorWithReturn = {
    next: function () {
      return { done: !!called++ };
    },
    'return': function () {
      SAFE_CLOSING = true;
    }
  };
  iteratorWithReturn[ITERATOR] = function () {
    return this;
  };
  // eslint-disable-next-line es/no-array-from, no-throw-literal -- required for testing
  Array.from(iteratorWithReturn, function () { throw 2; });
} catch (error) { /* empty */ }

module.exports = function (exec, SKIP_CLOSING) {
  try {
    if (!SKIP_CLOSING && !SAFE_CLOSING) return false;
  } catch (error) { return false; } // workaround of old WebKit + `eval` bug
  var ITERATION_SUPPORT = false;
  try {
    var object = {};
    object[ITERATOR] = function () {
      return {
        next: function () {
          return { done: ITERATION_SUPPORT = true };
        }
      };
    };
    exec(object);
  } catch (error) { /* empty */ }
  return ITERATION_SUPPORT;
};


/***/ }),

/***/ 44650:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var uncurryThis = __webpack_require__(72537);

var toString = uncurryThis({}.toString);
var stringSlice = uncurryThis(''.slice);

module.exports = function (it) {
  return stringSlice(toString(it), 8, -1);
};


/***/ }),

/***/ 56397:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var TO_STRING_TAG_SUPPORT = __webpack_require__(23220);
var isCallable = __webpack_require__(9934);
var classofRaw = __webpack_require__(44650);
var wellKnownSymbol = __webpack_require__(52442);

var TO_STRING_TAG = wellKnownSymbol('toStringTag');
var $Object = Object;

// ES3 wrong here
var CORRECT_ARGUMENTS = classofRaw(function () { return arguments; }()) === 'Arguments';

// fallback for IE11 Script Access Denied error
var tryGet = function (it, key) {
  try {
    return it[key];
  } catch (error) { /* empty */ }
};

// getting tag from ES6+ `Object.prototype.toString`
module.exports = TO_STRING_TAG_SUPPORT ? classofRaw : function (it) {
  var O, tag, result;
  return it === undefined ? 'Undefined' : it === null ? 'Null'
    // @@toStringTag case
    : typeof (tag = tryGet(O = $Object(it), TO_STRING_TAG)) == 'string' ? tag
    // builtinTag case
    : CORRECT_ARGUMENTS ? classofRaw(O)
    // ES3 arguments fallback
    : (result = classofRaw(O)) === 'Object' && isCallable(O.callee) ? 'Arguments' : result;
};


/***/ }),

/***/ 95895:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var hasOwn = __webpack_require__(99027);
var ownKeys = __webpack_require__(704);
var getOwnPropertyDescriptorModule = __webpack_require__(45396);
var definePropertyModule = __webpack_require__(81890);

module.exports = function (target, source, exceptions) {
  var keys = ownKeys(source);
  var defineProperty = definePropertyModule.f;
  var getOwnPropertyDescriptor = getOwnPropertyDescriptorModule.f;
  for (var i = 0; i < keys.length; i++) {
    var key = keys[i];
    if (!hasOwn(target, key) && !(exceptions && hasOwn(exceptions, key))) {
      defineProperty(target, key, getOwnPropertyDescriptor(source, key));
    }
  }
};


/***/ }),

/***/ 24853:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var fails = __webpack_require__(49353);

module.exports = !fails(function () {
  function F() { /* empty */ }
  F.prototype.constructor = null;
  // eslint-disable-next-line es/no-object-getprototypeof -- required for testing
  return Object.getPrototypeOf(new F()) !== F.prototype;
});


/***/ }),

/***/ 27474:
/***/ (function(module) {

"use strict";

// `CreateIterResultObject` abstract operation
// https://tc39.es/ecma262/#sec-createiterresultobject
module.exports = function (value, done) {
  return { value: value, done: done };
};


/***/ }),

/***/ 7151:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var DESCRIPTORS = __webpack_require__(43794);
var definePropertyModule = __webpack_require__(81890);
var createPropertyDescriptor = __webpack_require__(51567);

module.exports = DESCRIPTORS ? function (object, key, value) {
  return definePropertyModule.f(object, key, createPropertyDescriptor(1, value));
} : function (object, key, value) {
  object[key] = value;
  return object;
};


/***/ }),

/***/ 51567:
/***/ (function(module) {

"use strict";

module.exports = function (bitmap, value) {
  return {
    enumerable: !(bitmap & 1),
    configurable: !(bitmap & 2),
    writable: !(bitmap & 4),
    value: value
  };
};


/***/ }),

/***/ 981:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var toPropertyKey = __webpack_require__(91525);
var definePropertyModule = __webpack_require__(81890);
var createPropertyDescriptor = __webpack_require__(51567);

module.exports = function (object, key, value) {
  var propertyKey = toPropertyKey(key);
  if (propertyKey in object) definePropertyModule.f(object, propertyKey, createPropertyDescriptor(0, value));
  else object[propertyKey] = value;
};


/***/ }),

/***/ 63089:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var defineProperty = __webpack_require__(81890);

module.exports = function (target, name, descriptor) {
  return defineProperty.f(target, name, descriptor);
};


/***/ }),

/***/ 31733:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var createNonEnumerableProperty = __webpack_require__(7151);

module.exports = function (target, key, value, options) {
  if (options && options.enumerable) target[key] = value;
  else createNonEnumerableProperty(target, key, value);
  return target;
};


/***/ }),

/***/ 20543:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var global = __webpack_require__(5685);

// eslint-disable-next-line es/no-object-defineproperty -- safe
var defineProperty = Object.defineProperty;

module.exports = function (key, value) {
  try {
    defineProperty(global, key, { value: value, configurable: true, writable: true });
  } catch (error) {
    global[key] = value;
  } return value;
};


/***/ }),

/***/ 43794:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var fails = __webpack_require__(49353);

// Detect IE8's incomplete defineProperty implementation
module.exports = !fails(function () {
  // eslint-disable-next-line es/no-object-defineproperty -- required for testing
  return Object.defineProperty({}, 1, { get: function () { return 7; } })[1] !== 7;
});


/***/ }),

/***/ 9945:
/***/ (function(module) {

"use strict";

var documentAll = typeof document == 'object' && document.all;

// https://tc39.es/ecma262/#sec-IsHTMLDDA-internal-slot
// eslint-disable-next-line unicorn/no-typeof-undefined -- required for testing
var IS_HTMLDDA = typeof documentAll == 'undefined' && documentAll !== undefined;

module.exports = {
  all: documentAll,
  IS_HTMLDDA: IS_HTMLDDA
};


/***/ }),

/***/ 23729:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var global = __webpack_require__(5685);
var isObject = __webpack_require__(39611);

var document = global.document;
// typeof document.createElement is 'object' in old IE
var EXISTS = isObject(document) && isObject(document.createElement);

module.exports = function (it) {
  return EXISTS ? document.createElement(it) : {};
};


/***/ }),

/***/ 9939:
/***/ (function(module) {

"use strict";

var $TypeError = TypeError;
var MAX_SAFE_INTEGER = 0x1FFFFFFFFFFFFF; // 2 ** 53 - 1 == 9007199254740991

module.exports = function (it) {
  if (it > MAX_SAFE_INTEGER) throw $TypeError('Maximum allowed index exceeded');
  return it;
};


/***/ }),

/***/ 18920:
/***/ (function(module) {

"use strict";

// iterable DOM collections
// flag - `iterable` interface - 'entries', 'keys', 'values', 'forEach' methods
module.exports = {
  CSSRuleList: 0,
  CSSStyleDeclaration: 0,
  CSSValueList: 0,
  ClientRectList: 0,
  DOMRectList: 0,
  DOMStringList: 0,
  DOMTokenList: 1,
  DataTransferItemList: 0,
  FileList: 0,
  HTMLAllCollection: 0,
  HTMLCollection: 0,
  HTMLFormElement: 0,
  HTMLSelectElement: 0,
  MediaList: 0,
  MimeTypeArray: 0,
  NamedNodeMap: 0,
  NodeList: 1,
  PaintRequestList: 0,
  Plugin: 0,
  PluginArray: 0,
  SVGLengthList: 0,
  SVGNumberList: 0,
  SVGPathSegList: 0,
  SVGPointList: 0,
  SVGStringList: 0,
  SVGTransformList: 0,
  SourceBufferList: 0,
  StyleSheetList: 0,
  TextTrackCueList: 0,
  TextTrackList: 0,
  TouchList: 0
};


/***/ }),

/***/ 3:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var IS_DENO = __webpack_require__(99207);
var IS_NODE = __webpack_require__(44408);

module.exports = !IS_DENO && !IS_NODE
  && typeof window == 'object'
  && typeof document == 'object';


/***/ }),

/***/ 99207:
/***/ (function(module) {

"use strict";

/* global Deno -- Deno case */
module.exports = typeof Deno == 'object' && Deno && typeof Deno.version == 'object';


/***/ }),

/***/ 78309:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var userAgent = __webpack_require__(13642);

module.exports = /ipad|iphone|ipod/i.test(userAgent) && typeof Pebble != 'undefined';


/***/ }),

/***/ 28816:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var userAgent = __webpack_require__(13642);

// eslint-disable-next-line redos/no-vulnerable -- safe
module.exports = /(?:ipad|iphone|ipod).*applewebkit/i.test(userAgent);


/***/ }),

/***/ 44408:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var global = __webpack_require__(5685);
var classof = __webpack_require__(44650);

module.exports = classof(global.process) === 'process';


/***/ }),

/***/ 9267:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var userAgent = __webpack_require__(13642);

module.exports = /web0s(?!.*chrome)/i.test(userAgent);


/***/ }),

/***/ 13642:
/***/ (function(module) {

"use strict";

module.exports = typeof navigator != 'undefined' && String(navigator.userAgent) || '';


/***/ }),

/***/ 15131:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var global = __webpack_require__(5685);
var userAgent = __webpack_require__(13642);

var process = global.process;
var Deno = global.Deno;
var versions = process && process.versions || Deno && Deno.version;
var v8 = versions && versions.v8;
var match, version;

if (v8) {
  match = v8.split('.');
  // in old Chrome, versions of V8 isn't V8 = Chrome / 10
  // but their correct versions are not interesting for us
  version = match[0] > 0 && match[0] < 4 ? 1 : +(match[0] + match[1]);
}

// BrowserFS NodeJS `process` polyfill incorrectly set `.v8` to `0.0`
// so check `userAgent` even if `.v8` exists, but 0
if (!version && userAgent) {
  match = userAgent.match(/Edge\/(\d+)/);
  if (!match || match[1] >= 74) {
    match = userAgent.match(/Chrome\/(\d+)/);
    if (match) version = +match[1];
  }
}

module.exports = version;


/***/ }),

/***/ 30270:
/***/ (function(module) {

"use strict";

// IE8- don't enum bug keys
module.exports = [
  'constructor',
  'hasOwnProperty',
  'isPrototypeOf',
  'propertyIsEnumerable',
  'toLocaleString',
  'toString',
  'valueOf'
];


/***/ }),

/***/ 7918:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var uncurryThis = __webpack_require__(72537);

var $Error = Error;
var replace = uncurryThis(''.replace);

var TEST = (function (arg) { return String(new $Error(arg).stack); })('zxcasd');
// eslint-disable-next-line redos/no-vulnerable -- safe
var V8_OR_CHAKRA_STACK_ENTRY = /\n\s*at [^:]*:[^\n]*/;
var IS_V8_OR_CHAKRA_STACK = V8_OR_CHAKRA_STACK_ENTRY.test(TEST);

module.exports = function (stack, dropEntries) {
  if (IS_V8_OR_CHAKRA_STACK && typeof stack == 'string' && !$Error.prepareStackTrace) {
    while (dropEntries--) stack = replace(stack, V8_OR_CHAKRA_STACK_ENTRY, '');
  } return stack;
};


/***/ }),

/***/ 91794:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var createNonEnumerableProperty = __webpack_require__(7151);
var clearErrorStack = __webpack_require__(7918);
var ERROR_STACK_INSTALLABLE = __webpack_require__(84671);

// non-standard V8
var captureStackTrace = Error.captureStackTrace;

module.exports = function (error, C, stack, dropEntries) {
  if (ERROR_STACK_INSTALLABLE) {
    if (captureStackTrace) captureStackTrace(error, C);
    else createNonEnumerableProperty(error, 'stack', clearErrorStack(stack, dropEntries));
  }
};


/***/ }),

/***/ 84671:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var fails = __webpack_require__(49353);
var createPropertyDescriptor = __webpack_require__(51567);

module.exports = !fails(function () {
  var error = new Error('a');
  if (!('stack' in error)) return true;
  // eslint-disable-next-line es/no-object-defineproperty -- safe
  Object.defineProperty(error, 'stack', createPropertyDescriptor(1, 7));
  return error.stack !== 7;
});


/***/ }),

/***/ 74715:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var global = __webpack_require__(5685);
var apply = __webpack_require__(10145);
var uncurryThis = __webpack_require__(77531);
var isCallable = __webpack_require__(9934);
var getOwnPropertyDescriptor = (__webpack_require__(45396).f);
var isForced = __webpack_require__(35703);
var path = __webpack_require__(29068);
var bind = __webpack_require__(29605);
var createNonEnumerableProperty = __webpack_require__(7151);
var hasOwn = __webpack_require__(99027);

var wrapConstructor = function (NativeConstructor) {
  var Wrapper = function (a, b, c) {
    if (this instanceof Wrapper) {
      switch (arguments.length) {
        case 0: return new NativeConstructor();
        case 1: return new NativeConstructor(a);
        case 2: return new NativeConstructor(a, b);
      } return new NativeConstructor(a, b, c);
    } return apply(NativeConstructor, this, arguments);
  };
  Wrapper.prototype = NativeConstructor.prototype;
  return Wrapper;
};

/*
  options.target         - name of the target object
  options.global         - target is the global object
  options.stat           - export as static methods of target
  options.proto          - export as prototype methods of target
  options.real           - real prototype method for the `pure` version
  options.forced         - export even if the native feature is available
  options.bind           - bind methods to the target, required for the `pure` version
  options.wrap           - wrap constructors to preventing global pollution, required for the `pure` version
  options.unsafe         - use the simple assignment of property instead of delete + defineProperty
  options.sham           - add a flag to not completely full polyfills
  options.enumerable     - export as enumerable property
  options.dontCallGetSet - prevent calling a getter on target
  options.name           - the .name of the function if it does not match the key
*/
module.exports = function (options, source) {
  var TARGET = options.target;
  var GLOBAL = options.global;
  var STATIC = options.stat;
  var PROTO = options.proto;

  var nativeSource = GLOBAL ? global : STATIC ? global[TARGET] : (global[TARGET] || {}).prototype;

  var target = GLOBAL ? path : path[TARGET] || createNonEnumerableProperty(path, TARGET, {})[TARGET];
  var targetPrototype = target.prototype;

  var FORCED, USE_NATIVE, VIRTUAL_PROTOTYPE;
  var key, sourceProperty, targetProperty, nativeProperty, resultProperty, descriptor;

  for (key in source) {
    FORCED = isForced(GLOBAL ? key : TARGET + (STATIC ? '.' : '#') + key, options.forced);
    // contains in native
    USE_NATIVE = !FORCED && nativeSource && hasOwn(nativeSource, key);

    targetProperty = target[key];

    if (USE_NATIVE) if (options.dontCallGetSet) {
      descriptor = getOwnPropertyDescriptor(nativeSource, key);
      nativeProperty = descriptor && descriptor.value;
    } else nativeProperty = nativeSource[key];

    // export native or implementation
    sourceProperty = (USE_NATIVE && nativeProperty) ? nativeProperty : source[key];

    if (USE_NATIVE && typeof targetProperty == typeof sourceProperty) continue;

    // bind methods to global for calling from export context
    if (options.bind && USE_NATIVE) resultProperty = bind(sourceProperty, global);
    // wrap global constructors for prevent changes in this version
    else if (options.wrap && USE_NATIVE) resultProperty = wrapConstructor(sourceProperty);
    // make static versions for prototype methods
    else if (PROTO && isCallable(sourceProperty)) resultProperty = uncurryThis(sourceProperty);
    // default case
    else resultProperty = sourceProperty;

    // add a flag to not completely full polyfills
    if (options.sham || (sourceProperty && sourceProperty.sham) || (targetProperty && targetProperty.sham)) {
      createNonEnumerableProperty(resultProperty, 'sham', true);
    }

    createNonEnumerableProperty(target, key, resultProperty);

    if (PROTO) {
      VIRTUAL_PROTOTYPE = TARGET + 'Prototype';
      if (!hasOwn(path, VIRTUAL_PROTOTYPE)) {
        createNonEnumerableProperty(path, VIRTUAL_PROTOTYPE, {});
      }
      // export virtual prototype methods
      createNonEnumerableProperty(path[VIRTUAL_PROTOTYPE], key, sourceProperty);
      // export real prototype methods
      if (options.real && targetPrototype && (FORCED || !targetPrototype[key])) {
        createNonEnumerableProperty(targetPrototype, key, sourceProperty);
      }
    }
  }
};


/***/ }),

/***/ 49353:
/***/ (function(module) {

"use strict";

module.exports = function (exec) {
  try {
    return !!exec();
  } catch (error) {
    return true;
  }
};


/***/ }),

/***/ 10145:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var NATIVE_BIND = __webpack_require__(6229);

var FunctionPrototype = Function.prototype;
var apply = FunctionPrototype.apply;
var call = FunctionPrototype.call;

// eslint-disable-next-line es/no-reflect -- safe
module.exports = typeof Reflect == 'object' && Reflect.apply || (NATIVE_BIND ? call.bind(apply) : function () {
  return call.apply(apply, arguments);
});


/***/ }),

/***/ 29605:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var uncurryThis = __webpack_require__(77531);
var aCallable = __webpack_require__(45935);
var NATIVE_BIND = __webpack_require__(6229);

var bind = uncurryThis(uncurryThis.bind);

// optional / simple context binding
module.exports = function (fn, that) {
  aCallable(fn);
  return that === undefined ? fn : NATIVE_BIND ? bind(fn, that) : function (/* ...args */) {
    return fn.apply(that, arguments);
  };
};


/***/ }),

/***/ 6229:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var fails = __webpack_require__(49353);

module.exports = !fails(function () {
  // eslint-disable-next-line es/no-function-prototype-bind -- safe
  var test = (function () { /* empty */ }).bind();
  // eslint-disable-next-line no-prototype-builtins -- safe
  return typeof test != 'function' || test.hasOwnProperty('prototype');
});


/***/ }),

/***/ 83417:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var NATIVE_BIND = __webpack_require__(6229);

var call = Function.prototype.call;

module.exports = NATIVE_BIND ? call.bind(call) : function () {
  return call.apply(call, arguments);
};


/***/ }),

/***/ 28766:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var DESCRIPTORS = __webpack_require__(43794);
var hasOwn = __webpack_require__(99027);

var FunctionPrototype = Function.prototype;
// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe
var getDescriptor = DESCRIPTORS && Object.getOwnPropertyDescriptor;

var EXISTS = hasOwn(FunctionPrototype, 'name');
// additional protection from minified / mangled / dropped function names
var PROPER = EXISTS && (function something() { /* empty */ }).name === 'something';
var CONFIGURABLE = EXISTS && (!DESCRIPTORS || (DESCRIPTORS && getDescriptor(FunctionPrototype, 'name').configurable));

module.exports = {
  EXISTS: EXISTS,
  PROPER: PROPER,
  CONFIGURABLE: CONFIGURABLE
};


/***/ }),

/***/ 47665:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var uncurryThis = __webpack_require__(72537);
var aCallable = __webpack_require__(45935);

module.exports = function (object, key, method) {
  try {
    // eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe
    return uncurryThis(aCallable(Object.getOwnPropertyDescriptor(object, key)[method]));
  } catch (error) { /* empty */ }
};


/***/ }),

/***/ 77531:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var classofRaw = __webpack_require__(44650);
var uncurryThis = __webpack_require__(72537);

module.exports = function (fn) {
  // Nashorn bug:
  //   https://github.com/zloirock/core-js/issues/1128
  //   https://github.com/zloirock/core-js/issues/1130
  if (classofRaw(fn) === 'Function') return uncurryThis(fn);
};


/***/ }),

/***/ 72537:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var NATIVE_BIND = __webpack_require__(6229);

var FunctionPrototype = Function.prototype;
var call = FunctionPrototype.call;
var uncurryThisWithBind = NATIVE_BIND && FunctionPrototype.bind.bind(call, call);

module.exports = NATIVE_BIND ? uncurryThisWithBind : function (fn) {
  return function () {
    return call.apply(fn, arguments);
  };
};


/***/ }),

/***/ 30251:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var global = __webpack_require__(5685);
var path = __webpack_require__(29068);

module.exports = function (CONSTRUCTOR, METHOD) {
  var Namespace = path[CONSTRUCTOR + 'Prototype'];
  var pureMethod = Namespace && Namespace[METHOD];
  if (pureMethod) return pureMethod;
  var NativeConstructor = global[CONSTRUCTOR];
  var NativePrototype = NativeConstructor && NativeConstructor.prototype;
  return NativePrototype && NativePrototype[METHOD];
};


/***/ }),

/***/ 87192:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var path = __webpack_require__(29068);
var global = __webpack_require__(5685);
var isCallable = __webpack_require__(9934);

var aFunction = function (variable) {
  return isCallable(variable) ? variable : undefined;
};

module.exports = function (namespace, method) {
  return arguments.length < 2 ? aFunction(path[namespace]) || aFunction(global[namespace])
    : path[namespace] && path[namespace][method] || global[namespace] && global[namespace][method];
};


/***/ }),

/***/ 10610:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var classof = __webpack_require__(56397);
var getMethod = __webpack_require__(45752);
var isNullOrUndefined = __webpack_require__(44133);
var Iterators = __webpack_require__(99234);
var wellKnownSymbol = __webpack_require__(52442);

var ITERATOR = wellKnownSymbol('iterator');

module.exports = function (it) {
  if (!isNullOrUndefined(it)) return getMethod(it, ITERATOR)
    || getMethod(it, '@@iterator')
    || Iterators[classof(it)];
};


/***/ }),

/***/ 3029:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var call = __webpack_require__(83417);
var aCallable = __webpack_require__(45935);
var anObject = __webpack_require__(18879);
var tryToString = __webpack_require__(1028);
var getIteratorMethod = __webpack_require__(10610);

var $TypeError = TypeError;

module.exports = function (argument, usingIterator) {
  var iteratorMethod = arguments.length < 2 ? getIteratorMethod(argument) : usingIterator;
  if (aCallable(iteratorMethod)) return anObject(call(iteratorMethod, argument));
  throw new $TypeError(tryToString(argument) + ' is not iterable');
};


/***/ }),

/***/ 99647:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var uncurryThis = __webpack_require__(72537);
var isArray = __webpack_require__(13527);
var isCallable = __webpack_require__(9934);
var classof = __webpack_require__(44650);
var toString = __webpack_require__(71182);

var push = uncurryThis([].push);

module.exports = function (replacer) {
  if (isCallable(replacer)) return replacer;
  if (!isArray(replacer)) return;
  var rawLength = replacer.length;
  var keys = [];
  for (var i = 0; i < rawLength; i++) {
    var element = replacer[i];
    if (typeof element == 'string') push(keys, element);
    else if (typeof element == 'number' || classof(element) === 'Number' || classof(element) === 'String') push(keys, toString(element));
  }
  var keysLength = keys.length;
  var root = true;
  return function (key, value) {
    if (root) {
      root = false;
      return value;
    }
    if (isArray(this)) return value;
    for (var j = 0; j < keysLength; j++) if (keys[j] === key) return value;
  };
};


/***/ }),

/***/ 45752:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var aCallable = __webpack_require__(45935);
var isNullOrUndefined = __webpack_require__(44133);

// `GetMethod` abstract operation
// https://tc39.es/ecma262/#sec-getmethod
module.exports = function (V, P) {
  var func = V[P];
  return isNullOrUndefined(func) ? undefined : aCallable(func);
};


/***/ }),

/***/ 5685:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var check = function (it) {
  return it && it.Math === Math && it;
};

// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028
module.exports =
  // eslint-disable-next-line es/no-global-this -- safe
  check(typeof globalThis == 'object' && globalThis) ||
  check(typeof window == 'object' && window) ||
  // eslint-disable-next-line no-restricted-globals -- safe
  check(typeof self == 'object' && self) ||
  check(typeof __webpack_require__.g == 'object' && __webpack_require__.g) ||
  check(typeof this == 'object' && this) ||
  // eslint-disable-next-line no-new-func -- fallback
  (function () { return this; })() || Function('return this')();


/***/ }),

/***/ 99027:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var uncurryThis = __webpack_require__(72537);
var toObject = __webpack_require__(42962);

var hasOwnProperty = uncurryThis({}.hasOwnProperty);

// `HasOwnProperty` abstract operation
// https://tc39.es/ecma262/#sec-hasownproperty
// eslint-disable-next-line es/no-object-hasown -- safe
module.exports = Object.hasOwn || function hasOwn(it, key) {
  return hasOwnProperty(toObject(it), key);
};


/***/ }),

/***/ 39775:
/***/ (function(module) {

"use strict";

module.exports = {};


/***/ }),

/***/ 92210:
/***/ (function(module) {

"use strict";

module.exports = function (a, b) {
  try {
    // eslint-disable-next-line no-console -- safe
    arguments.length === 1 ? console.error(a) : console.error(a, b);
  } catch (error) { /* empty */ }
};


/***/ }),

/***/ 26395:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var getBuiltIn = __webpack_require__(87192);

module.exports = getBuiltIn('document', 'documentElement');


/***/ }),

/***/ 59548:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var DESCRIPTORS = __webpack_require__(43794);
var fails = __webpack_require__(49353);
var createElement = __webpack_require__(23729);

// Thanks to IE8 for its funny defineProperty
module.exports = !DESCRIPTORS && !fails(function () {
  // eslint-disable-next-line es/no-object-defineproperty -- required for testing
  return Object.defineProperty(createElement('div'), 'a', {
    get: function () { return 7; }
  }).a !== 7;
});


/***/ }),

/***/ 108:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var uncurryThis = __webpack_require__(72537);
var fails = __webpack_require__(49353);
var classof = __webpack_require__(44650);

var $Object = Object;
var split = uncurryThis(''.split);

// fallback for non-array-like ES3 and non-enumerable old V8 strings
module.exports = fails(function () {
  // throws an error in rhino, see https://github.com/mozilla/rhino/issues/346
  // eslint-disable-next-line no-prototype-builtins -- safe
  return !$Object('z').propertyIsEnumerable(0);
}) ? function (it) {
  return classof(it) === 'String' ? split(it, '') : $Object(it);
} : $Object;


/***/ }),

/***/ 83698:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var uncurryThis = __webpack_require__(72537);
var isCallable = __webpack_require__(9934);
var store = __webpack_require__(35509);

var functionToString = uncurryThis(Function.toString);

// this helper broken in `core-js@3.4.1-3.4.4`, so we can't use `shared` helper
if (!isCallable(store.inspectSource)) {
  store.inspectSource = function (it) {
    return functionToString(it);
  };
}

module.exports = store.inspectSource;


/***/ }),

/***/ 72071:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var isObject = __webpack_require__(39611);
var createNonEnumerableProperty = __webpack_require__(7151);

// `InstallErrorCause` abstract operation
// https://tc39.es/proposal-error-cause/#sec-errorobjects-install-error-cause
module.exports = function (O, options) {
  if (isObject(options) && 'cause' in options) {
    createNonEnumerableProperty(O, 'cause', options.cause);
  }
};


/***/ }),

/***/ 34084:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var NATIVE_WEAK_MAP = __webpack_require__(79033);
var global = __webpack_require__(5685);
var isObject = __webpack_require__(39611);
var createNonEnumerableProperty = __webpack_require__(7151);
var hasOwn = __webpack_require__(99027);
var shared = __webpack_require__(35509);
var sharedKey = __webpack_require__(43287);
var hiddenKeys = __webpack_require__(39775);

var OBJECT_ALREADY_INITIALIZED = 'Object already initialized';
var TypeError = global.TypeError;
var WeakMap = global.WeakMap;
var set, get, has;

var enforce = function (it) {
  return has(it) ? get(it) : set(it, {});
};

var getterFor = function (TYPE) {
  return function (it) {
    var state;
    if (!isObject(it) || (state = get(it)).type !== TYPE) {
      throw new TypeError('Incompatible receiver, ' + TYPE + ' required');
    } return state;
  };
};

if (NATIVE_WEAK_MAP || shared.state) {
  var store = shared.state || (shared.state = new WeakMap());
  /* eslint-disable no-self-assign -- prototype methods protection */
  store.get = store.get;
  store.has = store.has;
  store.set = store.set;
  /* eslint-enable no-self-assign -- prototype methods protection */
  set = function (it, metadata) {
    if (store.has(it)) throw new TypeError(OBJECT_ALREADY_INITIALIZED);
    metadata.facade = it;
    store.set(it, metadata);
    return metadata;
  };
  get = function (it) {
    return store.get(it) || {};
  };
  has = function (it) {
    return store.has(it);
  };
} else {
  var STATE = sharedKey('state');
  hiddenKeys[STATE] = true;
  set = function (it, metadata) {
    if (hasOwn(it, STATE)) throw new TypeError(OBJECT_ALREADY_INITIALIZED);
    metadata.facade = it;
    createNonEnumerableProperty(it, STATE, metadata);
    return metadata;
  };
  get = function (it) {
    return hasOwn(it, STATE) ? it[STATE] : {};
  };
  has = function (it) {
    return hasOwn(it, STATE);
  };
}

module.exports = {
  set: set,
  get: get,
  has: has,
  enforce: enforce,
  getterFor: getterFor
};


/***/ }),

/***/ 19273:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var wellKnownSymbol = __webpack_require__(52442);
var Iterators = __webpack_require__(99234);

var ITERATOR = wellKnownSymbol('iterator');
var ArrayPrototype = Array.prototype;

// check on default Array iterator
module.exports = function (it) {
  return it !== undefined && (Iterators.Array === it || ArrayPrototype[ITERATOR] === it);
};


/***/ }),

/***/ 13527:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var classof = __webpack_require__(44650);

// `IsArray` abstract operation
// https://tc39.es/ecma262/#sec-isarray
// eslint-disable-next-line es/no-array-isarray -- safe
module.exports = Array.isArray || function isArray(argument) {
  return classof(argument) === 'Array';
};


/***/ }),

/***/ 9934:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var $documentAll = __webpack_require__(9945);

var documentAll = $documentAll.all;

// `IsCallable` abstract operation
// https://tc39.es/ecma262/#sec-iscallable
module.exports = $documentAll.IS_HTMLDDA ? function (argument) {
  return typeof argument == 'function' || argument === documentAll;
} : function (argument) {
  return typeof argument == 'function';
};


/***/ }),

/***/ 57936:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var uncurryThis = __webpack_require__(72537);
var fails = __webpack_require__(49353);
var isCallable = __webpack_require__(9934);
var classof = __webpack_require__(56397);
var getBuiltIn = __webpack_require__(87192);
var inspectSource = __webpack_require__(83698);

var noop = function () { /* empty */ };
var empty = [];
var construct = getBuiltIn('Reflect', 'construct');
var constructorRegExp = /^\s*(?:class|function)\b/;
var exec = uncurryThis(constructorRegExp.exec);
var INCORRECT_TO_STRING = !constructorRegExp.test(noop);

var isConstructorModern = function isConstructor(argument) {
  if (!isCallable(argument)) return false;
  try {
    construct(noop, empty, argument);
    return true;
  } catch (error) {
    return false;
  }
};

var isConstructorLegacy = function isConstructor(argument) {
  if (!isCallable(argument)) return false;
  switch (classof(argument)) {
    case 'AsyncFunction':
    case 'GeneratorFunction':
    case 'AsyncGeneratorFunction': return false;
  }
  try {
    // we can't check .prototype since constructors produced by .bind haven't it
    // `Function#toString` throws on some built-it function in some legacy engines
    // (for example, `DOMQuad` and similar in FF41-)
    return INCORRECT_TO_STRING || !!exec(constructorRegExp, inspectSource(argument));
  } catch (error) {
    return true;
  }
};

isConstructorLegacy.sham = true;

// `IsConstructor` abstract operation
// https://tc39.es/ecma262/#sec-isconstructor
module.exports = !construct || fails(function () {
  var called;
  return isConstructorModern(isConstructorModern.call)
    || !isConstructorModern(Object)
    || !isConstructorModern(function () { called = true; })
    || called;
}) ? isConstructorLegacy : isConstructorModern;


/***/ }),

/***/ 35703:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var fails = __webpack_require__(49353);
var isCallable = __webpack_require__(9934);

var replacement = /#|\.prototype\./;

var isForced = function (feature, detection) {
  var value = data[normalize(feature)];
  return value === POLYFILL ? true
    : value === NATIVE ? false
    : isCallable(detection) ? fails(detection)
    : !!detection;
};

var normalize = isForced.normalize = function (string) {
  return String(string).replace(replacement, '.').toLowerCase();
};

var data = isForced.data = {};
var NATIVE = isForced.NATIVE = 'N';
var POLYFILL = isForced.POLYFILL = 'P';

module.exports = isForced;


/***/ }),

/***/ 44133:
/***/ (function(module) {

"use strict";

// we can't use just `it == null` since of `document.all` special case
// https://tc39.es/ecma262/#sec-IsHTMLDDA-internal-slot-aec
module.exports = function (it) {
  return it === null || it === undefined;
};


/***/ }),

/***/ 39611:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var isCallable = __webpack_require__(9934);
var $documentAll = __webpack_require__(9945);

var documentAll = $documentAll.all;

module.exports = $documentAll.IS_HTMLDDA ? function (it) {
  return typeof it == 'object' ? it !== null : isCallable(it) || it === documentAll;
} : function (it) {
  return typeof it == 'object' ? it !== null : isCallable(it);
};


/***/ }),

/***/ 14081:
/***/ (function(module) {

"use strict";

module.exports = true;


/***/ }),

/***/ 40205:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var getBuiltIn = __webpack_require__(87192);
var isCallable = __webpack_require__(9934);
var isPrototypeOf = __webpack_require__(61727);
var USE_SYMBOL_AS_UID = __webpack_require__(80016);

var $Object = Object;

module.exports = USE_SYMBOL_AS_UID ? function (it) {
  return typeof it == 'symbol';
} : function (it) {
  var $Symbol = getBuiltIn('Symbol');
  return isCallable($Symbol) && isPrototypeOf($Symbol.prototype, $Object(it));
};


/***/ }),

/***/ 89614:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var bind = __webpack_require__(29605);
var call = __webpack_require__(83417);
var anObject = __webpack_require__(18879);
var tryToString = __webpack_require__(1028);
var isArrayIteratorMethod = __webpack_require__(19273);
var lengthOfArrayLike = __webpack_require__(37165);
var isPrototypeOf = __webpack_require__(61727);
var getIterator = __webpack_require__(3029);
var getIteratorMethod = __webpack_require__(10610);
var iteratorClose = __webpack_require__(273);

var $TypeError = TypeError;

var Result = function (stopped, result) {
  this.stopped = stopped;
  this.result = result;
};

var ResultPrototype = Result.prototype;

module.exports = function (iterable, unboundFunction, options) {
  var that = options && options.that;
  var AS_ENTRIES = !!(options && options.AS_ENTRIES);
  var IS_RECORD = !!(options && options.IS_RECORD);
  var IS_ITERATOR = !!(options && options.IS_ITERATOR);
  var INTERRUPTED = !!(options && options.INTERRUPTED);
  var fn = bind(unboundFunction, that);
  var iterator, iterFn, index, length, result, next, step;

  var stop = function (condition) {
    if (iterator) iteratorClose(iterator, 'normal', condition);
    return new Result(true, condition);
  };

  var callFn = function (value) {
    if (AS_ENTRIES) {
      anObject(value);
      return INTERRUPTED ? fn(value[0], value[1], stop) : fn(value[0], value[1]);
    } return INTERRUPTED ? fn(value, stop) : fn(value);
  };

  if (IS_RECORD) {
    iterator = iterable.iterator;
  } else if (IS_ITERATOR) {
    iterator = iterable;
  } else {
    iterFn = getIteratorMethod(iterable);
    if (!iterFn) throw new $TypeError(tryToString(iterable) + ' is not iterable');
    // optimisation for array iterators
    if (isArrayIteratorMethod(iterFn)) {
      for (index = 0, length = lengthOfArrayLike(iterable); length > index; index++) {
        result = callFn(iterable[index]);
        if (result && isPrototypeOf(ResultPrototype, result)) return result;
      } return new Result(false);
    }
    iterator = getIterator(iterable, iterFn);
  }

  next = IS_RECORD ? iterable.next : iterator.next;
  while (!(step = call(next, iterator)).done) {
    try {
      result = callFn(step.value);
    } catch (error) {
      iteratorClose(iterator, 'throw', error);
    }
    if (typeof result == 'object' && result && isPrototypeOf(ResultPrototype, result)) return result;
  } return new Result(false);
};


/***/ }),

/***/ 273:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var call = __webpack_require__(83417);
var anObject = __webpack_require__(18879);
var getMethod = __webpack_require__(45752);

module.exports = function (iterator, kind, value) {
  var innerResult, innerError;
  anObject(iterator);
  try {
    innerResult = getMethod(iterator, 'return');
    if (!innerResult) {
      if (kind === 'throw') throw value;
      return value;
    }
    innerResult = call(innerResult, iterator);
  } catch (error) {
    innerError = true;
    innerResult = error;
  }
  if (kind === 'throw') throw value;
  if (innerError) throw innerResult;
  anObject(innerResult);
  return value;
};


/***/ }),

/***/ 14406:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var IteratorPrototype = (__webpack_require__(8176).IteratorPrototype);
var create = __webpack_require__(33010);
var createPropertyDescriptor = __webpack_require__(51567);
var setToStringTag = __webpack_require__(84196);
var Iterators = __webpack_require__(99234);

var returnThis = function () { return this; };

module.exports = function (IteratorConstructor, NAME, next, ENUMERABLE_NEXT) {
  var TO_STRING_TAG = NAME + ' Iterator';
  IteratorConstructor.prototype = create(IteratorPrototype, { next: createPropertyDescriptor(+!ENUMERABLE_NEXT, next) });
  setToStringTag(IteratorConstructor, TO_STRING_TAG, false, true);
  Iterators[TO_STRING_TAG] = returnThis;
  return IteratorConstructor;
};


/***/ }),

/***/ 6483:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var $ = __webpack_require__(74715);
var call = __webpack_require__(83417);
var IS_PURE = __webpack_require__(14081);
var FunctionName = __webpack_require__(28766);
var isCallable = __webpack_require__(9934);
var createIteratorConstructor = __webpack_require__(14406);
var getPrototypeOf = __webpack_require__(63863);
var setPrototypeOf = __webpack_require__(31350);
var setToStringTag = __webpack_require__(84196);
var createNonEnumerableProperty = __webpack_require__(7151);
var defineBuiltIn = __webpack_require__(31733);
var wellKnownSymbol = __webpack_require__(52442);
var Iterators = __webpack_require__(99234);
var IteratorsCore = __webpack_require__(8176);

var PROPER_FUNCTION_NAME = FunctionName.PROPER;
var CONFIGURABLE_FUNCTION_NAME = FunctionName.CONFIGURABLE;
var IteratorPrototype = IteratorsCore.IteratorPrototype;
var BUGGY_SAFARI_ITERATORS = IteratorsCore.BUGGY_SAFARI_ITERATORS;
var ITERATOR = wellKnownSymbol('iterator');
var KEYS = 'keys';
var VALUES = 'values';
var ENTRIES = 'entries';

var returnThis = function () { return this; };

module.exports = function (Iterable, NAME, IteratorConstructor, next, DEFAULT, IS_SET, FORCED) {
  createIteratorConstructor(IteratorConstructor, NAME, next);

  var getIterationMethod = function (KIND) {
    if (KIND === DEFAULT && defaultIterator) return defaultIterator;
    if (!BUGGY_SAFARI_ITERATORS && KIND && KIND in IterablePrototype) return IterablePrototype[KIND];

    switch (KIND) {
      case KEYS: return function keys() { return new IteratorConstructor(this, KIND); };
      case VALUES: return function values() { return new IteratorConstructor(this, KIND); };
      case ENTRIES: return function entries() { return new IteratorConstructor(this, KIND); };
    }

    return function () { return new IteratorConstructor(this); };
  };

  var TO_STRING_TAG = NAME + ' Iterator';
  var INCORRECT_VALUES_NAME = false;
  var IterablePrototype = Iterable.prototype;
  var nativeIterator = IterablePrototype[ITERATOR]
    || IterablePrototype['@@iterator']
    || DEFAULT && IterablePrototype[DEFAULT];
  var defaultIterator = !BUGGY_SAFARI_ITERATORS && nativeIterator || getIterationMethod(DEFAULT);
  var anyNativeIterator = NAME === 'Array' ? IterablePrototype.entries || nativeIterator : nativeIterator;
  var CurrentIteratorPrototype, methods, KEY;

  // fix native
  if (anyNativeIterator) {
    CurrentIteratorPrototype = getPrototypeOf(anyNativeIterator.call(new Iterable()));
    if (CurrentIteratorPrototype !== Object.prototype && CurrentIteratorPrototype.next) {
      if (!IS_PURE && getPrototypeOf(CurrentIteratorPrototype) !== IteratorPrototype) {
        if (setPrototypeOf) {
          setPrototypeOf(CurrentIteratorPrototype, IteratorPrototype);
        } else if (!isCallable(CurrentIteratorPrototype[ITERATOR])) {
          defineBuiltIn(CurrentIteratorPrototype, ITERATOR, returnThis);
        }
      }
      // Set @@toStringTag to native iterators
      setToStringTag(CurrentIteratorPrototype, TO_STRING_TAG, true, true);
      if (IS_PURE) Iterators[TO_STRING_TAG] = returnThis;
    }
  }

  // fix Array.prototype.{ values, @@iterator }.name in V8 / FF
  if (PROPER_FUNCTION_NAME && DEFAULT === VALUES && nativeIterator && nativeIterator.name !== VALUES) {
    if (!IS_PURE && CONFIGURABLE_FUNCTION_NAME) {
      createNonEnumerableProperty(IterablePrototype, 'name', VALUES);
    } else {
      INCORRECT_VALUES_NAME = true;
      defaultIterator = function values() { return call(nativeIterator, this); };
    }
  }

  // export additional methods
  if (DEFAULT) {
    methods = {
      values: getIterationMethod(VALUES),
      keys: IS_SET ? defaultIterator : getIterationMethod(KEYS),
      entries: getIterationMethod(ENTRIES)
    };
    if (FORCED) for (KEY in methods) {
      if (BUGGY_SAFARI_ITERATORS || INCORRECT_VALUES_NAME || !(KEY in IterablePrototype)) {
        defineBuiltIn(IterablePrototype, KEY, methods[KEY]);
      }
    } else $({ target: NAME, proto: true, forced: BUGGY_SAFARI_ITERATORS || INCORRECT_VALUES_NAME }, methods);
  }

  // define iterator
  if ((!IS_PURE || FORCED) && IterablePrototype[ITERATOR] !== defaultIterator) {
    defineBuiltIn(IterablePrototype, ITERATOR, defaultIterator, { name: DEFAULT });
  }
  Iterators[NAME] = defaultIterator;

  return methods;
};


/***/ }),

/***/ 8176:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var fails = __webpack_require__(49353);
var isCallable = __webpack_require__(9934);
var isObject = __webpack_require__(39611);
var create = __webpack_require__(33010);
var getPrototypeOf = __webpack_require__(63863);
var defineBuiltIn = __webpack_require__(31733);
var wellKnownSymbol = __webpack_require__(52442);
var IS_PURE = __webpack_require__(14081);

var ITERATOR = wellKnownSymbol('iterator');
var BUGGY_SAFARI_ITERATORS = false;

// `%IteratorPrototype%` object
// https://tc39.es/ecma262/#sec-%iteratorprototype%-object
var IteratorPrototype, PrototypeOfArrayIteratorPrototype, arrayIterator;

/* eslint-disable es/no-array-prototype-keys -- safe */
if ([].keys) {
  arrayIterator = [].keys();
  // Safari 8 has buggy iterators w/o `next`
  if (!('next' in arrayIterator)) BUGGY_SAFARI_ITERATORS = true;
  else {
    PrototypeOfArrayIteratorPrototype = getPrototypeOf(getPrototypeOf(arrayIterator));
    if (PrototypeOfArrayIteratorPrototype !== Object.prototype) IteratorPrototype = PrototypeOfArrayIteratorPrototype;
  }
}

var NEW_ITERATOR_PROTOTYPE = !isObject(IteratorPrototype) || fails(function () {
  var test = {};
  // FF44- legacy iterators case
  return IteratorPrototype[ITERATOR].call(test) !== test;
});

if (NEW_ITERATOR_PROTOTYPE) IteratorPrototype = {};
else if (IS_PURE) IteratorPrototype = create(IteratorPrototype);

// `%IteratorPrototype%[@@iterator]()` method
// https://tc39.es/ecma262/#sec-%iteratorprototype%-@@iterator
if (!isCallable(IteratorPrototype[ITERATOR])) {
  defineBuiltIn(IteratorPrototype, ITERATOR, function () {
    return this;
  });
}

module.exports = {
  IteratorPrototype: IteratorPrototype,
  BUGGY_SAFARI_ITERATORS: BUGGY_SAFARI_ITERATORS
};


/***/ }),

/***/ 99234:
/***/ (function(module) {

"use strict";

module.exports = {};


/***/ }),

/***/ 37165:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var toLength = __webpack_require__(71904);

// `LengthOfArrayLike` abstract operation
// https://tc39.es/ecma262/#sec-lengthofarraylike
module.exports = function (obj) {
  return toLength(obj.length);
};


/***/ }),

/***/ 88836:
/***/ (function(module) {

"use strict";

var ceil = Math.ceil;
var floor = Math.floor;

// `Math.trunc` method
// https://tc39.es/ecma262/#sec-math.trunc
// eslint-disable-next-line es/no-math-trunc -- safe
module.exports = Math.trunc || function trunc(x) {
  var n = +x;
  return (n > 0 ? floor : ceil)(n);
};


/***/ }),

/***/ 45996:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var global = __webpack_require__(5685);
var bind = __webpack_require__(29605);
var getOwnPropertyDescriptor = (__webpack_require__(45396).f);
var macrotask = (__webpack_require__(66727).set);
var Queue = __webpack_require__(55721);
var IS_IOS = __webpack_require__(28816);
var IS_IOS_PEBBLE = __webpack_require__(78309);
var IS_WEBOS_WEBKIT = __webpack_require__(9267);
var IS_NODE = __webpack_require__(44408);

var MutationObserver = global.MutationObserver || global.WebKitMutationObserver;
var document = global.document;
var process = global.process;
var Promise = global.Promise;
// Node.js 11 shows ExperimentalWarning on getting `queueMicrotask`
var queueMicrotaskDescriptor = getOwnPropertyDescriptor(global, 'queueMicrotask');
var microtask = queueMicrotaskDescriptor && queueMicrotaskDescriptor.value;
var notify, toggle, node, promise, then;

// modern engines have queueMicrotask method
if (!microtask) {
  var queue = new Queue();

  var flush = function () {
    var parent, fn;
    if (IS_NODE && (parent = process.domain)) parent.exit();
    while (fn = queue.get()) try {
      fn();
    } catch (error) {
      if (queue.head) notify();
      throw error;
    }
    if (parent) parent.enter();
  };

  // browsers with MutationObserver, except iOS - https://github.com/zloirock/core-js/issues/339
  // also except WebOS Webkit https://github.com/zloirock/core-js/issues/898
  if (!IS_IOS && !IS_NODE && !IS_WEBOS_WEBKIT && MutationObserver && document) {
    toggle = true;
    node = document.createTextNode('');
    new MutationObserver(flush).observe(node, { characterData: true });
    notify = function () {
      node.data = toggle = !toggle;
    };
  // environments with maybe non-completely correct, but existent Promise
  } else if (!IS_IOS_PEBBLE && Promise && Promise.resolve) {
    // Promise.resolve without an argument throws an error in LG WebOS 2
    promise = Promise.resolve(undefined);
    // workaround of WebKit ~ iOS Safari 10.1 bug
    promise.constructor = Promise;
    then = bind(promise.then, promise);
    notify = function () {
      then(flush);
    };
  // Node.js without promises
  } else if (IS_NODE) {
    notify = function () {
      process.nextTick(flush);
    };
  // for other environments - macrotask based on:
  // - setImmediate
  // - MessageChannel
  // - window.postMessage
  // - onreadystatechange
  // - setTimeout
  } else {
    // `webpack` dev server bug on IE global methods - use bind(fn, global)
    macrotask = bind(macrotask, global);
    notify = function () {
      macrotask(flush);
    };
  }

  microtask = function (fn) {
    if (!queue.head) notify();
    queue.add(fn);
  };
}

module.exports = microtask;


/***/ }),

/***/ 62157:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var aCallable = __webpack_require__(45935);

var $TypeError = TypeError;

var PromiseCapability = function (C) {
  var resolve, reject;
  this.promise = new C(function ($$resolve, $$reject) {
    if (resolve !== undefined || reject !== undefined) throw new $TypeError('Bad Promise constructor');
    resolve = $$resolve;
    reject = $$reject;
  });
  this.resolve = aCallable(resolve);
  this.reject = aCallable(reject);
};

// `NewPromiseCapability` abstract operation
// https://tc39.es/ecma262/#sec-newpromisecapability
module.exports.f = function (C) {
  return new PromiseCapability(C);
};


/***/ }),

/***/ 60081:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var toString = __webpack_require__(71182);

module.exports = function (argument, $default) {
  return argument === undefined ? arguments.length < 2 ? '' : $default : toString(argument);
};


/***/ }),

/***/ 33010:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

/* global ActiveXObject -- old IE, WSH */
var anObject = __webpack_require__(18879);
var definePropertiesModule = __webpack_require__(47832);
var enumBugKeys = __webpack_require__(30270);
var hiddenKeys = __webpack_require__(39775);
var html = __webpack_require__(26395);
var documentCreateElement = __webpack_require__(23729);
var sharedKey = __webpack_require__(43287);

var GT = '>';
var LT = '<';
var PROTOTYPE = 'prototype';
var SCRIPT = 'script';
var IE_PROTO = sharedKey('IE_PROTO');

var EmptyConstructor = function () { /* empty */ };

var scriptTag = function (content) {
  return LT + SCRIPT + GT + content + LT + '/' + SCRIPT + GT;
};

// Create object with fake `null` prototype: use ActiveX Object with cleared prototype
var NullProtoObjectViaActiveX = function (activeXDocument) {
  activeXDocument.write(scriptTag(''));
  activeXDocument.close();
  var temp = activeXDocument.parentWindow.Object;
  activeXDocument = null; // avoid memory leak
  return temp;
};

// Create object with fake `null` prototype: use iframe Object with cleared prototype
var NullProtoObjectViaIFrame = function () {
  // Thrash, waste and sodomy: IE GC bug
  var iframe = documentCreateElement('iframe');
  var JS = 'java' + SCRIPT + ':';
  var iframeDocument;
  iframe.style.display = 'none';
  html.appendChild(iframe);
  // https://github.com/zloirock/core-js/issues/475
  iframe.src = String(JS);
  iframeDocument = iframe.contentWindow.document;
  iframeDocument.open();
  iframeDocument.write(scriptTag('document.F=Object'));
  iframeDocument.close();
  return iframeDocument.F;
};

// Check for document.domain and active x support
// No need to use active x approach when document.domain is not set
// see https://github.com/es-shims/es5-shim/issues/150
// variation of https://github.com/kitcambridge/es5-shim/commit/4f738ac066346
// avoid IE GC bug
var activeXDocument;
var NullProtoObject = function () {
  try {
    activeXDocument = new ActiveXObject('htmlfile');
  } catch (error) { /* ignore */ }
  NullProtoObject = typeof document != 'undefined'
    ? document.domain && activeXDocument
      ? NullProtoObjectViaActiveX(activeXDocument) // old IE
      : NullProtoObjectViaIFrame()
    : NullProtoObjectViaActiveX(activeXDocument); // WSH
  var length = enumBugKeys.length;
  while (length--) delete NullProtoObject[PROTOTYPE][enumBugKeys[length]];
  return NullProtoObject();
};

hiddenKeys[IE_PROTO] = true;

// `Object.create` method
// https://tc39.es/ecma262/#sec-object.create
// eslint-disable-next-line es/no-object-create -- safe
module.exports = Object.create || function create(O, Properties) {
  var result;
  if (O !== null) {
    EmptyConstructor[PROTOTYPE] = anObject(O);
    result = new EmptyConstructor();
    EmptyConstructor[PROTOTYPE] = null;
    // add "__proto__" for Object.getPrototypeOf polyfill
    result[IE_PROTO] = O;
  } else result = NullProtoObject();
  return Properties === undefined ? result : definePropertiesModule.f(result, Properties);
};


/***/ }),

/***/ 47832:
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {

"use strict";

var DESCRIPTORS = __webpack_require__(43794);
var V8_PROTOTYPE_DEFINE_BUG = __webpack_require__(77956);
var definePropertyModule = __webpack_require__(81890);
var anObject = __webpack_require__(18879);
var toIndexedObject = __webpack_require__(73747);
var objectKeys = __webpack_require__(67508);

// `Object.defineProperties` method
// https://tc39.es/ecma262/#sec-object.defineproperties
// eslint-disable-next-line es/no-object-defineproperties -- safe
exports.f = DESCRIPTORS && !V8_PROTOTYPE_DEFINE_BUG ? Object.defineProperties : function defineProperties(O, Properties) {
  anObject(O);
  var props = toIndexedObject(Properties);
  var keys = objectKeys(Properties);
  var length = keys.length;
  var index = 0;
  var key;
  while (length > index) definePropertyModule.f(O, key = keys[index++], props[key]);
  return O;
};


/***/ }),

/***/ 81890:
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {

"use strict";

var DESCRIPTORS = __webpack_require__(43794);
var IE8_DOM_DEFINE = __webpack_require__(59548);
var V8_PROTOTYPE_DEFINE_BUG = __webpack_require__(77956);
var anObject = __webpack_require__(18879);
var toPropertyKey = __webpack_require__(91525);

var $TypeError = TypeError;
// eslint-disable-next-line es/no-object-defineproperty -- safe
var $defineProperty = Object.defineProperty;
// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe
var $getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;
var ENUMERABLE = 'enumerable';
var CONFIGURABLE = 'configurable';
var WRITABLE = 'writable';

// `Object.defineProperty` method
// https://tc39.es/ecma262/#sec-object.defineproperty
exports.f = DESCRIPTORS ? V8_PROTOTYPE_DEFINE_BUG ? function defineProperty(O, P, Attributes) {
  anObject(O);
  P = toPropertyKey(P);
  anObject(Attributes);
  if (typeof O === 'function' && P === 'prototype' && 'value' in Attributes && WRITABLE in Attributes && !Attributes[WRITABLE]) {
    var current = $getOwnPropertyDescriptor(O, P);
    if (current && current[WRITABLE]) {
      O[P] = Attributes.value;
      Attributes = {
        configurable: CONFIGURABLE in Attributes ? Attributes[CONFIGURABLE] : current[CONFIGURABLE],
        enumerable: ENUMERABLE in Attributes ? Attributes[ENUMERABLE] : current[ENUMERABLE],
        writable: false
      };
    }
  } return $defineProperty(O, P, Attributes);
} : $defineProperty : function defineProperty(O, P, Attributes) {
  anObject(O);
  P = toPropertyKey(P);
  anObject(Attributes);
  if (IE8_DOM_DEFINE) try {
    return $defineProperty(O, P, Attributes);
  } catch (error) { /* empty */ }
  if ('get' in Attributes || 'set' in Attributes) throw new $TypeError('Accessors not supported');
  if ('value' in Attributes) O[P] = Attributes.value;
  return O;
};


/***/ }),

/***/ 45396:
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {

"use strict";

var DESCRIPTORS = __webpack_require__(43794);
var call = __webpack_require__(83417);
var propertyIsEnumerableModule = __webpack_require__(99106);
var createPropertyDescriptor = __webpack_require__(51567);
var toIndexedObject = __webpack_require__(73747);
var toPropertyKey = __webpack_require__(91525);
var hasOwn = __webpack_require__(99027);
var IE8_DOM_DEFINE = __webpack_require__(59548);

// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe
var $getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;

// `Object.getOwnPropertyDescriptor` method
// https://tc39.es/ecma262/#sec-object.getownpropertydescriptor
exports.f = DESCRIPTORS ? $getOwnPropertyDescriptor : function getOwnPropertyDescriptor(O, P) {
  O = toIndexedObject(O);
  P = toPropertyKey(P);
  if (IE8_DOM_DEFINE) try {
    return $getOwnPropertyDescriptor(O, P);
  } catch (error) { /* empty */ }
  if (hasOwn(O, P)) return createPropertyDescriptor(!call(propertyIsEnumerableModule.f, O, P), O[P]);
};


/***/ }),

/***/ 87195:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

/* eslint-disable es/no-object-getownpropertynames -- safe */
var classof = __webpack_require__(44650);
var toIndexedObject = __webpack_require__(73747);
var $getOwnPropertyNames = (__webpack_require__(94582).f);
var arraySlice = __webpack_require__(14030);

var windowNames = typeof window == 'object' && window && Object.getOwnPropertyNames
  ? Object.getOwnPropertyNames(window) : [];

var getWindowNames = function (it) {
  try {
    return $getOwnPropertyNames(it);
  } catch (error) {
    return arraySlice(windowNames);
  }
};

// fallback for IE11 buggy Object.getOwnPropertyNames with iframe and window
module.exports.f = function getOwnPropertyNames(it) {
  return windowNames && classof(it) === 'Window'
    ? getWindowNames(it)
    : $getOwnPropertyNames(toIndexedObject(it));
};


/***/ }),

/***/ 94582:
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {

"use strict";

var internalObjectKeys = __webpack_require__(60097);
var enumBugKeys = __webpack_require__(30270);

var hiddenKeys = enumBugKeys.concat('length', 'prototype');

// `Object.getOwnPropertyNames` method
// https://tc39.es/ecma262/#sec-object.getownpropertynames
// eslint-disable-next-line es/no-object-getownpropertynames -- safe
exports.f = Object.getOwnPropertyNames || function getOwnPropertyNames(O) {
  return internalObjectKeys(O, hiddenKeys);
};


/***/ }),

/***/ 56953:
/***/ (function(__unused_webpack_module, exports) {

"use strict";

// eslint-disable-next-line es/no-object-getownpropertysymbols -- safe
exports.f = Object.getOwnPropertySymbols;


/***/ }),

/***/ 63863:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var hasOwn = __webpack_require__(99027);
var isCallable = __webpack_require__(9934);
var toObject = __webpack_require__(42962);
var sharedKey = __webpack_require__(43287);
var CORRECT_PROTOTYPE_GETTER = __webpack_require__(24853);

var IE_PROTO = sharedKey('IE_PROTO');
var $Object = Object;
var ObjectPrototype = $Object.prototype;

// `Object.getPrototypeOf` method
// https://tc39.es/ecma262/#sec-object.getprototypeof
// eslint-disable-next-line es/no-object-getprototypeof -- safe
module.exports = CORRECT_PROTOTYPE_GETTER ? $Object.getPrototypeOf : function (O) {
  var object = toObject(O);
  if (hasOwn(object, IE_PROTO)) return object[IE_PROTO];
  var constructor = object.constructor;
  if (isCallable(constructor) && object instanceof constructor) {
    return constructor.prototype;
  } return object instanceof $Object ? ObjectPrototype : null;
};


/***/ }),

/***/ 61727:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var uncurryThis = __webpack_require__(72537);

module.exports = uncurryThis({}.isPrototypeOf);


/***/ }),

/***/ 60097:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var uncurryThis = __webpack_require__(72537);
var hasOwn = __webpack_require__(99027);
var toIndexedObject = __webpack_require__(73747);
var indexOf = (__webpack_require__(78520).indexOf);
var hiddenKeys = __webpack_require__(39775);

var push = uncurryThis([].push);

module.exports = function (object, names) {
  var O = toIndexedObject(object);
  var i = 0;
  var result = [];
  var key;
  for (key in O) !hasOwn(hiddenKeys, key) && hasOwn(O, key) && push(result, key);
  // Don't enum bug & hidden keys
  while (names.length > i) if (hasOwn(O, key = names[i++])) {
    ~indexOf(result, key) || push(result, key);
  }
  return result;
};


/***/ }),

/***/ 67508:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var internalObjectKeys = __webpack_require__(60097);
var enumBugKeys = __webpack_require__(30270);

// `Object.keys` method
// https://tc39.es/ecma262/#sec-object.keys
// eslint-disable-next-line es/no-object-keys -- safe
module.exports = Object.keys || function keys(O) {
  return internalObjectKeys(O, enumBugKeys);
};


/***/ }),

/***/ 99106:
/***/ (function(__unused_webpack_module, exports) {

"use strict";

var $propertyIsEnumerable = {}.propertyIsEnumerable;
// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe
var getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;

// Nashorn ~ JDK8 bug
var NASHORN_BUG = getOwnPropertyDescriptor && !$propertyIsEnumerable.call({ 1: 2 }, 1);

// `Object.prototype.propertyIsEnumerable` method implementation
// https://tc39.es/ecma262/#sec-object.prototype.propertyisenumerable
exports.f = NASHORN_BUG ? function propertyIsEnumerable(V) {
  var descriptor = getOwnPropertyDescriptor(this, V);
  return !!descriptor && descriptor.enumerable;
} : $propertyIsEnumerable;


/***/ }),

/***/ 31350:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

/* eslint-disable no-proto -- safe */
var uncurryThisAccessor = __webpack_require__(47665);
var anObject = __webpack_require__(18879);
var aPossiblePrototype = __webpack_require__(37844);

// `Object.setPrototypeOf` method
// https://tc39.es/ecma262/#sec-object.setprototypeof
// Works with __proto__ only. Old v8 can't work with null proto objects.
// eslint-disable-next-line es/no-object-setprototypeof -- safe
module.exports = Object.setPrototypeOf || ('__proto__' in {} ? function () {
  var CORRECT_SETTER = false;
  var test = {};
  var setter;
  try {
    setter = uncurryThisAccessor(Object.prototype, '__proto__', 'set');
    setter(test, []);
    CORRECT_SETTER = test instanceof Array;
  } catch (error) { /* empty */ }
  return function setPrototypeOf(O, proto) {
    anObject(O);
    aPossiblePrototype(proto);
    if (CORRECT_SETTER) setter(O, proto);
    else O.__proto__ = proto;
    return O;
  };
}() : undefined);


/***/ }),

/***/ 48516:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var TO_STRING_TAG_SUPPORT = __webpack_require__(23220);
var classof = __webpack_require__(56397);

// `Object.prototype.toString` method implementation
// https://tc39.es/ecma262/#sec-object.prototype.tostring
module.exports = TO_STRING_TAG_SUPPORT ? {}.toString : function toString() {
  return '[object ' + classof(this) + ']';
};


/***/ }),

/***/ 58733:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var call = __webpack_require__(83417);
var isCallable = __webpack_require__(9934);
var isObject = __webpack_require__(39611);

var $TypeError = TypeError;

// `OrdinaryToPrimitive` abstract operation
// https://tc39.es/ecma262/#sec-ordinarytoprimitive
module.exports = function (input, pref) {
  var fn, val;
  if (pref === 'string' && isCallable(fn = input.toString) && !isObject(val = call(fn, input))) return val;
  if (isCallable(fn = input.valueOf) && !isObject(val = call(fn, input))) return val;
  if (pref !== 'string' && isCallable(fn = input.toString) && !isObject(val = call(fn, input))) return val;
  throw new $TypeError("Can't convert object to primitive value");
};


/***/ }),

/***/ 704:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var getBuiltIn = __webpack_require__(87192);
var uncurryThis = __webpack_require__(72537);
var getOwnPropertyNamesModule = __webpack_require__(94582);
var getOwnPropertySymbolsModule = __webpack_require__(56953);
var anObject = __webpack_require__(18879);

var concat = uncurryThis([].concat);

// all object keys, includes non-enumerable and symbols
module.exports = getBuiltIn('Reflect', 'ownKeys') || function ownKeys(it) {
  var keys = getOwnPropertyNamesModule.f(anObject(it));
  var getOwnPropertySymbols = getOwnPropertySymbolsModule.f;
  return getOwnPropertySymbols ? concat(keys, getOwnPropertySymbols(it)) : keys;
};


/***/ }),

/***/ 29068:
/***/ (function(module) {

"use strict";

module.exports = {};


/***/ }),

/***/ 93183:
/***/ (function(module) {

"use strict";

module.exports = function (exec) {
  try {
    return { error: false, value: exec() };
  } catch (error) {
    return { error: true, value: error };
  }
};


/***/ }),

/***/ 24865:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var global = __webpack_require__(5685);
var NativePromiseConstructor = __webpack_require__(93159);
var isCallable = __webpack_require__(9934);
var isForced = __webpack_require__(35703);
var inspectSource = __webpack_require__(83698);
var wellKnownSymbol = __webpack_require__(52442);
var IS_BROWSER = __webpack_require__(3);
var IS_DENO = __webpack_require__(99207);
var IS_PURE = __webpack_require__(14081);
var V8_VERSION = __webpack_require__(15131);

var NativePromisePrototype = NativePromiseConstructor && NativePromiseConstructor.prototype;
var SPECIES = wellKnownSymbol('species');
var SUBCLASSING = false;
var NATIVE_PROMISE_REJECTION_EVENT = isCallable(global.PromiseRejectionEvent);

var FORCED_PROMISE_CONSTRUCTOR = isForced('Promise', function () {
  var PROMISE_CONSTRUCTOR_SOURCE = inspectSource(NativePromiseConstructor);
  var GLOBAL_CORE_JS_PROMISE = PROMISE_CONSTRUCTOR_SOURCE !== String(NativePromiseConstructor);
  // V8 6.6 (Node 10 and Chrome 66) have a bug with resolving custom thenables
  // https://bugs.chromium.org/p/chromium/issues/detail?id=830565
  // We can't detect it synchronously, so just check versions
  if (!GLOBAL_CORE_JS_PROMISE && V8_VERSION === 66) return true;
  // We need Promise#{ catch, finally } in the pure version for preventing prototype pollution
  if (IS_PURE && !(NativePromisePrototype['catch'] && NativePromisePrototype['finally'])) return true;
  // We can't use @@species feature detection in V8 since it causes
  // deoptimization and performance degradation
  // https://github.com/zloirock/core-js/issues/679
  if (!V8_VERSION || V8_VERSION < 51 || !/native code/.test(PROMISE_CONSTRUCTOR_SOURCE)) {
    // Detect correctness of subclassing with @@species support
    var promise = new NativePromiseConstructor(function (resolve) { resolve(1); });
    var FakePromise = function (exec) {
      exec(function () { /* empty */ }, function () { /* empty */ });
    };
    var constructor = promise.constructor = {};
    constructor[SPECIES] = FakePromise;
    SUBCLASSING = promise.then(function () { /* empty */ }) instanceof FakePromise;
    if (!SUBCLASSING) return true;
  // Unhandled rejections tracking support, NodeJS Promise without it fails @@species test
  } return !GLOBAL_CORE_JS_PROMISE && (IS_BROWSER || IS_DENO) && !NATIVE_PROMISE_REJECTION_EVENT;
});

module.exports = {
  CONSTRUCTOR: FORCED_PROMISE_CONSTRUCTOR,
  REJECTION_EVENT: NATIVE_PROMISE_REJECTION_EVENT,
  SUBCLASSING: SUBCLASSING
};


/***/ }),

/***/ 93159:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var global = __webpack_require__(5685);

module.exports = global.Promise;


/***/ }),

/***/ 85712:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var anObject = __webpack_require__(18879);
var isObject = __webpack_require__(39611);
var newPromiseCapability = __webpack_require__(62157);

module.exports = function (C, x) {
  anObject(C);
  if (isObject(x) && x.constructor === C) return x;
  var promiseCapability = newPromiseCapability.f(C);
  var resolve = promiseCapability.resolve;
  resolve(x);
  return promiseCapability.promise;
};


/***/ }),

/***/ 77290:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var NativePromiseConstructor = __webpack_require__(93159);
var checkCorrectnessOfIteration = __webpack_require__(97670);
var FORCED_PROMISE_CONSTRUCTOR = (__webpack_require__(24865).CONSTRUCTOR);

module.exports = FORCED_PROMISE_CONSTRUCTOR || !checkCorrectnessOfIteration(function (iterable) {
  NativePromiseConstructor.all(iterable).then(undefined, function () { /* empty */ });
});


/***/ }),

/***/ 55721:
/***/ (function(module) {

"use strict";

var Queue = function () {
  this.head = null;
  this.tail = null;
};

Queue.prototype = {
  add: function (item) {
    var entry = { item: item, next: null };
    var tail = this.tail;
    if (tail) tail.next = entry;
    else this.head = entry;
    this.tail = entry;
  },
  get: function () {
    var entry = this.head;
    if (entry) {
      var next = this.head = entry.next;
      if (next === null) this.tail = null;
      return entry.item;
    }
  }
};

module.exports = Queue;


/***/ }),

/***/ 89823:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var isNullOrUndefined = __webpack_require__(44133);

var $TypeError = TypeError;

// `RequireObjectCoercible` abstract operation
// https://tc39.es/ecma262/#sec-requireobjectcoercible
module.exports = function (it) {
  if (isNullOrUndefined(it)) throw new $TypeError("Can't call method on " + it);
  return it;
};


/***/ }),

/***/ 4799:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var getBuiltIn = __webpack_require__(87192);
var defineBuiltInAccessor = __webpack_require__(63089);
var wellKnownSymbol = __webpack_require__(52442);
var DESCRIPTORS = __webpack_require__(43794);

var SPECIES = wellKnownSymbol('species');

module.exports = function (CONSTRUCTOR_NAME) {
  var Constructor = getBuiltIn(CONSTRUCTOR_NAME);

  if (DESCRIPTORS && Constructor && !Constructor[SPECIES]) {
    defineBuiltInAccessor(Constructor, SPECIES, {
      configurable: true,
      get: function () { return this; }
    });
  }
};


/***/ }),

/***/ 84196:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var TO_STRING_TAG_SUPPORT = __webpack_require__(23220);
var defineProperty = (__webpack_require__(81890).f);
var createNonEnumerableProperty = __webpack_require__(7151);
var hasOwn = __webpack_require__(99027);
var toString = __webpack_require__(48516);
var wellKnownSymbol = __webpack_require__(52442);

var TO_STRING_TAG = wellKnownSymbol('toStringTag');

module.exports = function (it, TAG, STATIC, SET_METHOD) {
  var target = STATIC ? it : it && it.prototype;
  if (target) {
    if (!hasOwn(target, TO_STRING_TAG)) {
      defineProperty(target, TO_STRING_TAG, { configurable: true, value: TAG });
    }
    if (SET_METHOD && !TO_STRING_TAG_SUPPORT) {
      createNonEnumerableProperty(target, 'toString', toString);
    }
  }
};


/***/ }),

/***/ 43287:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var shared = __webpack_require__(73921);
var uid = __webpack_require__(23440);

var keys = shared('keys');

module.exports = function (key) {
  return keys[key] || (keys[key] = uid(key));
};


/***/ }),

/***/ 35509:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var global = __webpack_require__(5685);
var defineGlobalProperty = __webpack_require__(20543);

var SHARED = '__core-js_shared__';
var store = global[SHARED] || defineGlobalProperty(SHARED, {});

module.exports = store;


/***/ }),

/***/ 73921:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var IS_PURE = __webpack_require__(14081);
var store = __webpack_require__(35509);

(module.exports = function (key, value) {
  return store[key] || (store[key] = value !== undefined ? value : {});
})('versions', []).push({
  version: '3.34.0',
  mode: IS_PURE ? 'pure' : 'global',
  copyright: '© 2014-2023 Denis Pushkarev (zloirock.ru)',
  license: 'https://github.com/zloirock/core-js/blob/v3.34.0/LICENSE',
  source: 'https://github.com/zloirock/core-js'
});


/***/ }),

/***/ 49022:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var anObject = __webpack_require__(18879);
var aConstructor = __webpack_require__(73164);
var isNullOrUndefined = __webpack_require__(44133);
var wellKnownSymbol = __webpack_require__(52442);

var SPECIES = wellKnownSymbol('species');

// `SpeciesConstructor` abstract operation
// https://tc39.es/ecma262/#sec-speciesconstructor
module.exports = function (O, defaultConstructor) {
  var C = anObject(O).constructor;
  var S;
  return C === undefined || isNullOrUndefined(S = anObject(C)[SPECIES]) ? defaultConstructor : aConstructor(S);
};


/***/ }),

/***/ 45202:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var uncurryThis = __webpack_require__(72537);
var toIntegerOrInfinity = __webpack_require__(96169);
var toString = __webpack_require__(71182);
var requireObjectCoercible = __webpack_require__(89823);

var charAt = uncurryThis(''.charAt);
var charCodeAt = uncurryThis(''.charCodeAt);
var stringSlice = uncurryThis(''.slice);

var createMethod = function (CONVERT_TO_STRING) {
  return function ($this, pos) {
    var S = toString(requireObjectCoercible($this));
    var position = toIntegerOrInfinity(pos);
    var size = S.length;
    var first, second;
    if (position < 0 || position >= size) return CONVERT_TO_STRING ? '' : undefined;
    first = charCodeAt(S, position);
    return first < 0xD800 || first > 0xDBFF || position + 1 === size
      || (second = charCodeAt(S, position + 1)) < 0xDC00 || second > 0xDFFF
        ? CONVERT_TO_STRING
          ? charAt(S, position)
          : first
        : CONVERT_TO_STRING
          ? stringSlice(S, position, position + 2)
          : (first - 0xD800 << 10) + (second - 0xDC00) + 0x10000;
  };
};

module.exports = {
  // `String.prototype.codePointAt` method
  // https://tc39.es/ecma262/#sec-string.prototype.codepointat
  codeAt: createMethod(false),
  // `String.prototype.at` method
  // https://github.com/mathiasbynens/String.prototype.at
  charAt: createMethod(true)
};


/***/ }),

/***/ 34086:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

/* eslint-disable es/no-symbol -- required for testing */
var V8_VERSION = __webpack_require__(15131);
var fails = __webpack_require__(49353);
var global = __webpack_require__(5685);

var $String = global.String;

// eslint-disable-next-line es/no-object-getownpropertysymbols -- required for testing
module.exports = !!Object.getOwnPropertySymbols && !fails(function () {
  var symbol = Symbol('symbol detection');
  // Chrome 38 Symbol has incorrect toString conversion
  // `get-own-property-symbols` polyfill symbols converted to object are not Symbol instances
  // nb: Do not call `String` directly to avoid this being optimized out to `symbol+''` which will,
  // of course, fail.
  return !$String(symbol) || !(Object(symbol) instanceof Symbol) ||
    // Chrome 38-40 symbols are not inherited from DOM collections prototypes to instances
    !Symbol.sham && V8_VERSION && V8_VERSION < 41;
});


/***/ }),

/***/ 89681:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var call = __webpack_require__(83417);
var getBuiltIn = __webpack_require__(87192);
var wellKnownSymbol = __webpack_require__(52442);
var defineBuiltIn = __webpack_require__(31733);

module.exports = function () {
  var Symbol = getBuiltIn('Symbol');
  var SymbolPrototype = Symbol && Symbol.prototype;
  var valueOf = SymbolPrototype && SymbolPrototype.valueOf;
  var TO_PRIMITIVE = wellKnownSymbol('toPrimitive');

  if (SymbolPrototype && !SymbolPrototype[TO_PRIMITIVE]) {
    // `Symbol.prototype[@@toPrimitive]` method
    // https://tc39.es/ecma262/#sec-symbol.prototype-@@toprimitive
    // eslint-disable-next-line no-unused-vars -- required for .length
    defineBuiltIn(SymbolPrototype, TO_PRIMITIVE, function (hint) {
      return call(valueOf, this);
    }, { arity: 1 });
  }
};


/***/ }),

/***/ 53203:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var getBuiltIn = __webpack_require__(87192);
var uncurryThis = __webpack_require__(72537);

var Symbol = getBuiltIn('Symbol');
var keyFor = Symbol.keyFor;
var thisSymbolValue = uncurryThis(Symbol.prototype.valueOf);

// `Symbol.isRegisteredSymbol` method
// https://tc39.es/proposal-symbol-predicates/#sec-symbol-isregisteredsymbol
module.exports = Symbol.isRegisteredSymbol || function isRegisteredSymbol(value) {
  try {
    return keyFor(thisSymbolValue(value)) !== undefined;
  } catch (error) {
    return false;
  }
};


/***/ }),

/***/ 99003:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var shared = __webpack_require__(73921);
var getBuiltIn = __webpack_require__(87192);
var uncurryThis = __webpack_require__(72537);
var isSymbol = __webpack_require__(40205);
var wellKnownSymbol = __webpack_require__(52442);

var Symbol = getBuiltIn('Symbol');
var $isWellKnownSymbol = Symbol.isWellKnownSymbol;
var getOwnPropertyNames = getBuiltIn('Object', 'getOwnPropertyNames');
var thisSymbolValue = uncurryThis(Symbol.prototype.valueOf);
var WellKnownSymbolsStore = shared('wks');

for (var i = 0, symbolKeys = getOwnPropertyNames(Symbol), symbolKeysLength = symbolKeys.length; i < symbolKeysLength; i++) {
  // some old engines throws on access to some keys like `arguments` or `caller`
  try {
    var symbolKey = symbolKeys[i];
    if (isSymbol(Symbol[symbolKey])) wellKnownSymbol(symbolKey);
  } catch (error) { /* empty */ }
}

// `Symbol.isWellKnownSymbol` method
// https://tc39.es/proposal-symbol-predicates/#sec-symbol-iswellknownsymbol
// We should patch it for newly added well-known symbols. If it's not required, this module just will not be injected
module.exports = function isWellKnownSymbol(value) {
  if ($isWellKnownSymbol && $isWellKnownSymbol(value)) return true;
  try {
    var symbol = thisSymbolValue(value);
    for (var j = 0, keys = getOwnPropertyNames(WellKnownSymbolsStore), keysLength = keys.length; j < keysLength; j++) {
      // eslint-disable-next-line eqeqeq -- polyfilled symbols case
      if (WellKnownSymbolsStore[keys[j]] == symbol) return true;
    }
  } catch (error) { /* empty */ }
  return false;
};


/***/ }),

/***/ 45731:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var NATIVE_SYMBOL = __webpack_require__(34086);

/* eslint-disable es/no-symbol -- safe */
module.exports = NATIVE_SYMBOL && !!Symbol['for'] && !!Symbol.keyFor;


/***/ }),

/***/ 66727:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var global = __webpack_require__(5685);
var apply = __webpack_require__(10145);
var bind = __webpack_require__(29605);
var isCallable = __webpack_require__(9934);
var hasOwn = __webpack_require__(99027);
var fails = __webpack_require__(49353);
var html = __webpack_require__(26395);
var arraySlice = __webpack_require__(52076);
var createElement = __webpack_require__(23729);
var validateArgumentsLength = __webpack_require__(12891);
var IS_IOS = __webpack_require__(28816);
var IS_NODE = __webpack_require__(44408);

var set = global.setImmediate;
var clear = global.clearImmediate;
var process = global.process;
var Dispatch = global.Dispatch;
var Function = global.Function;
var MessageChannel = global.MessageChannel;
var String = global.String;
var counter = 0;
var queue = {};
var ONREADYSTATECHANGE = 'onreadystatechange';
var $location, defer, channel, port;

fails(function () {
  // Deno throws a ReferenceError on `location` access without `--location` flag
  $location = global.location;
});

var run = function (id) {
  if (hasOwn(queue, id)) {
    var fn = queue[id];
    delete queue[id];
    fn();
  }
};

var runner = function (id) {
  return function () {
    run(id);
  };
};

var eventListener = function (event) {
  run(event.data);
};

var globalPostMessageDefer = function (id) {
  // old engines have not location.origin
  global.postMessage(String(id), $location.protocol + '//' + $location.host);
};

// Node.js 0.9+ & IE10+ has setImmediate, otherwise:
if (!set || !clear) {
  set = function setImmediate(handler) {
    validateArgumentsLength(arguments.length, 1);
    var fn = isCallable(handler) ? handler : Function(handler);
    var args = arraySlice(arguments, 1);
    queue[++counter] = function () {
      apply(fn, undefined, args);
    };
    defer(counter);
    return counter;
  };
  clear = function clearImmediate(id) {
    delete queue[id];
  };
  // Node.js 0.8-
  if (IS_NODE) {
    defer = function (id) {
      process.nextTick(runner(id));
    };
  // Sphere (JS game engine) Dispatch API
  } else if (Dispatch && Dispatch.now) {
    defer = function (id) {
      Dispatch.now(runner(id));
    };
  // Browsers with MessageChannel, includes WebWorkers
  // except iOS - https://github.com/zloirock/core-js/issues/624
  } else if (MessageChannel && !IS_IOS) {
    channel = new MessageChannel();
    port = channel.port2;
    channel.port1.onmessage = eventListener;
    defer = bind(port.postMessage, port);
  // Browsers with postMessage, skip WebWorkers
  // IE8 has postMessage, but it's sync & typeof its postMessage is 'object'
  } else if (
    global.addEventListener &&
    isCallable(global.postMessage) &&
    !global.importScripts &&
    $location && $location.protocol !== 'file:' &&
    !fails(globalPostMessageDefer)
  ) {
    defer = globalPostMessageDefer;
    global.addEventListener('message', eventListener, false);
  // IE8-
  } else if (ONREADYSTATECHANGE in createElement('script')) {
    defer = function (id) {
      html.appendChild(createElement('script'))[ONREADYSTATECHANGE] = function () {
        html.removeChild(this);
        run(id);
      };
    };
  // Rest old browsers
  } else {
    defer = function (id) {
      setTimeout(runner(id), 0);
    };
  }
}

module.exports = {
  set: set,
  clear: clear
};


/***/ }),

/***/ 58100:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var toIntegerOrInfinity = __webpack_require__(96169);

var max = Math.max;
var min = Math.min;

// Helper for a popular repeating case of the spec:
// Let integer be ? ToInteger(index).
// If integer < 0, let result be max((length + integer), 0); else let result be min(integer, length).
module.exports = function (index, length) {
  var integer = toIntegerOrInfinity(index);
  return integer < 0 ? max(integer + length, 0) : min(integer, length);
};


/***/ }),

/***/ 73747:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

// toObject with fallback for non-array-like ES3 strings
var IndexedObject = __webpack_require__(108);
var requireObjectCoercible = __webpack_require__(89823);

module.exports = function (it) {
  return IndexedObject(requireObjectCoercible(it));
};


/***/ }),

/***/ 96169:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var trunc = __webpack_require__(88836);

// `ToIntegerOrInfinity` abstract operation
// https://tc39.es/ecma262/#sec-tointegerorinfinity
module.exports = function (argument) {
  var number = +argument;
  // eslint-disable-next-line no-self-compare -- NaN check
  return number !== number || number === 0 ? 0 : trunc(number);
};


/***/ }),

/***/ 71904:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var toIntegerOrInfinity = __webpack_require__(96169);

var min = Math.min;

// `ToLength` abstract operation
// https://tc39.es/ecma262/#sec-tolength
module.exports = function (argument) {
  return argument > 0 ? min(toIntegerOrInfinity(argument), 0x1FFFFFFFFFFFFF) : 0; // 2 ** 53 - 1 == 9007199254740991
};


/***/ }),

/***/ 42962:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var requireObjectCoercible = __webpack_require__(89823);

var $Object = Object;

// `ToObject` abstract operation
// https://tc39.es/ecma262/#sec-toobject
module.exports = function (argument) {
  return $Object(requireObjectCoercible(argument));
};


/***/ }),

/***/ 50681:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var call = __webpack_require__(83417);
var isObject = __webpack_require__(39611);
var isSymbol = __webpack_require__(40205);
var getMethod = __webpack_require__(45752);
var ordinaryToPrimitive = __webpack_require__(58733);
var wellKnownSymbol = __webpack_require__(52442);

var $TypeError = TypeError;
var TO_PRIMITIVE = wellKnownSymbol('toPrimitive');

// `ToPrimitive` abstract operation
// https://tc39.es/ecma262/#sec-toprimitive
module.exports = function (input, pref) {
  if (!isObject(input) || isSymbol(input)) return input;
  var exoticToPrim = getMethod(input, TO_PRIMITIVE);
  var result;
  if (exoticToPrim) {
    if (pref === undefined) pref = 'default';
    result = call(exoticToPrim, input, pref);
    if (!isObject(result) || isSymbol(result)) return result;
    throw new $TypeError("Can't convert object to primitive value");
  }
  if (pref === undefined) pref = 'number';
  return ordinaryToPrimitive(input, pref);
};


/***/ }),

/***/ 91525:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var toPrimitive = __webpack_require__(50681);
var isSymbol = __webpack_require__(40205);

// `ToPropertyKey` abstract operation
// https://tc39.es/ecma262/#sec-topropertykey
module.exports = function (argument) {
  var key = toPrimitive(argument, 'string');
  return isSymbol(key) ? key : key + '';
};


/***/ }),

/***/ 23220:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var wellKnownSymbol = __webpack_require__(52442);

var TO_STRING_TAG = wellKnownSymbol('toStringTag');
var test = {};

test[TO_STRING_TAG] = 'z';

module.exports = String(test) === '[object z]';


/***/ }),

/***/ 71182:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var classof = __webpack_require__(56397);

var $String = String;

module.exports = function (argument) {
  if (classof(argument) === 'Symbol') throw new TypeError('Cannot convert a Symbol value to a string');
  return $String(argument);
};


/***/ }),

/***/ 1028:
/***/ (function(module) {

"use strict";

var $String = String;

module.exports = function (argument) {
  try {
    return $String(argument);
  } catch (error) {
    return 'Object';
  }
};


/***/ }),

/***/ 23440:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var uncurryThis = __webpack_require__(72537);

var id = 0;
var postfix = Math.random();
var toString = uncurryThis(1.0.toString);

module.exports = function (key) {
  return 'Symbol(' + (key === undefined ? '' : key) + ')_' + toString(++id + postfix, 36);
};


/***/ }),

/***/ 80016:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

/* eslint-disable es/no-symbol -- required for testing */
var NATIVE_SYMBOL = __webpack_require__(34086);

module.exports = NATIVE_SYMBOL
  && !Symbol.sham
  && typeof Symbol.iterator == 'symbol';


/***/ }),

/***/ 77956:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var DESCRIPTORS = __webpack_require__(43794);
var fails = __webpack_require__(49353);

// V8 ~ Chrome 36-
// https://bugs.chromium.org/p/v8/issues/detail?id=3334
module.exports = DESCRIPTORS && fails(function () {
  // eslint-disable-next-line es/no-object-defineproperty -- required for testing
  return Object.defineProperty(function () { /* empty */ }, 'prototype', {
    value: 42,
    writable: false
  }).prototype !== 42;
});


/***/ }),

/***/ 12891:
/***/ (function(module) {

"use strict";

var $TypeError = TypeError;

module.exports = function (passed, required) {
  if (passed < required) throw new $TypeError('Not enough arguments');
  return passed;
};


/***/ }),

/***/ 79033:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var global = __webpack_require__(5685);
var isCallable = __webpack_require__(9934);

var WeakMap = global.WeakMap;

module.exports = isCallable(WeakMap) && /native code/.test(String(WeakMap));


/***/ }),

/***/ 72134:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var path = __webpack_require__(29068);
var hasOwn = __webpack_require__(99027);
var wrappedWellKnownSymbolModule = __webpack_require__(18248);
var defineProperty = (__webpack_require__(81890).f);

module.exports = function (NAME) {
  var Symbol = path.Symbol || (path.Symbol = {});
  if (!hasOwn(Symbol, NAME)) defineProperty(Symbol, NAME, {
    value: wrappedWellKnownSymbolModule.f(NAME)
  });
};


/***/ }),

/***/ 18248:
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {

"use strict";

var wellKnownSymbol = __webpack_require__(52442);

exports.f = wellKnownSymbol;


/***/ }),

/***/ 52442:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var global = __webpack_require__(5685);
var shared = __webpack_require__(73921);
var hasOwn = __webpack_require__(99027);
var uid = __webpack_require__(23440);
var NATIVE_SYMBOL = __webpack_require__(34086);
var USE_SYMBOL_AS_UID = __webpack_require__(80016);

var Symbol = global.Symbol;
var WellKnownSymbolsStore = shared('wks');
var createWellKnownSymbol = USE_SYMBOL_AS_UID ? Symbol['for'] || Symbol : Symbol && Symbol.withoutSetter || uid;

module.exports = function (name) {
  if (!hasOwn(WellKnownSymbolsStore, name)) {
    WellKnownSymbolsStore[name] = NATIVE_SYMBOL && hasOwn(Symbol, name)
      ? Symbol[name]
      : createWellKnownSymbol('Symbol.' + name);
  } return WellKnownSymbolsStore[name];
};


/***/ }),

/***/ 93533:
/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var $ = __webpack_require__(74715);
var isPrototypeOf = __webpack_require__(61727);
var getPrototypeOf = __webpack_require__(63863);
var setPrototypeOf = __webpack_require__(31350);
var copyConstructorProperties = __webpack_require__(95895);
var create = __webpack_require__(33010);
var createNonEnumerableProperty = __webpack_require__(7151);
var createPropertyDescriptor = __webpack_require__(51567);
var installErrorCause = __webpack_require__(72071);
var installErrorStack = __webpack_require__(91794);
var iterate = __webpack_require__(89614);
var normalizeStringArgument = __webpack_require__(60081);
var wellKnownSymbol = __webpack_require__(52442);

var TO_STRING_TAG = wellKnownSymbol('toStringTag');
var $Error = Error;
var push = [].push;

var $AggregateError = function AggregateError(errors, message /* , options */) {
  var isInstance = isPrototypeOf(AggregateErrorPrototype, this);
  var that;
  if (setPrototypeOf) {
    that = setPrototypeOf(new $Error(), isInstance ? getPrototypeOf(this) : AggregateErrorPrototype);
  } else {
    that = isInstance ? this : create(AggregateErrorPrototype);
    createNonEnumerableProperty(that, TO_STRING_TAG, 'Error');
  }
  if (message !== undefined) createNonEnumerableProperty(that, 'message', normalizeStringArgument(message));
  installErrorStack(that, $AggregateError, that.stack, 1);
  if (arguments.length > 2) installErrorCause(that, arguments[2]);
  var errorsArray = [];
  iterate(errors, push, { that: errorsArray });
  createNonEnumerableProperty(that, 'errors', errorsArray);
  return that;
};

if (setPrototypeOf) setPrototypeOf($AggregateError, $Error);
else copyConstructorProperties($AggregateError, $Error, { name: true });

var AggregateErrorPrototype = $AggregateError.prototype = create($Error.prototype, {
  constructor: createPropertyDescriptor(1, $AggregateError),
  message: createPropertyDescriptor(1, ''),
  name: createPropertyDescriptor(1, 'AggregateError')
});

// `AggregateError` constructor
// https://tc39.es/ecma262/#sec-aggregate-error-constructor
$({ global: true, constructor: true, arity: 2 }, {
  AggregateError: $AggregateError
});


/***/ }),

/***/ 96864:
/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) {

"use strict";

// TODO: Remove this module from `core-js@4` since it's replaced to module below
__webpack_require__(93533);


/***/ }),

/***/ 51845:
/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var $ = __webpack_require__(74715);
var fails = __webpack_require__(49353);
var isArray = __webpack_require__(13527);
var isObject = __webpack_require__(39611);
var toObject = __webpack_require__(42962);
var lengthOfArrayLike = __webpack_require__(37165);
var doesNotExceedSafeInteger = __webpack_require__(9939);
var createProperty = __webpack_require__(981);
var arraySpeciesCreate = __webpack_require__(7265);
var arrayMethodHasSpeciesSupport = __webpack_require__(18388);
var wellKnownSymbol = __webpack_require__(52442);
var V8_VERSION = __webpack_require__(15131);

var IS_CONCAT_SPREADABLE = wellKnownSymbol('isConcatSpreadable');

// We can't use this feature detection in V8 since it causes
// deoptimization and serious performance degradation
// https://github.com/zloirock/core-js/issues/679
var IS_CONCAT_SPREADABLE_SUPPORT = V8_VERSION >= 51 || !fails(function () {
  var array = [];
  array[IS_CONCAT_SPREADABLE] = false;
  return array.concat()[0] !== array;
});

var isConcatSpreadable = function (O) {
  if (!isObject(O)) return false;
  var spreadable = O[IS_CONCAT_SPREADABLE];
  return spreadable !== undefined ? !!spreadable : isArray(O);
};

var FORCED = !IS_CONCAT_SPREADABLE_SUPPORT || !arrayMethodHasSpeciesSupport('concat');

// `Array.prototype.concat` method
// https://tc39.es/ecma262/#sec-array.prototype.concat
// with adding support of @@isConcatSpreadable and @@species
$({ target: 'Array', proto: true, arity: 1, forced: FORCED }, {
  // eslint-disable-next-line no-unused-vars -- required for `.length`
  concat: function concat(arg) {
    var O = toObject(this);
    var A = arraySpeciesCreate(O, 0);
    var n = 0;
    var i, k, length, len, E;
    for (i = -1, length = arguments.length; i < length; i++) {
      E = i === -1 ? O : arguments[i];
      if (isConcatSpreadable(E)) {
        len = lengthOfArrayLike(E);
        doesNotExceedSafeInteger(n + len);
        for (k = 0; k < len; k++, n++) if (k in E) createProperty(A, n, E[k]);
      } else {
        doesNotExceedSafeInteger(n + 1);
        createProperty(A, n++, E);
      }
    }
    A.length = n;
    return A;
  }
});


/***/ }),

/***/ 62212:
/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var $ = __webpack_require__(74715);
var forEach = __webpack_require__(96456);

// `Array.prototype.forEach` method
// https://tc39.es/ecma262/#sec-array.prototype.foreach
// eslint-disable-next-line es/no-array-prototype-foreach -- safe
$({ target: 'Array', proto: true, forced: [].forEach !== forEach }, {
  forEach: forEach
});


/***/ }),

/***/ 71997:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var toIndexedObject = __webpack_require__(73747);
var addToUnscopables = __webpack_require__(66888);
var Iterators = __webpack_require__(99234);
var InternalStateModule = __webpack_require__(34084);
var defineProperty = (__webpack_require__(81890).f);
var defineIterator = __webpack_require__(6483);
var createIterResultObject = __webpack_require__(27474);
var IS_PURE = __webpack_require__(14081);
var DESCRIPTORS = __webpack_require__(43794);

var ARRAY_ITERATOR = 'Array Iterator';
var setInternalState = InternalStateModule.set;
var getInternalState = InternalStateModule.getterFor(ARRAY_ITERATOR);

// `Array.prototype.entries` method
// https://tc39.es/ecma262/#sec-array.prototype.entries
// `Array.prototype.keys` method
// https://tc39.es/ecma262/#sec-array.prototype.keys
// `Array.prototype.values` method
// https://tc39.es/ecma262/#sec-array.prototype.values
// `Array.prototype[@@iterator]` method
// https://tc39.es/ecma262/#sec-array.prototype-@@iterator
// `CreateArrayIterator` internal method
// https://tc39.es/ecma262/#sec-createarrayiterator
module.exports = defineIterator(Array, 'Array', function (iterated, kind) {
  setInternalState(this, {
    type: ARRAY_ITERATOR,
    target: toIndexedObject(iterated), // target
    index: 0,                          // next index
    kind: kind                         // kind
  });
// `%ArrayIteratorPrototype%.next` method
// https://tc39.es/ecma262/#sec-%arrayiteratorprototype%.next
}, function () {
  var state = getInternalState(this);
  var target = state.target;
  var index = state.index++;
  if (!target || index >= target.length) {
    state.target = undefined;
    return createIterResultObject(undefined, true);
  }
  switch (state.kind) {
    case 'keys': return createIterResultObject(index, false);
    case 'values': return createIterResultObject(target[index], false);
  } return createIterResultObject([index, target[index]], false);
}, 'values');

// argumentsList[@@iterator] is %ArrayProto_values%
// https://tc39.es/ecma262/#sec-createunmappedargumentsobject
// https://tc39.es/ecma262/#sec-createmappedargumentsobject
var values = Iterators.Arguments = Iterators.Array;

// https://tc39.es/ecma262/#sec-array.prototype-@@unscopables
addToUnscopables('keys');
addToUnscopables('values');
addToUnscopables('entries');

// V8 ~ Chrome 45- bug
if (!IS_PURE && DESCRIPTORS && values.name !== 'values') try {
  defineProperty(values, 'name', { value: 'values' });
} catch (error) { /* empty */ }


/***/ }),

/***/ 53549:
/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var $ = __webpack_require__(74715);
var toObject = __webpack_require__(42962);
var lengthOfArrayLike = __webpack_require__(37165);
var setArrayLength = __webpack_require__(21145);
var doesNotExceedSafeInteger = __webpack_require__(9939);
var fails = __webpack_require__(49353);

var INCORRECT_TO_LENGTH = fails(function () {
  return [].push.call({ length: 0x100000000 }, 1) !== 4294967297;
});

// V8 and Safari <= 15.4, FF < 23 throws InternalError
// https://bugs.chromium.org/p/v8/issues/detail?id=12681
var properErrorOnNonWritableLength = function () {
  try {
    // eslint-disable-next-line es/no-object-defineproperty -- safe
    Object.defineProperty([], 'length', { writable: false }).push();
  } catch (error) {
    return error instanceof TypeError;
  }
};

var FORCED = INCORRECT_TO_LENGTH || !properErrorOnNonWritableLength();

// `Array.prototype.push` method
// https://tc39.es/ecma262/#sec-array.prototype.push
$({ target: 'Array', proto: true, arity: 1, forced: FORCED }, {
  // eslint-disable-next-line no-unused-vars -- required for `.length`
  push: function push(item) {
    var O = toObject(this);
    var len = lengthOfArrayLike(O);
    var argCount = arguments.length;
    doesNotExceedSafeInteger(len + argCount);
    for (var i = 0; i < argCount; i++) {
      O[len] = arguments[i];
      len++;
    }
    setArrayLength(O, len);
    return len;
  }
});


/***/ }),

/***/ 7901:
/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var $ = __webpack_require__(74715);
var uncurryThis = __webpack_require__(72537);
var isArray = __webpack_require__(13527);

var nativeReverse = uncurryThis([].reverse);
var test = [1, 2];

// `Array.prototype.reverse` method
// https://tc39.es/ecma262/#sec-array.prototype.reverse
// fix for Safari 12.0 bug
// https://bugs.webkit.org/show_bug.cgi?id=188794
$({ target: 'Array', proto: true, forced: String(test) === String(test.reverse()) }, {
  reverse: function reverse() {
    // eslint-disable-next-line no-self-assign -- dirty hack
    if (isArray(this)) this.length = this.length;
    return nativeReverse(this);
  }
});


/***/ }),

/***/ 43837:
/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var $ = __webpack_require__(74715);
var isArray = __webpack_require__(13527);
var isConstructor = __webpack_require__(57936);
var isObject = __webpack_require__(39611);
var toAbsoluteIndex = __webpack_require__(58100);
var lengthOfArrayLike = __webpack_require__(37165);
var toIndexedObject = __webpack_require__(73747);
var createProperty = __webpack_require__(981);
var wellKnownSymbol = __webpack_require__(52442);
var arrayMethodHasSpeciesSupport = __webpack_require__(18388);
var nativeSlice = __webpack_require__(52076);

var HAS_SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('slice');

var SPECIES = wellKnownSymbol('species');
var $Array = Array;
var max = Math.max;

// `Array.prototype.slice` method
// https://tc39.es/ecma262/#sec-array.prototype.slice
// fallback for not array-like ES3 strings and DOM objects
$({ target: 'Array', proto: true, forced: !HAS_SPECIES_SUPPORT }, {
  slice: function slice(start, end) {
    var O = toIndexedObject(this);
    var length = lengthOfArrayLike(O);
    var k = toAbsoluteIndex(start, length);
    var fin = toAbsoluteIndex(end === undefined ? length : end, length);
    // inline `ArraySpeciesCreate` for usage native `Array#slice` where it's possible
    var Constructor, result, n;
    if (isArray(O)) {
      Constructor = O.constructor;
      // cross-realm fallback
      if (isConstructor(Constructor) && (Constructor === $Array || isArray(Constructor.prototype))) {
        Constructor = undefined;
      } else if (isObject(Constructor)) {
        Constructor = Constructor[SPECIES];
        if (Constructor === null) Constructor = undefined;
      }
      if (Constructor === $Array || Constructor === undefined) {
        return nativeSlice(O, k, fin);
      }
    }
    result = new (Constructor === undefined ? $Array : Constructor)(max(fin - k, 0));
    for (n = 0; k < fin; k++, n++) if (k in O) createProperty(result, n, O[k]);
    result.length = n;
    return result;
  }
});


/***/ }),

/***/ 18242:
/***/ (function() {

// empty


/***/ }),

/***/ 88791:
/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var $ = __webpack_require__(74715);
var getBuiltIn = __webpack_require__(87192);
var apply = __webpack_require__(10145);
var call = __webpack_require__(83417);
var uncurryThis = __webpack_require__(72537);
var fails = __webpack_require__(49353);
var isCallable = __webpack_require__(9934);
var isSymbol = __webpack_require__(40205);
var arraySlice = __webpack_require__(52076);
var getReplacerFunction = __webpack_require__(99647);
var NATIVE_SYMBOL = __webpack_require__(34086);

var $String = String;
var $stringify = getBuiltIn('JSON', 'stringify');
var exec = uncurryThis(/./.exec);
var charAt = uncurryThis(''.charAt);
var charCodeAt = uncurryThis(''.charCodeAt);
var replace = uncurryThis(''.replace);
var numberToString = uncurryThis(1.0.toString);

var tester = /[\uD800-\uDFFF]/g;
var low = /^[\uD800-\uDBFF]$/;
var hi = /^[\uDC00-\uDFFF]$/;

var WRONG_SYMBOLS_CONVERSION = !NATIVE_SYMBOL || fails(function () {
  var symbol = getBuiltIn('Symbol')('stringify detection');
  // MS Edge converts symbol values to JSON as {}
  return $stringify([symbol]) !== '[null]'
    // WebKit converts symbol values to JSON as null
    || $stringify({ a: symbol }) !== '{}'
    // V8 throws on boxed symbols
    || $stringify(Object(symbol)) !== '{}';
});

// https://github.com/tc39/proposal-well-formed-stringify
var ILL_FORMED_UNICODE = fails(function () {
  return $stringify('\uDF06\uD834') !== '"\\udf06\\ud834"'
    || $stringify('\uDEAD') !== '"\\udead"';
});

var stringifyWithSymbolsFix = function (it, replacer) {
  var args = arraySlice(arguments);
  var $replacer = getReplacerFunction(replacer);
  if (!isCallable($replacer) && (it === undefined || isSymbol(it))) return; // IE8 returns string on undefined
  args[1] = function (key, value) {
    // some old implementations (like WebKit) could pass numbers as keys
    if (isCallable($replacer)) value = call($replacer, this, $String(key), value);
    if (!isSymbol(value)) return value;
  };
  return apply($stringify, null, args);
};

var fixIllFormed = function (match, offset, string) {
  var prev = charAt(string, offset - 1);
  var next = charAt(string, offset + 1);
  if ((exec(low, match) && !exec(hi, next)) || (exec(hi, match) && !exec(low, prev))) {
    return '\\u' + numberToString(charCodeAt(match, 0), 16);
  } return match;
};

if ($stringify) {
  // `JSON.stringify` method
  // https://tc39.es/ecma262/#sec-json.stringify
  $({ target: 'JSON', stat: true, arity: 3, forced: WRONG_SYMBOLS_CONVERSION || ILL_FORMED_UNICODE }, {
    // eslint-disable-next-line no-unused-vars -- required for `.length`
    stringify: function stringify(it, replacer, space) {
      var args = arraySlice(arguments);
      var result = apply(WRONG_SYMBOLS_CONVERSION ? stringifyWithSymbolsFix : $stringify, null, args);
      return ILL_FORMED_UNICODE && typeof result == 'string' ? replace(result, tester, fixIllFormed) : result;
    }
  });
}


/***/ }),

/***/ 78518:
/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var global = __webpack_require__(5685);
var setToStringTag = __webpack_require__(84196);

// JSON[@@toStringTag] property
// https://tc39.es/ecma262/#sec-json-@@tostringtag
setToStringTag(global.JSON, 'JSON', true);


/***/ }),

/***/ 39786:
/***/ (function() {

// empty


/***/ }),

/***/ 43225:
/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) {

"use strict";

// TODO: Remove from `core-js@4`
var $ = __webpack_require__(74715);
var DESCRIPTORS = __webpack_require__(43794);
var create = __webpack_require__(33010);

// `Object.create` method
// https://tc39.es/ecma262/#sec-object.create
$({ target: 'Object', stat: true, sham: !DESCRIPTORS }, {
  create: create
});


/***/ }),

/***/ 19727:
/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var $ = __webpack_require__(74715);
var DESCRIPTORS = __webpack_require__(43794);
var defineProperty = (__webpack_require__(81890).f);

// `Object.defineProperty` method
// https://tc39.es/ecma262/#sec-object.defineproperty
// eslint-disable-next-line es/no-object-defineproperty -- safe
$({ target: 'Object', stat: true, forced: Object.defineProperty !== defineProperty, sham: !DESCRIPTORS }, {
  defineProperty: defineProperty
});


/***/ }),

/***/ 20465:
/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var $ = __webpack_require__(74715);
var NATIVE_SYMBOL = __webpack_require__(34086);
var fails = __webpack_require__(49353);
var getOwnPropertySymbolsModule = __webpack_require__(56953);
var toObject = __webpack_require__(42962);

// V8 ~ Chrome 38 and 39 `Object.getOwnPropertySymbols` fails on primitives
// https://bugs.chromium.org/p/v8/issues/detail?id=3443
var FORCED = !NATIVE_SYMBOL || fails(function () { getOwnPropertySymbolsModule.f(1); });

// `Object.getOwnPropertySymbols` method
// https://tc39.es/ecma262/#sec-object.getownpropertysymbols
$({ target: 'Object', stat: true, forced: FORCED }, {
  getOwnPropertySymbols: function getOwnPropertySymbols(it) {
    var $getOwnPropertySymbols = getOwnPropertySymbolsModule.f;
    return $getOwnPropertySymbols ? $getOwnPropertySymbols(toObject(it)) : [];
  }
});


/***/ }),

/***/ 17992:
/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var $ = __webpack_require__(74715);
var fails = __webpack_require__(49353);
var toObject = __webpack_require__(42962);
var nativeGetPrototypeOf = __webpack_require__(63863);
var CORRECT_PROTOTYPE_GETTER = __webpack_require__(24853);

var FAILS_ON_PRIMITIVES = fails(function () { nativeGetPrototypeOf(1); });

// `Object.getPrototypeOf` method
// https://tc39.es/ecma262/#sec-object.getprototypeof
$({ target: 'Object', stat: true, forced: FAILS_ON_PRIMITIVES, sham: !CORRECT_PROTOTYPE_GETTER }, {
  getPrototypeOf: function getPrototypeOf(it) {
    return nativeGetPrototypeOf(toObject(it));
  }
});



/***/ }),

/***/ 33951:
/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var $ = __webpack_require__(74715);
var setPrototypeOf = __webpack_require__(31350);

// `Object.setPrototypeOf` method
// https://tc39.es/ecma262/#sec-object.setprototypeof
$({ target: 'Object', stat: true }, {
  setPrototypeOf: setPrototypeOf
});


/***/ }),

/***/ 86069:
/***/ (function() {

// empty


/***/ }),

/***/ 18795:
/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var $ = __webpack_require__(74715);
var call = __webpack_require__(83417);
var aCallable = __webpack_require__(45935);
var newPromiseCapabilityModule = __webpack_require__(62157);
var perform = __webpack_require__(93183);
var iterate = __webpack_require__(89614);
var PROMISE_STATICS_INCORRECT_ITERATION = __webpack_require__(77290);

// `Promise.allSettled` method
// https://tc39.es/ecma262/#sec-promise.allsettled
$({ target: 'Promise', stat: true, forced: PROMISE_STATICS_INCORRECT_ITERATION }, {
  allSettled: function allSettled(iterable) {
    var C = this;
    var capability = newPromiseCapabilityModule.f(C);
    var resolve = capability.resolve;
    var reject = capability.reject;
    var result = perform(function () {
      var promiseResolve = aCallable(C.resolve);
      var values = [];
      var counter = 0;
      var remaining = 1;
      iterate(iterable, function (promise) {
        var index = counter++;
        var alreadyCalled = false;
        remaining++;
        call(promiseResolve, C, promise).then(function (value) {
          if (alreadyCalled) return;
          alreadyCalled = true;
          values[index] = { status: 'fulfilled', value: value };
          --remaining || resolve(values);
        }, function (error) {
          if (alreadyCalled) return;
          alreadyCalled = true;
          values[index] = { status: 'rejected', reason: error };
          --remaining || resolve(values);
        });
      });
      --remaining || resolve(values);
    });
    if (result.error) reject(result.value);
    return capability.promise;
  }
});


/***/ }),

/***/ 45840:
/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var $ = __webpack_require__(74715);
var call = __webpack_require__(83417);
var aCallable = __webpack_require__(45935);
var newPromiseCapabilityModule = __webpack_require__(62157);
var perform = __webpack_require__(93183);
var iterate = __webpack_require__(89614);
var PROMISE_STATICS_INCORRECT_ITERATION = __webpack_require__(77290);

// `Promise.all` method
// https://tc39.es/ecma262/#sec-promise.all
$({ target: 'Promise', stat: true, forced: PROMISE_STATICS_INCORRECT_ITERATION }, {
  all: function all(iterable) {
    var C = this;
    var capability = newPromiseCapabilityModule.f(C);
    var resolve = capability.resolve;
    var reject = capability.reject;
    var result = perform(function () {
      var $promiseResolve = aCallable(C.resolve);
      var values = [];
      var counter = 0;
      var remaining = 1;
      iterate(iterable, function (promise) {
        var index = counter++;
        var alreadyCalled = false;
        remaining++;
        call($promiseResolve, C, promise).then(function (value) {
          if (alreadyCalled) return;
          alreadyCalled = true;
          values[index] = value;
          --remaining || resolve(values);
        }, reject);
      });
      --remaining || resolve(values);
    });
    if (result.error) reject(result.value);
    return capability.promise;
  }
});


/***/ }),

/***/ 13233:
/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var $ = __webpack_require__(74715);
var call = __webpack_require__(83417);
var aCallable = __webpack_require__(45935);
var getBuiltIn = __webpack_require__(87192);
var newPromiseCapabilityModule = __webpack_require__(62157);
var perform = __webpack_require__(93183);
var iterate = __webpack_require__(89614);
var PROMISE_STATICS_INCORRECT_ITERATION = __webpack_require__(77290);

var PROMISE_ANY_ERROR = 'No one promise resolved';

// `Promise.any` method
// https://tc39.es/ecma262/#sec-promise.any
$({ target: 'Promise', stat: true, forced: PROMISE_STATICS_INCORRECT_ITERATION }, {
  any: function any(iterable) {
    var C = this;
    var AggregateError = getBuiltIn('AggregateError');
    var capability = newPromiseCapabilityModule.f(C);
    var resolve = capability.resolve;
    var reject = capability.reject;
    var result = perform(function () {
      var promiseResolve = aCallable(C.resolve);
      var errors = [];
      var counter = 0;
      var remaining = 1;
      var alreadyResolved = false;
      iterate(iterable, function (promise) {
        var index = counter++;
        var alreadyRejected = false;
        remaining++;
        call(promiseResolve, C, promise).then(function (value) {
          if (alreadyRejected || alreadyResolved) return;
          alreadyResolved = true;
          resolve(value);
        }, function (error) {
          if (alreadyRejected || alreadyResolved) return;
          alreadyRejected = true;
          errors[index] = error;
          --remaining || reject(new AggregateError(errors, PROMISE_ANY_ERROR));
        });
      });
      --remaining || reject(new AggregateError(errors, PROMISE_ANY_ERROR));
    });
    if (result.error) reject(result.value);
    return capability.promise;
  }
});


/***/ }),

/***/ 84168:
/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var $ = __webpack_require__(74715);
var IS_PURE = __webpack_require__(14081);
var FORCED_PROMISE_CONSTRUCTOR = (__webpack_require__(24865).CONSTRUCTOR);
var NativePromiseConstructor = __webpack_require__(93159);
var getBuiltIn = __webpack_require__(87192);
var isCallable = __webpack_require__(9934);
var defineBuiltIn = __webpack_require__(31733);

var NativePromisePrototype = NativePromiseConstructor && NativePromiseConstructor.prototype;

// `Promise.prototype.catch` method
// https://tc39.es/ecma262/#sec-promise.prototype.catch
$({ target: 'Promise', proto: true, forced: FORCED_PROMISE_CONSTRUCTOR, real: true }, {
  'catch': function (onRejected) {
    return this.then(undefined, onRejected);
  }
});

// makes sure that native promise-based APIs `Promise#catch` properly works with patched `Promise#then`
if (!IS_PURE && isCallable(NativePromiseConstructor)) {
  var method = getBuiltIn('Promise').prototype['catch'];
  if (NativePromisePrototype['catch'] !== method) {
    defineBuiltIn(NativePromisePrototype, 'catch', method, { unsafe: true });
  }
}


/***/ }),

/***/ 46888:
/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var $ = __webpack_require__(74715);
var IS_PURE = __webpack_require__(14081);
var IS_NODE = __webpack_require__(44408);
var global = __webpack_require__(5685);
var call = __webpack_require__(83417);
var defineBuiltIn = __webpack_require__(31733);
var setPrototypeOf = __webpack_require__(31350);
var setToStringTag = __webpack_require__(84196);
var setSpecies = __webpack_require__(4799);
var aCallable = __webpack_require__(45935);
var isCallable = __webpack_require__(9934);
var isObject = __webpack_require__(39611);
var anInstance = __webpack_require__(40927);
var speciesConstructor = __webpack_require__(49022);
var task = (__webpack_require__(66727).set);
var microtask = __webpack_require__(45996);
var hostReportErrors = __webpack_require__(92210);
var perform = __webpack_require__(93183);
var Queue = __webpack_require__(55721);
var InternalStateModule = __webpack_require__(34084);
var NativePromiseConstructor = __webpack_require__(93159);
var PromiseConstructorDetection = __webpack_require__(24865);
var newPromiseCapabilityModule = __webpack_require__(62157);

var PROMISE = 'Promise';
var FORCED_PROMISE_CONSTRUCTOR = PromiseConstructorDetection.CONSTRUCTOR;
var NATIVE_PROMISE_REJECTION_EVENT = PromiseConstructorDetection.REJECTION_EVENT;
var NATIVE_PROMISE_SUBCLASSING = PromiseConstructorDetection.SUBCLASSING;
var getInternalPromiseState = InternalStateModule.getterFor(PROMISE);
var setInternalState = InternalStateModule.set;
var NativePromisePrototype = NativePromiseConstructor && NativePromiseConstructor.prototype;
var PromiseConstructor = NativePromiseConstructor;
var PromisePrototype = NativePromisePrototype;
var TypeError = global.TypeError;
var document = global.document;
var process = global.process;
var newPromiseCapability = newPromiseCapabilityModule.f;
var newGenericPromiseCapability = newPromiseCapability;

var DISPATCH_EVENT = !!(document && document.createEvent && global.dispatchEvent);
var UNHANDLED_REJECTION = 'unhandledrejection';
var REJECTION_HANDLED = 'rejectionhandled';
var PENDING = 0;
var FULFILLED = 1;
var REJECTED = 2;
var HANDLED = 1;
var UNHANDLED = 2;

var Internal, OwnPromiseCapability, PromiseWrapper, nativeThen;

// helpers
var isThenable = function (it) {
  var then;
  return isObject(it) && isCallable(then = it.then) ? then : false;
};

var callReaction = function (reaction, state) {
  var value = state.value;
  var ok = state.state === FULFILLED;
  var handler = ok ? reaction.ok : reaction.fail;
  var resolve = reaction.resolve;
  var reject = reaction.reject;
  var domain = reaction.domain;
  var result, then, exited;
  try {
    if (handler) {
      if (!ok) {
        if (state.rejection === UNHANDLED) onHandleUnhandled(state);
        state.rejection = HANDLED;
      }
      if (handler === true) result = value;
      else {
        if (domain) domain.enter();
        result = handler(value); // can throw
        if (domain) {
          domain.exit();
          exited = true;
        }
      }
      if (result === reaction.promise) {
        reject(new TypeError('Promise-chain cycle'));
      } else if (then = isThenable(result)) {
        call(then, result, resolve, reject);
      } else resolve(result);
    } else reject(value);
  } catch (error) {
    if (domain && !exited) domain.exit();
    reject(error);
  }
};

var notify = function (state, isReject) {
  if (state.notified) return;
  state.notified = true;
  microtask(function () {
    var reactions = state.reactions;
    var reaction;
    while (reaction = reactions.get()) {
      callReaction(reaction, state);
    }
    state.notified = false;
    if (isReject && !state.rejection) onUnhandled(state);
  });
};

var dispatchEvent = function (name, promise, reason) {
  var event, handler;
  if (DISPATCH_EVENT) {
    event = document.createEvent('Event');
    event.promise = promise;
    event.reason = reason;
    event.initEvent(name, false, true);
    global.dispatchEvent(event);
  } else event = { promise: promise, reason: reason };
  if (!NATIVE_PROMISE_REJECTION_EVENT && (handler = global['on' + name])) handler(event);
  else if (name === UNHANDLED_REJECTION) hostReportErrors('Unhandled promise rejection', reason);
};

var onUnhandled = function (state) {
  call(task, global, function () {
    var promise = state.facade;
    var value = state.value;
    var IS_UNHANDLED = isUnhandled(state);
    var result;
    if (IS_UNHANDLED) {
      result = perform(function () {
        if (IS_NODE) {
          process.emit('unhandledRejection', value, promise);
        } else dispatchEvent(UNHANDLED_REJECTION, promise, value);
      });
      // Browsers should not trigger `rejectionHandled` event if it was handled here, NodeJS - should
      state.rejection = IS_NODE || isUnhandled(state) ? UNHANDLED : HANDLED;
      if (result.error) throw result.value;
    }
  });
};

var isUnhandled = function (state) {
  return state.rejection !== HANDLED && !state.parent;
};

var onHandleUnhandled = function (state) {
  call(task, global, function () {
    var promise = state.facade;
    if (IS_NODE) {
      process.emit('rejectionHandled', promise);
    } else dispatchEvent(REJECTION_HANDLED, promise, state.value);
  });
};

var bind = function (fn, state, unwrap) {
  return function (value) {
    fn(state, value, unwrap);
  };
};

var internalReject = function (state, value, unwrap) {
  if (state.done) return;
  state.done = true;
  if (unwrap) state = unwrap;
  state.value = value;
  state.state = REJECTED;
  notify(state, true);
};

var internalResolve = function (state, value, unwrap) {
  if (state.done) return;
  state.done = true;
  if (unwrap) state = unwrap;
  try {
    if (state.facade === value) throw new TypeError("Promise can't be resolved itself");
    var then = isThenable(value);
    if (then) {
      microtask(function () {
        var wrapper = { done: false };
        try {
          call(then, value,
            bind(internalResolve, wrapper, state),
            bind(internalReject, wrapper, state)
          );
        } catch (error) {
          internalReject(wrapper, error, state);
        }
      });
    } else {
      state.value = value;
      state.state = FULFILLED;
      notify(state, false);
    }
  } catch (error) {
    internalReject({ done: false }, error, state);
  }
};

// constructor polyfill
if (FORCED_PROMISE_CONSTRUCTOR) {
  // 25.4.3.1 Promise(executor)
  PromiseConstructor = function Promise(executor) {
    anInstance(this, PromisePrototype);
    aCallable(executor);
    call(Internal, this);
    var state = getInternalPromiseState(this);
    try {
      executor(bind(internalResolve, state), bind(internalReject, state));
    } catch (error) {
      internalReject(state, error);
    }
  };

  PromisePrototype = PromiseConstructor.prototype;

  // eslint-disable-next-line no-unused-vars -- required for `.length`
  Internal = function Promise(executor) {
    setInternalState(this, {
      type: PROMISE,
      done: false,
      notified: false,
      parent: false,
      reactions: new Queue(),
      rejection: false,
      state: PENDING,
      value: undefined
    });
  };

  // `Promise.prototype.then` method
  // https://tc39.es/ecma262/#sec-promise.prototype.then
  Internal.prototype = defineBuiltIn(PromisePrototype, 'then', function then(onFulfilled, onRejected) {
    var state = getInternalPromiseState(this);
    var reaction = newPromiseCapability(speciesConstructor(this, PromiseConstructor));
    state.parent = true;
    reaction.ok = isCallable(onFulfilled) ? onFulfilled : true;
    reaction.fail = isCallable(onRejected) && onRejected;
    reaction.domain = IS_NODE ? process.domain : undefined;
    if (state.state === PENDING) state.reactions.add(reaction);
    else microtask(function () {
      callReaction(reaction, state);
    });
    return reaction.promise;
  });

  OwnPromiseCapability = function () {
    var promise = new Internal();
    var state = getInternalPromiseState(promise);
    this.promise = promise;
    this.resolve = bind(internalResolve, state);
    this.reject = bind(internalReject, state);
  };

  newPromiseCapabilityModule.f = newPromiseCapability = function (C) {
    return C === PromiseConstructor || C === PromiseWrapper
      ? new OwnPromiseCapability(C)
      : newGenericPromiseCapability(C);
  };

  if (!IS_PURE && isCallable(NativePromiseConstructor) && NativePromisePrototype !== Object.prototype) {
    nativeThen = NativePromisePrototype.then;

    if (!NATIVE_PROMISE_SUBCLASSING) {
      // make `Promise#then` return a polyfilled `Promise` for native promise-based APIs
      defineBuiltIn(NativePromisePrototype, 'then', function then(onFulfilled, onRejected) {
        var that = this;
        return new PromiseConstructor(function (resolve, reject) {
          call(nativeThen, that, resolve, reject);
        }).then(onFulfilled, onRejected);
      // https://github.com/zloirock/core-js/issues/640
      }, { unsafe: true });
    }

    // make `.constructor === Promise` work for native promise-based APIs
    try {
      delete NativePromisePrototype.constructor;
    } catch (error) { /* empty */ }

    // make `instanceof Promise` work for native promise-based APIs
    if (setPrototypeOf) {
      setPrototypeOf(NativePromisePrototype, PromisePrototype);
    }
  }
}

$({ global: true, constructor: true, wrap: true, forced: FORCED_PROMISE_CONSTRUCTOR }, {
  Promise: PromiseConstructor
});

setToStringTag(PromiseConstructor, PROMISE, false, true);
setSpecies(PROMISE);


/***/ }),

/***/ 6028:
/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var $ = __webpack_require__(74715);
var IS_PURE = __webpack_require__(14081);
var NativePromiseConstructor = __webpack_require__(93159);
var fails = __webpack_require__(49353);
var getBuiltIn = __webpack_require__(87192);
var isCallable = __webpack_require__(9934);
var speciesConstructor = __webpack_require__(49022);
var promiseResolve = __webpack_require__(85712);
var defineBuiltIn = __webpack_require__(31733);

var NativePromisePrototype = NativePromiseConstructor && NativePromiseConstructor.prototype;

// Safari bug https://bugs.webkit.org/show_bug.cgi?id=200829
var NON_GENERIC = !!NativePromiseConstructor && fails(function () {
  // eslint-disable-next-line unicorn/no-thenable -- required for testing
  NativePromisePrototype['finally'].call({ then: function () { /* empty */ } }, function () { /* empty */ });
});

// `Promise.prototype.finally` method
// https://tc39.es/ecma262/#sec-promise.prototype.finally
$({ target: 'Promise', proto: true, real: true, forced: NON_GENERIC }, {
  'finally': function (onFinally) {
    var C = speciesConstructor(this, getBuiltIn('Promise'));
    var isFunction = isCallable(onFinally);
    return this.then(
      isFunction ? function (x) {
        return promiseResolve(C, onFinally()).then(function () { return x; });
      } : onFinally,
      isFunction ? function (e) {
        return promiseResolve(C, onFinally()).then(function () { throw e; });
      } : onFinally
    );
  }
});

// makes sure that native promise-based APIs `Promise#finally` properly works with patched `Promise#then`
if (!IS_PURE && isCallable(NativePromiseConstructor)) {
  var method = getBuiltIn('Promise').prototype['finally'];
  if (NativePromisePrototype['finally'] !== method) {
    defineBuiltIn(NativePromisePrototype, 'finally', method, { unsafe: true });
  }
}


/***/ }),

/***/ 89927:
/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) {

"use strict";

// TODO: Remove this module from `core-js@4` since it's split to modules listed below
__webpack_require__(46888);
__webpack_require__(45840);
__webpack_require__(84168);
__webpack_require__(51228);
__webpack_require__(91739);
__webpack_require__(39478);


/***/ }),

/***/ 51228:
/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var $ = __webpack_require__(74715);
var call = __webpack_require__(83417);
var aCallable = __webpack_require__(45935);
var newPromiseCapabilityModule = __webpack_require__(62157);
var perform = __webpack_require__(93183);
var iterate = __webpack_require__(89614);
var PROMISE_STATICS_INCORRECT_ITERATION = __webpack_require__(77290);

// `Promise.race` method
// https://tc39.es/ecma262/#sec-promise.race
$({ target: 'Promise', stat: true, forced: PROMISE_STATICS_INCORRECT_ITERATION }, {
  race: function race(iterable) {
    var C = this;
    var capability = newPromiseCapabilityModule.f(C);
    var reject = capability.reject;
    var result = perform(function () {
      var $promiseResolve = aCallable(C.resolve);
      iterate(iterable, function (promise) {
        call($promiseResolve, C, promise).then(capability.resolve, reject);
      });
    });
    if (result.error) reject(result.value);
    return capability.promise;
  }
});


/***/ }),

/***/ 91739:
/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var $ = __webpack_require__(74715);
var call = __webpack_require__(83417);
var newPromiseCapabilityModule = __webpack_require__(62157);
var FORCED_PROMISE_CONSTRUCTOR = (__webpack_require__(24865).CONSTRUCTOR);

// `Promise.reject` method
// https://tc39.es/ecma262/#sec-promise.reject
$({ target: 'Promise', stat: true, forced: FORCED_PROMISE_CONSTRUCTOR }, {
  reject: function reject(r) {
    var capability = newPromiseCapabilityModule.f(this);
    call(capability.reject, undefined, r);
    return capability.promise;
  }
});


/***/ }),

/***/ 39478:
/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var $ = __webpack_require__(74715);
var getBuiltIn = __webpack_require__(87192);
var IS_PURE = __webpack_require__(14081);
var NativePromiseConstructor = __webpack_require__(93159);
var FORCED_PROMISE_CONSTRUCTOR = (__webpack_require__(24865).CONSTRUCTOR);
var promiseResolve = __webpack_require__(85712);

var PromiseConstructorWrapper = getBuiltIn('Promise');
var CHECK_WRAPPER = IS_PURE && !FORCED_PROMISE_CONSTRUCTOR;

// `Promise.resolve` method
// https://tc39.es/ecma262/#sec-promise.resolve
$({ target: 'Promise', stat: true, forced: IS_PURE || FORCED_PROMISE_CONSTRUCTOR }, {
  resolve: function resolve(x) {
    return promiseResolve(CHECK_WRAPPER && this === PromiseConstructorWrapper ? NativePromiseConstructor : this, x);
  }
});


/***/ }),

/***/ 38840:
/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var $ = __webpack_require__(74715);
var newPromiseCapabilityModule = __webpack_require__(62157);

// `Promise.withResolvers` method
// https://github.com/tc39/proposal-promise-with-resolvers
$({ target: 'Promise', stat: true }, {
  withResolvers: function withResolvers() {
    var promiseCapability = newPromiseCapabilityModule.f(this);
    return {
      promise: promiseCapability.promise,
      resolve: promiseCapability.resolve,
      reject: promiseCapability.reject
    };
  }
});


/***/ }),

/***/ 26716:
/***/ (function() {

// empty


/***/ }),

/***/ 61345:
/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var charAt = (__webpack_require__(45202).charAt);
var toString = __webpack_require__(71182);
var InternalStateModule = __webpack_require__(34084);
var defineIterator = __webpack_require__(6483);
var createIterResultObject = __webpack_require__(27474);

var STRING_ITERATOR = 'String Iterator';
var setInternalState = InternalStateModule.set;
var getInternalState = InternalStateModule.getterFor(STRING_ITERATOR);

// `String.prototype[@@iterator]` method
// https://tc39.es/ecma262/#sec-string.prototype-@@iterator
defineIterator(String, 'String', function (iterated) {
  setInternalState(this, {
    type: STRING_ITERATOR,
    string: toString(iterated),
    index: 0
  });
// `%StringIteratorPrototype%.next` method
// https://tc39.es/ecma262/#sec-%stringiteratorprototype%.next
}, function next() {
  var state = getInternalState(this);
  var string = state.string;
  var index = state.index;
  var point;
  if (index >= string.length) return createIterResultObject(undefined, true);
  point = charAt(string, index);
  state.index += point.length;
  return createIterResultObject(point, false);
});


/***/ }),

/***/ 342:
/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var defineWellKnownSymbol = __webpack_require__(72134);

// `Symbol.asyncIterator` well-known symbol
// https://tc39.es/ecma262/#sec-symbol.asynciterator
defineWellKnownSymbol('asyncIterator');


/***/ }),

/***/ 13971:
/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var $ = __webpack_require__(74715);
var global = __webpack_require__(5685);
var call = __webpack_require__(83417);
var uncurryThis = __webpack_require__(72537);
var IS_PURE = __webpack_require__(14081);
var DESCRIPTORS = __webpack_require__(43794);
var NATIVE_SYMBOL = __webpack_require__(34086);
var fails = __webpack_require__(49353);
var hasOwn = __webpack_require__(99027);
var isPrototypeOf = __webpack_require__(61727);
var anObject = __webpack_require__(18879);
var toIndexedObject = __webpack_require__(73747);
var toPropertyKey = __webpack_require__(91525);
var $toString = __webpack_require__(71182);
var createPropertyDescriptor = __webpack_require__(51567);
var nativeObjectCreate = __webpack_require__(33010);
var objectKeys = __webpack_require__(67508);
var getOwnPropertyNamesModule = __webpack_require__(94582);
var getOwnPropertyNamesExternal = __webpack_require__(87195);
var getOwnPropertySymbolsModule = __webpack_require__(56953);
var getOwnPropertyDescriptorModule = __webpack_require__(45396);
var definePropertyModule = __webpack_require__(81890);
var definePropertiesModule = __webpack_require__(47832);
var propertyIsEnumerableModule = __webpack_require__(99106);
var defineBuiltIn = __webpack_require__(31733);
var defineBuiltInAccessor = __webpack_require__(63089);
var shared = __webpack_require__(73921);
var sharedKey = __webpack_require__(43287);
var hiddenKeys = __webpack_require__(39775);
var uid = __webpack_require__(23440);
var wellKnownSymbol = __webpack_require__(52442);
var wrappedWellKnownSymbolModule = __webpack_require__(18248);
var defineWellKnownSymbol = __webpack_require__(72134);
var defineSymbolToPrimitive = __webpack_require__(89681);
var setToStringTag = __webpack_require__(84196);
var InternalStateModule = __webpack_require__(34084);
var $forEach = (__webpack_require__(92503).forEach);

var HIDDEN = sharedKey('hidden');
var SYMBOL = 'Symbol';
var PROTOTYPE = 'prototype';

var setInternalState = InternalStateModule.set;
var getInternalState = InternalStateModule.getterFor(SYMBOL);

var ObjectPrototype = Object[PROTOTYPE];
var $Symbol = global.Symbol;
var SymbolPrototype = $Symbol && $Symbol[PROTOTYPE];
var RangeError = global.RangeError;
var TypeError = global.TypeError;
var QObject = global.QObject;
var nativeGetOwnPropertyDescriptor = getOwnPropertyDescriptorModule.f;
var nativeDefineProperty = definePropertyModule.f;
var nativeGetOwnPropertyNames = getOwnPropertyNamesExternal.f;
var nativePropertyIsEnumerable = propertyIsEnumerableModule.f;
var push = uncurryThis([].push);

var AllSymbols = shared('symbols');
var ObjectPrototypeSymbols = shared('op-symbols');
var WellKnownSymbolsStore = shared('wks');

// Don't use setters in Qt Script, https://github.com/zloirock/core-js/issues/173
var USE_SETTER = !QObject || !QObject[PROTOTYPE] || !QObject[PROTOTYPE].findChild;

// fallback for old Android, https://code.google.com/p/v8/issues/detail?id=687
var fallbackDefineProperty = function (O, P, Attributes) {
  var ObjectPrototypeDescriptor = nativeGetOwnPropertyDescriptor(ObjectPrototype, P);
  if (ObjectPrototypeDescriptor) delete ObjectPrototype[P];
  nativeDefineProperty(O, P, Attributes);
  if (ObjectPrototypeDescriptor && O !== ObjectPrototype) {
    nativeDefineProperty(ObjectPrototype, P, ObjectPrototypeDescriptor);
  }
};

var setSymbolDescriptor = DESCRIPTORS && fails(function () {
  return nativeObjectCreate(nativeDefineProperty({}, 'a', {
    get: function () { return nativeDefineProperty(this, 'a', { value: 7 }).a; }
  })).a !== 7;
}) ? fallbackDefineProperty : nativeDefineProperty;

var wrap = function (tag, description) {
  var symbol = AllSymbols[tag] = nativeObjectCreate(SymbolPrototype);
  setInternalState(symbol, {
    type: SYMBOL,
    tag: tag,
    description: description
  });
  if (!DESCRIPTORS) symbol.description = description;
  return symbol;
};

var $defineProperty = function defineProperty(O, P, Attributes) {
  if (O === ObjectPrototype) $defineProperty(ObjectPrototypeSymbols, P, Attributes);
  anObject(O);
  var key = toPropertyKey(P);
  anObject(Attributes);
  if (hasOwn(AllSymbols, key)) {
    if (!Attributes.enumerable) {
      if (!hasOwn(O, HIDDEN)) nativeDefineProperty(O, HIDDEN, createPropertyDescriptor(1, {}));
      O[HIDDEN][key] = true;
    } else {
      if (hasOwn(O, HIDDEN) && O[HIDDEN][key]) O[HIDDEN][key] = false;
      Attributes = nativeObjectCreate(Attributes, { enumerable: createPropertyDescriptor(0, false) });
    } return setSymbolDescriptor(O, key, Attributes);
  } return nativeDefineProperty(O, key, Attributes);
};

var $defineProperties = function defineProperties(O, Properties) {
  anObject(O);
  var properties = toIndexedObject(Properties);
  var keys = objectKeys(properties).concat($getOwnPropertySymbols(properties));
  $forEach(keys, function (key) {
    if (!DESCRIPTORS || call($propertyIsEnumerable, properties, key)) $defineProperty(O, key, properties[key]);
  });
  return O;
};

var $create = function create(O, Properties) {
  return Properties === undefined ? nativeObjectCreate(O) : $defineProperties(nativeObjectCreate(O), Properties);
};

var $propertyIsEnumerable = function propertyIsEnumerable(V) {
  var P = toPropertyKey(V);
  var enumerable = call(nativePropertyIsEnumerable, this, P);
  if (this === ObjectPrototype && hasOwn(AllSymbols, P) && !hasOwn(ObjectPrototypeSymbols, P)) return false;
  return enumerable || !hasOwn(this, P) || !hasOwn(AllSymbols, P) || hasOwn(this, HIDDEN) && this[HIDDEN][P]
    ? enumerable : true;
};

var $getOwnPropertyDescriptor = function getOwnPropertyDescriptor(O, P) {
  var it = toIndexedObject(O);
  var key = toPropertyKey(P);
  if (it === ObjectPrototype && hasOwn(AllSymbols, key) && !hasOwn(ObjectPrototypeSymbols, key)) return;
  var descriptor = nativeGetOwnPropertyDescriptor(it, key);
  if (descriptor && hasOwn(AllSymbols, key) && !(hasOwn(it, HIDDEN) && it[HIDDEN][key])) {
    descriptor.enumerable = true;
  }
  return descriptor;
};

var $getOwnPropertyNames = function getOwnPropertyNames(O) {
  var names = nativeGetOwnPropertyNames(toIndexedObject(O));
  var result = [];
  $forEach(names, function (key) {
    if (!hasOwn(AllSymbols, key) && !hasOwn(hiddenKeys, key)) push(result, key);
  });
  return result;
};

var $getOwnPropertySymbols = function (O) {
  var IS_OBJECT_PROTOTYPE = O === ObjectPrototype;
  var names = nativeGetOwnPropertyNames(IS_OBJECT_PROTOTYPE ? ObjectPrototypeSymbols : toIndexedObject(O));
  var result = [];
  $forEach(names, function (key) {
    if (hasOwn(AllSymbols, key) && (!IS_OBJECT_PROTOTYPE || hasOwn(ObjectPrototype, key))) {
      push(result, AllSymbols[key]);
    }
  });
  return result;
};

// `Symbol` constructor
// https://tc39.es/ecma262/#sec-symbol-constructor
if (!NATIVE_SYMBOL) {
  $Symbol = function Symbol() {
    if (isPrototypeOf(SymbolPrototype, this)) throw new TypeError('Symbol is not a constructor');
    var description = !arguments.length || arguments[0] === undefined ? undefined : $toString(arguments[0]);
    var tag = uid(description);
    var setter = function (value) {
      var $this = this === undefined ? global : this;
      if ($this === ObjectPrototype) call(setter, ObjectPrototypeSymbols, value);
      if (hasOwn($this, HIDDEN) && hasOwn($this[HIDDEN], tag)) $this[HIDDEN][tag] = false;
      var descriptor = createPropertyDescriptor(1, value);
      try {
        setSymbolDescriptor($this, tag, descriptor);
      } catch (error) {
        if (!(error instanceof RangeError)) throw error;
        fallbackDefineProperty($this, tag, descriptor);
      }
    };
    if (DESCRIPTORS && USE_SETTER) setSymbolDescriptor(ObjectPrototype, tag, { configurable: true, set: setter });
    return wrap(tag, description);
  };

  SymbolPrototype = $Symbol[PROTOTYPE];

  defineBuiltIn(SymbolPrototype, 'toString', function toString() {
    return getInternalState(this).tag;
  });

  defineBuiltIn($Symbol, 'withoutSetter', function (description) {
    return wrap(uid(description), description);
  });

  propertyIsEnumerableModule.f = $propertyIsEnumerable;
  definePropertyModule.f = $defineProperty;
  definePropertiesModule.f = $defineProperties;
  getOwnPropertyDescriptorModule.f = $getOwnPropertyDescriptor;
  getOwnPropertyNamesModule.f = getOwnPropertyNamesExternal.f = $getOwnPropertyNames;
  getOwnPropertySymbolsModule.f = $getOwnPropertySymbols;

  wrappedWellKnownSymbolModule.f = function (name) {
    return wrap(wellKnownSymbol(name), name);
  };

  if (DESCRIPTORS) {
    // https://github.com/tc39/proposal-Symbol-description
    defineBuiltInAccessor(SymbolPrototype, 'description', {
      configurable: true,
      get: function description() {
        return getInternalState(this).description;
      }
    });
    if (!IS_PURE) {
      defineBuiltIn(ObjectPrototype, 'propertyIsEnumerable', $propertyIsEnumerable, { unsafe: true });
    }
  }
}

$({ global: true, constructor: true, wrap: true, forced: !NATIVE_SYMBOL, sham: !NATIVE_SYMBOL }, {
  Symbol: $Symbol
});

$forEach(objectKeys(WellKnownSymbolsStore), function (name) {
  defineWellKnownSymbol(name);
});

$({ target: SYMBOL, stat: true, forced: !NATIVE_SYMBOL }, {
  useSetter: function () { USE_SETTER = true; },
  useSimple: function () { USE_SETTER = false; }
});

$({ target: 'Object', stat: true, forced: !NATIVE_SYMBOL, sham: !DESCRIPTORS }, {
  // `Object.create` method
  // https://tc39.es/ecma262/#sec-object.create
  create: $create,
  // `Object.defineProperty` method
  // https://tc39.es/ecma262/#sec-object.defineproperty
  defineProperty: $defineProperty,
  // `Object.defineProperties` method
  // https://tc39.es/ecma262/#sec-object.defineproperties
  defineProperties: $defineProperties,
  // `Object.getOwnPropertyDescriptor` method
  // https://tc39.es/ecma262/#sec-object.getownpropertydescriptors
  getOwnPropertyDescriptor: $getOwnPropertyDescriptor
});

$({ target: 'Object', stat: true, forced: !NATIVE_SYMBOL }, {
  // `Object.getOwnPropertyNames` method
  // https://tc39.es/ecma262/#sec-object.getownpropertynames
  getOwnPropertyNames: $getOwnPropertyNames
});

// `Symbol.prototype[@@toPrimitive]` method
// https://tc39.es/ecma262/#sec-symbol.prototype-@@toprimitive
defineSymbolToPrimitive();

// `Symbol.prototype[@@toStringTag]` property
// https://tc39.es/ecma262/#sec-symbol.prototype-@@tostringtag
setToStringTag($Symbol, SYMBOL);

hiddenKeys[HIDDEN] = true;


/***/ }),

/***/ 48861:
/***/ (function() {

// empty


/***/ }),

/***/ 15201:
/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var $ = __webpack_require__(74715);
var getBuiltIn = __webpack_require__(87192);
var hasOwn = __webpack_require__(99027);
var toString = __webpack_require__(71182);
var shared = __webpack_require__(73921);
var NATIVE_SYMBOL_REGISTRY = __webpack_require__(45731);

var StringToSymbolRegistry = shared('string-to-symbol-registry');
var SymbolToStringRegistry = shared('symbol-to-string-registry');

// `Symbol.for` method
// https://tc39.es/ecma262/#sec-symbol.for
$({ target: 'Symbol', stat: true, forced: !NATIVE_SYMBOL_REGISTRY }, {
  'for': function (key) {
    var string = toString(key);
    if (hasOwn(StringToSymbolRegistry, string)) return StringToSymbolRegistry[string];
    var symbol = getBuiltIn('Symbol')(string);
    StringToSymbolRegistry[string] = symbol;
    SymbolToStringRegistry[symbol] = string;
    return symbol;
  }
});


/***/ }),

/***/ 83092:
/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var defineWellKnownSymbol = __webpack_require__(72134);

// `Symbol.hasInstance` well-known symbol
// https://tc39.es/ecma262/#sec-symbol.hasinstance
defineWellKnownSymbol('hasInstance');


/***/ }),

/***/ 86538:
/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var defineWellKnownSymbol = __webpack_require__(72134);

// `Symbol.isConcatSpreadable` well-known symbol
// https://tc39.es/ecma262/#sec-symbol.isconcatspreadable
defineWellKnownSymbol('isConcatSpreadable');


/***/ }),

/***/ 50459:
/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var defineWellKnownSymbol = __webpack_require__(72134);

// `Symbol.iterator` well-known symbol
// https://tc39.es/ecma262/#sec-symbol.iterator
defineWellKnownSymbol('iterator');


/***/ }),

/***/ 91967:
/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) {

"use strict";

// TODO: Remove this module from `core-js@4` since it's split to modules listed below
__webpack_require__(13971);
__webpack_require__(15201);
__webpack_require__(93274);
__webpack_require__(88791);
__webpack_require__(20465);


/***/ }),

/***/ 93274:
/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var $ = __webpack_require__(74715);
var hasOwn = __webpack_require__(99027);
var isSymbol = __webpack_require__(40205);
var tryToString = __webpack_require__(1028);
var shared = __webpack_require__(73921);
var NATIVE_SYMBOL_REGISTRY = __webpack_require__(45731);

var SymbolToStringRegistry = shared('symbol-to-string-registry');

// `Symbol.keyFor` method
// https://tc39.es/ecma262/#sec-symbol.keyfor
$({ target: 'Symbol', stat: true, forced: !NATIVE_SYMBOL_REGISTRY }, {
  keyFor: function keyFor(sym) {
    if (!isSymbol(sym)) throw new TypeError(tryToString(sym) + ' is not a symbol');
    if (hasOwn(SymbolToStringRegistry, sym)) return SymbolToStringRegistry[sym];
  }
});


/***/ }),

/***/ 23236:
/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var defineWellKnownSymbol = __webpack_require__(72134);

// `Symbol.matchAll` well-known symbol
// https://tc39.es/ecma262/#sec-symbol.matchall
defineWellKnownSymbol('matchAll');


/***/ }),

/***/ 32303:
/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var defineWellKnownSymbol = __webpack_require__(72134);

// `Symbol.match` well-known symbol
// https://tc39.es/ecma262/#sec-symbol.match
defineWellKnownSymbol('match');


/***/ }),

/***/ 91654:
/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var defineWellKnownSymbol = __webpack_require__(72134);

// `Symbol.replace` well-known symbol
// https://tc39.es/ecma262/#sec-symbol.replace
defineWellKnownSymbol('replace');


/***/ }),

/***/ 34833:
/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var defineWellKnownSymbol = __webpack_require__(72134);

// `Symbol.search` well-known symbol
// https://tc39.es/ecma262/#sec-symbol.search
defineWellKnownSymbol('search');


/***/ }),

/***/ 20316:
/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var defineWellKnownSymbol = __webpack_require__(72134);

// `Symbol.species` well-known symbol
// https://tc39.es/ecma262/#sec-symbol.species
defineWellKnownSymbol('species');


/***/ }),

/***/ 16925:
/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var defineWellKnownSymbol = __webpack_require__(72134);

// `Symbol.split` well-known symbol
// https://tc39.es/ecma262/#sec-symbol.split
defineWellKnownSymbol('split');


/***/ }),

/***/ 83135:
/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var defineWellKnownSymbol = __webpack_require__(72134);
var defineSymbolToPrimitive = __webpack_require__(89681);

// `Symbol.toPrimitive` well-known symbol
// https://tc39.es/ecma262/#sec-symbol.toprimitive
defineWellKnownSymbol('toPrimitive');

// `Symbol.prototype[@@toPrimitive]` method
// https://tc39.es/ecma262/#sec-symbol.prototype-@@toprimitive
defineSymbolToPrimitive();


/***/ }),

/***/ 39390:
/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var getBuiltIn = __webpack_require__(87192);
var defineWellKnownSymbol = __webpack_require__(72134);
var setToStringTag = __webpack_require__(84196);

// `Symbol.toStringTag` well-known symbol
// https://tc39.es/ecma262/#sec-symbol.tostringtag
defineWellKnownSymbol('toStringTag');

// `Symbol.prototype[@@toStringTag]` property
// https://tc39.es/ecma262/#sec-symbol.prototype-@@tostringtag
setToStringTag(getBuiltIn('Symbol'), 'Symbol');


/***/ }),

/***/ 25938:
/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var defineWellKnownSymbol = __webpack_require__(72134);

// `Symbol.unscopables` well-known symbol
// https://tc39.es/ecma262/#sec-symbol.unscopables
defineWellKnownSymbol('unscopables');


/***/ }),

/***/ 79791:
/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) {

"use strict";

// TODO: Remove from `core-js@4`
__webpack_require__(96864);


/***/ }),

/***/ 73705:
/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var wellKnownSymbol = __webpack_require__(52442);
var defineProperty = (__webpack_require__(81890).f);

var METADATA = wellKnownSymbol('metadata');
var FunctionPrototype = Function.prototype;

// Function.prototype[@@metadata]
// https://github.com/tc39/proposal-decorator-metadata
if (FunctionPrototype[METADATA] === undefined) {
  defineProperty(FunctionPrototype, METADATA, {
    value: null
  });
}


/***/ }),

/***/ 3264:
/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) {

"use strict";

// TODO: Remove from `core-js@4`
__webpack_require__(18795);


/***/ }),

/***/ 79091:
/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) {

"use strict";

// TODO: Remove from `core-js@4`
__webpack_require__(13233);


/***/ }),

/***/ 75415:
/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) {

"use strict";

// TODO: Remove from `core-js@4`
var $ = __webpack_require__(74715);
var newPromiseCapabilityModule = __webpack_require__(62157);
var perform = __webpack_require__(93183);

// `Promise.try` method
// https://github.com/tc39/proposal-promise-try
$({ target: 'Promise', stat: true, forced: true }, {
  'try': function (callbackfn) {
    var promiseCapability = newPromiseCapabilityModule.f(this);
    var result = perform(callbackfn);
    (result.error ? promiseCapability.reject : promiseCapability.resolve)(result.value);
    return promiseCapability.promise;
  }
});


/***/ }),

/***/ 52606:
/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) {

"use strict";

// TODO: Remove from `core-js@4`
__webpack_require__(38840);


/***/ }),

/***/ 21935:
/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var defineWellKnownSymbol = __webpack_require__(72134);

// `Symbol.asyncDispose` well-known symbol
// https://github.com/tc39/proposal-async-explicit-resource-management
defineWellKnownSymbol('asyncDispose');


/***/ }),

/***/ 11944:
/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var defineWellKnownSymbol = __webpack_require__(72134);

// `Symbol.dispose` well-known symbol
// https://github.com/tc39/proposal-explicit-resource-management
defineWellKnownSymbol('dispose');


/***/ }),

/***/ 93361:
/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var $ = __webpack_require__(74715);
var isRegisteredSymbol = __webpack_require__(53203);

// `Symbol.isRegisteredSymbol` method
// https://tc39.es/proposal-symbol-predicates/#sec-symbol-isregisteredsymbol
$({ target: 'Symbol', stat: true }, {
  isRegisteredSymbol: isRegisteredSymbol
});


/***/ }),

/***/ 66714:
/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var $ = __webpack_require__(74715);
var isRegisteredSymbol = __webpack_require__(53203);

// `Symbol.isRegistered` method
// obsolete version of https://tc39.es/proposal-symbol-predicates/#sec-symbol-isregisteredsymbol
$({ target: 'Symbol', stat: true, name: 'isRegisteredSymbol' }, {
  isRegistered: isRegisteredSymbol
});


/***/ }),

/***/ 65539:
/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var $ = __webpack_require__(74715);
var isWellKnownSymbol = __webpack_require__(99003);

// `Symbol.isWellKnownSymbol` method
// https://tc39.es/proposal-symbol-predicates/#sec-symbol-iswellknownsymbol
// We should patch it for newly added well-known symbols. If it's not required, this module just will not be injected
$({ target: 'Symbol', stat: true, forced: true }, {
  isWellKnownSymbol: isWellKnownSymbol
});


/***/ }),

/***/ 85704:
/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var $ = __webpack_require__(74715);
var isWellKnownSymbol = __webpack_require__(99003);

// `Symbol.isWellKnown` method
// obsolete version of https://tc39.es/proposal-symbol-predicates/#sec-symbol-iswellknownsymbol
// We should patch it for newly added well-known symbols. If it's not required, this module just will not be injected
$({ target: 'Symbol', stat: true, name: 'isWellKnownSymbol', forced: true }, {
  isWellKnown: isWellKnownSymbol
});


/***/ }),

/***/ 84163:
/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var defineWellKnownSymbol = __webpack_require__(72134);

// `Symbol.matcher` well-known symbol
// https://github.com/tc39/proposal-pattern-matching
defineWellKnownSymbol('matcher');


/***/ }),

/***/ 16206:
/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) {

"use strict";

// TODO: Remove from `core-js@4`
var defineWellKnownSymbol = __webpack_require__(72134);

// `Symbol.metadataKey` well-known symbol
// https://github.com/tc39/proposal-decorator-metadata
defineWellKnownSymbol('metadataKey');


/***/ }),

/***/ 55539:
/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var defineWellKnownSymbol = __webpack_require__(72134);

// `Symbol.metadata` well-known symbol
// https://github.com/tc39/proposal-decorators
defineWellKnownSymbol('metadata');


/***/ }),

/***/ 76499:
/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var defineWellKnownSymbol = __webpack_require__(72134);

// `Symbol.observable` well-known symbol
// https://github.com/tc39/proposal-observable
defineWellKnownSymbol('observable');


/***/ }),

/***/ 81548:
/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) {

"use strict";

// TODO: remove from `core-js@4`
var defineWellKnownSymbol = __webpack_require__(72134);

// `Symbol.patternMatch` well-known symbol
// https://github.com/tc39/proposal-pattern-matching
defineWellKnownSymbol('patternMatch');


/***/ }),

/***/ 11666:
/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) {

"use strict";

// TODO: remove from `core-js@4`
var defineWellKnownSymbol = __webpack_require__(72134);

defineWellKnownSymbol('replaceAll');


/***/ }),

/***/ 17492:
/***/ (function() {

// empty


/***/ }),

/***/ 57483:
/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) {

"use strict";

__webpack_require__(71997);
var DOMIterables = __webpack_require__(18920);
var global = __webpack_require__(5685);
var setToStringTag = __webpack_require__(84196);
var Iterators = __webpack_require__(99234);

for (var COLLECTION_NAME in DOMIterables) {
  setToStringTag(global[COLLECTION_NAME], COLLECTION_NAME);
  Iterators[COLLECTION_NAME] = Iterators.Array;
}


/***/ }),

/***/ 45114:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var parent = __webpack_require__(40001);

module.exports = parent;


/***/ }),

/***/ 88195:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var classof = __webpack_require__(56397);
var hasOwn = __webpack_require__(99027);
var isPrototypeOf = __webpack_require__(61727);
var method = __webpack_require__(45114);
__webpack_require__(17492);

var ArrayPrototype = Array.prototype;

var DOMIterables = {
  DOMTokenList: true,
  NodeList: true
};

module.exports = function (it) {
  var own = it.forEach;
  return it === ArrayPrototype || (isPrototypeOf(ArrayPrototype, it) && own === ArrayPrototype.forEach)
    || hasOwn(DOMIterables, classof(it)) ? method : own;
};


/***/ }),

/***/ 55567:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var parent = __webpack_require__(53264);

module.exports = parent;


/***/ }),

/***/ 72181:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var parent = __webpack_require__(45051);

module.exports = parent;


/***/ }),

/***/ 76765:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var parent = __webpack_require__(14558);

module.exports = parent;


/***/ }),

/***/ 42093:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var parent = __webpack_require__(38858);

module.exports = parent;


/***/ }),

/***/ 45602:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var parent = __webpack_require__(88641);

module.exports = parent;


/***/ }),

/***/ 73740:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var parent = __webpack_require__(72426);

module.exports = parent;


/***/ }),

/***/ 74301:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var parent = __webpack_require__(51435);

module.exports = parent;


/***/ }),

/***/ 32948:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var parent = __webpack_require__(58462);
__webpack_require__(57483);

module.exports = parent;


/***/ }),

/***/ 14454:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var parent = __webpack_require__(53941);
__webpack_require__(57483);

module.exports = parent;


/***/ }),

/***/ 4690:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var parent = __webpack_require__(24101);
__webpack_require__(57483);

module.exports = parent;


/***/ }),

/***/ 87263:
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {

"use strict";

var parent = __webpack_require__(47548);

module.exports = parent;


/***/ })

/******/ 	});
/************************************************************************/
/******/ 	// The module cache
/******/ 	var __webpack_module_cache__ = {};
/******/ 	
/******/ 	// The require function
/******/ 	function __webpack_require__(moduleId) {
/******/ 		// Check if module is in cache
/******/ 		var cachedModule = __webpack_module_cache__[moduleId];
/******/ 		if (cachedModule !== undefined) {
/******/ 			return cachedModule.exports;
/******/ 		}
/******/ 		// Create a new module (and put it into the cache)
/******/ 		var module = __webpack_module_cache__[moduleId] = {
/******/ 			// no module.id needed
/******/ 			// no module.loaded needed
/******/ 			exports: {}
/******/ 		};
/******/ 	
/******/ 		// Execute the module function
/******/ 		__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);
/******/ 	
/******/ 		// Return the exports of the module
/******/ 		return module.exports;
/******/ 	}
/******/ 	
/************************************************************************/
/******/ 	/* webpack/runtime/compat get default export */
/******/ 	!function() {
/******/ 		// getDefaultExport function for compatibility with non-harmony modules
/******/ 		__webpack_require__.n = function(module) {
/******/ 			var getter = module && module.__esModule ?
/******/ 				function() { return module['default']; } :
/******/ 				function() { return module; };
/******/ 			__webpack_require__.d(getter, { a: getter });
/******/ 			return getter;
/******/ 		};
/******/ 	}();
/******/ 	
/******/ 	/* webpack/runtime/define property getters */
/******/ 	!function() {
/******/ 		// define getter functions for harmony exports
/******/ 		__webpack_require__.d = function(exports, definition) {
/******/ 			for(var key in definition) {
/******/ 				if(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {
/******/ 					Object.defineProperty(exports, key, { enumerable: true, get: definition[key] });
/******/ 				}
/******/ 			}
/******/ 		};
/******/ 	}();
/******/ 	
/******/ 	/* webpack/runtime/global */
/******/ 	!function() {
/******/ 		__webpack_require__.g = (function() {
/******/ 			if (typeof globalThis === 'object') return globalThis;
/******/ 			try {
/******/ 				return this || new Function('return this')();
/******/ 			} catch (e) {
/******/ 				if (typeof window === 'object') return window;
/******/ 			}
/******/ 		})();
/******/ 	}();
/******/ 	
/******/ 	/* webpack/runtime/hasOwnProperty shorthand */
/******/ 	!function() {
/******/ 		__webpack_require__.o = function(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); }
/******/ 	}();
/******/ 	
/************************************************************************/
var __webpack_exports__ = {};
// This entry need to be wrapped in an IIFE because it need to be in strict mode.
!function() {
"use strict";

// EXTERNAL MODULE: ./node_modules/jquery/dist/jquery-exposed.js
var jquery_exposed = __webpack_require__(98942);
var jquery_exposed_default = /*#__PURE__*/__webpack_require__.n(jquery_exposed);
// EXTERNAL MODULE: ./node_modules/jquery-ui/ui/widget.js
var widget = __webpack_require__(26891);
// EXTERNAL MODULE: ./node_modules/core-js-pure/full/object/define-property.js
var define_property = __webpack_require__(31685);
// EXTERNAL MODULE: ./node_modules/core-js-pure/full/symbol/index.js
var symbol = __webpack_require__(1768);
// EXTERNAL MODULE: ./node_modules/core-js-pure/full/symbol/iterator.js
var iterator = __webpack_require__(56228);
;// CONCATENATED MODULE: ./node_modules/@babel/runtime-corejs3/helpers/esm/typeof.js


function _typeof(o) {
  "@babel/helpers - typeof";

  return _typeof = "function" == typeof symbol && "symbol" == typeof iterator ? function (o) {
    return typeof o;
  } : function (o) {
    return o && "function" == typeof symbol && o.constructor === symbol && o !== symbol.prototype ? "symbol" : typeof o;
  }, _typeof(o);
}
// EXTERNAL MODULE: ./node_modules/core-js-pure/full/symbol/to-primitive.js
var to_primitive = __webpack_require__(74360);
;// CONCATENATED MODULE: ./node_modules/@babel/runtime-corejs3/helpers/esm/toPrimitive.js


function toPrimitive(t, r) {
  if ("object" != _typeof(t) || !t) return t;
  var e = t[to_primitive];
  if (void 0 !== e) {
    var i = e.call(t, r || "default");
    if ("object" != _typeof(i)) return i;
    throw new TypeError("@@toPrimitive must return a primitive value.");
  }
  return ("string" === r ? String : Number)(t);
}
;// CONCATENATED MODULE: ./node_modules/@babel/runtime-corejs3/helpers/esm/toPropertyKey.js


function toPropertyKey(t) {
  var i = toPrimitive(t, "string");
  return "symbol" == _typeof(i) ? i : String(i);
}
;// CONCATENATED MODULE: ./node_modules/@babel/runtime-corejs3/helpers/esm/defineProperty.js


function defineProperty_defineProperty(obj, key, value) {
  key = toPropertyKey(key);
  if (key in obj) {
    define_property(obj, key, {
      value: value,
      enumerable: true,
      configurable: true,
      writable: true
    });
  } else {
    obj[key] = value;
  }
  return obj;
}
;// CONCATENATED MODULE: ./assets/js/src/Components/SamUtil/ServerData/ServerData.ts

/**
 * Module for injecting variables from server logic to client js side
 * TODO: Add data fetching methods with type casting and apply them in callers to
 */
class ServerData {
  /**
   * @return {void}
   */
  constructor() {
    defineProperty_defineProperty(this, "variables", void 0);
    defineProperty_defineProperty(this, "defaultNamespace", void 0);
    defineProperty_defineProperty(this, "translationNamespace", void 0);
    this.variables = [];
    this.defaultNamespace = 'default';
    this.translationNamespace = 'translation';
  }

  /**
   * Add value by key to serverData repository
   * @param {string} key
   * @param {string} value
   * @param {string | null} namespace
   * @return {void}
   */
  add(key, value, namespace = null) {
    namespace = this.setupNamespace(namespace);
    this.variables[namespace][key] = value;
  }

  /**
   *
   * Get value by key from serverData repository
   * @param {string} key
   * @param {string |null} defaultValue
   * @param {string | null} namespace
   * @return {any}
   */
  get(key, defaultValue, namespace = null) {
    namespace = this.normalizeNamespace(namespace);
    return this.hasKey(key, namespace) ? this.variables[namespace][key] : defaultValue;
  }

  /**
   *
   * Get string value by key from serverData repository
   * @param {string} key
   * @param {string | null} defaultValue
   * @param {string | null} namespace
   * @return {string}
   */
  getString(key, defaultValue, namespace = null) {
    namespace = this.normalizeNamespace(namespace);
    if (defaultValue === null || defaultValue === undefined) {
      defaultValue = '';
    }
    const value = this.hasKey(key, namespace) ? this.variables[namespace][key] : defaultValue;
    return String(value);
  }

  /**
   *
   * Get number value by key from serverData repository
   * @param {string} key
   * @param {number} defaultValue
   * @param {string | null} namespace
   * @return {number}
   */
  getNumber(key, defaultValue, namespace = null) {
    namespace = this.normalizeNamespace(namespace);
    if (defaultValue === undefined) {
      defaultValue = 0;
    }
    const value = this.hasKey(key, namespace) ? this.variables[namespace][key] : defaultValue;
    return Number(value);
  }

  /**
   *
   * Get number or null value by key from serverData repository
   * @param {string} key
   * @param {number | null} defaultValue
   * @param {string | null} namespace
   * @return {number}
   */
  getNullableNumber(key, defaultValue, namespace = null) {
    namespace = this.normalizeNamespace(namespace);
    if (defaultValue === null || defaultValue === undefined) {
      defaultValue = null;
    }
    const value = this.hasKey(key, namespace) ? this.variables[namespace][key] : defaultValue;
    return value === null ? value : Number(value);
  }

  /**
   *
   * Get boolean value by key from serverData repository
   * @param {string} key
   * @param {boolean} defaultValue
   * @param {string | null} namespace
   * @return {boolean}
   */
  getBoolean(key, defaultValue, namespace = null) {
    namespace = this.normalizeNamespace(namespace);
    if (defaultValue === undefined) {
      defaultValue = false;
    }
    let value = this.hasKey(key, namespace) ? this.variables[namespace][key] : defaultValue;
    if (value === 'false') {
      value = false;
    }
    return Boolean(value);
  }

  /**
   *
   * Translation
   * @param {string} key
   * @param {string} defaultValue
   * @return {string}
   */
  translate(key, defaultValue = '') {
    return this.get(key, defaultValue, this.translationNamespace);
  }

  /**
   *
   * Get array of any type value by key from serverData repository
   * @param {string} key
   * @param {any[]} defaultValue
   * @param {string|null} namespace
   * @return {any[]}
   */
  getArray(key, defaultValue = [], namespace = null) {
    namespace = this.normalizeNamespace(namespace);
    const preResult = this.hasKey(key, namespace) ? this.variables[namespace][key] : defaultValue;
    return Array.isArray(preResult) ? preResult : [preResult];
  }

  /**
   *
   * Get array of string type value by key from serverData repository
   * @param {string} key
   * @param {string[]} defaultValue
   * @param {string|null} namespace
   * @return {string[]}
   */
  getArrayOfString(key, defaultValue = [], namespace = null) {
    namespace = this.normalizeNamespace(namespace);
    const preResult = this.hasKey(key, namespace) ? this.variables[namespace][key] : defaultValue;
    return Array.isArray(preResult) ? preResult.map(item => String(item)) : [String(preResult)];
  }

  /**
   *
   * Get array of number type value by key from serverData repository
   * @param {string} key
   * @param {number[]} defaultValue
   * @param {string|null} namespace
   * @return {number[]}
   */
  getArrayOfNumber(key, defaultValue = [], namespace = null) {
    namespace = this.normalizeNamespace(namespace);
    const preResult = this.hasKey(key, namespace) ? this.variables[namespace][key] : defaultValue;
    return Array.isArray(preResult) ? preResult.map(item => Number(item)) : [Number(preResult)];
  }

  /**
   *
   * Check key is registered
   * @param {string} key
   * @param {string} namespace
   * @return {boolean}
   * @private
   */
  hasKey(key, namespace) {
    return typeof this.variables[namespace] !== 'undefined' && typeof this.variables[namespace][key] !== 'undefined';
  }

  /**
   *
   * Return passed namespace or default one
   * @param {string} namespace
   * @return {string}
   * @private
   */
  normalizeNamespace(namespace = null) {
    if (namespace === null || typeof namespace === 'undefined') {
      return this.defaultNamespace;
    }
    return namespace;
  }

  /**
   *
   * Make namespaced storage available and return name of namespace.
   * @param {string} namespace
   * @return {string}
   * @private
   */
  setupNamespace(namespace = null) {
    namespace = this.normalizeNamespace(namespace);
    if (typeof this.variables[namespace] === 'undefined') {
      this.variables[namespace] = [];
    }
    return namespace;
  }
}
/* harmony default export */ var ServerData_ServerData = (ServerData);
;// CONCATENATED MODULE: ./assets/js/src/Components/SamUtil/ServerData/ServerDataIntegrator.ts



/**
 * Registers server data collection in window object (in browsing context container)
 */
class ServerDataIntegrator {
  /**
   * @return {void}
   */
  constructor() {
    defineProperty_defineProperty(this, "samNamespace", 'sam');
    // eslint-disable-next-line @typescript-eslint/no-explicit-any
    defineProperty_defineProperty(this, "sam", void 0);
    this.sam = this.createSamSpace();
    this.sam.serverData = this.sam.serverData || new ServerData_ServerData();
  }

  /**
   *
   * Start initialization
   * @return {Record<string, number>}
   */
  createSamSpace() {
    window[this.samNamespace] = window[this.samNamespace] || {};
    return window[this.samNamespace];
  }

  /**
   *
   * A special property, that must be present on each page.
   * It's represent data, that we pass from server on first page load (usually legacy data)
   * @return {ServerData}
   */
  serverData() {
    return this.sam.serverData;
  }

  /**
   *
   * Create property in the Sam Namespace.
   * Preserve property If the property already exists
   * @param {string} name
   * @param {any} value
   * @return {any}
   */
  createProp(name, value) {
    this.sam[name] = this.sam[name] || value;
    return this.sam[name];
  }

  /**
   *
   * Replace old property or create a new one
   * @param {string} name
   * @param {any} value
   * @return {any}
   */
  setProp(name, value) {
    this.sam[name] = value;
    return this.sam[name];
  }
}
/* harmony default export */ var ServerData_ServerDataIntegrator = (ServerDataIntegrator);
;// CONCATENATED MODULE: ./assets/js/src/Constants/AccountVisibility.ts
/**
 * Please, do NOT change file content. The content was generated automatically by bin/generate/php_to_js_constants.php
 */

const SEPARATE = 'separate';
const DIRECT_LINK = 'directlink';
const TRANSPARENT = 'transparent';
const types = (/* unused pure expression or super */ null && (['separate', 'directlink', 'transparent']));
const typeNames = {
  'separate': 'separate',
  'directlink': 'directlink',
  'transparent': 'transparent'
};
;// CONCATENATED MODULE: ./assets/js/src/Constants/AdminPrivilege.ts
/**
 * Please, do NOT change file content. The content was generated automatically by bin/generate/php_to_js_constants.php
 */

const SUM = 1535;
const ALL_EXCEPT_SUPERADMIN = 511;
const NONE = 0;
const MANAGE_AUCTIONS = 1;
const MANAGE_INVENTORY = 2;
const MANAGE_USERS = 4;
const MANAGE_INVOICES = 8;
const MANAGE_SETTLEMENTS = 16;
const MANAGE_SETTINGS = 32;
const MANAGE_CC_INFO = 64;
const SALES_STAFF = 128;
const MANAGE_REPORTS = 256;
const SUPERADMIN = 1024;
const SUB_AUCTION_MANAGE_ALL = 'ManageAllAuctions';
const SUB_AUCTION_DELETE = 'DeleteAuction';
const SUB_AUCTION_ARCHIVE = 'ArchiveAuction';
const SUB_AUCTION_RESET = 'ResetAuction';
const SUB_AUCTION_INFORMATION = 'Information';
const SUB_AUCTION_PUBLISH = 'Publish';
const SUB_AUCTION_LOT_LIST = 'Lots';
const SUB_AUCTION_AVAILABLE_LOT = 'AvailableLots';
const SUB_AUCTION_BIDDER = 'Bidders';
const SUB_AUCTION_REMAINING_USER = 'RemainingUsers';
const SUB_AUCTION_RUN_LIVE = 'RunLiveAuction';
const SUB_AUCTION_AUCTIONEER = 'AuctioneerScreen';
const SUB_AUCTION_PROJECTOR = 'Projector';
const SUB_AUCTION_BID_INCREMENT = 'BidIncrements';
const SUB_AUCTION_BUYER_PREMIUM = 'BuyersPremium';
const SUB_AUCTION_PERMISSION = 'Permissions';
const SUB_AUCTION_CREATE_BIDDER = 'CreateBidder';
const SUB_USER_PASSWORD = 'UserPasswords';
const SUB_USER_BULK_EXPORT = 'BulkUserExport';
const SUB_USER_DELETE = 'DeleteUser';
const SUB_USER_PRIVILEGE = 'UserPrivileges';
const SUB_USER_GRANT_ADMIN_ROLE = 'GrantAdminRole';
const SUB_USER_GRANT_BIDDER_ROLE = 'GrantBidderRole';
const SUB_USER_GRANT_CONSIGNOR_ROLE = 'GrantConsignorRole';
const privileges = (/* unused pure expression or super */ null && ([1, 2, 4, 8, 16, 32, 64, 128, 256, 1024]));
const privilegeNames = {
  '1': 'Manage auctions',
  '2': 'Manage inventory',
  '4': 'Manage users',
  '8': 'Manage invoices',
  '16': 'Manage consignor settlements',
  '32': 'Manage settings',
  '64': 'Manage CC info',
  '128': 'Sales staff',
  '256': 'Manage reports',
  '1024': 'Superadmin'
};
const privilegeNamesTranslations = {
  '1': 'user_privileges.admin_privileges.manage_auctions',
  '2': 'user_privileges.admin_privileges.manage_inventory',
  '4': 'user_privileges.admin_privileges.manage_users',
  '8': 'user_privileges.admin_privileges.manage_invoices',
  '16': 'user_privileges.admin_privileges.manage_settlements',
  '32': 'user_privileges.admin_privileges.manage_settings',
  '64': 'user_privileges.admin_privileges.manage_cc_info',
  '128': 'user_privileges.admin_privileges.sales_staff',
  '256': 'user_privileges.admin_privileges.manage_reports',
  '1024': 'user_privileges.admin_privileges.superadmin'
};
const manageAuctionSubPrivilegeNames = {
  'ManageAllAuctions': 'All auctions',
  'DeleteAuction': 'Delete',
  'ArchiveAuction': 'Archive',
  'ResetAuction': 'Reset',
  'Information': 'Information',
  'Publish': 'Publish',
  'Lots': 'Lots',
  'AvailableLots': 'Available lots',
  'Bidders': 'Bidders',
  'RemainingUsers': 'Remaining users',
  'RunLiveAuction': 'Run live auction',
  'AuctioneerScreen': 'Auctioneer screen',
  'Projector': 'Projector',
  'BidIncrements': 'Bid increments',
  'BuyersPremium': 'Buyers premium',
  'Permissions': 'Permissions',
  'CreateBidder': 'Create bidder'
};
const manageAuctionSubPrivilegeNamesTranslations = {
  'ManageAllAuctions': 'user_privileges.admin_privileges.manage_auctions.all_auctions',
  'DeleteAuction': 'user_privileges.admin_privileges.manage_auctions.delete',
  'ArchiveAuction': 'user_privileges.admin_privileges.manage_auctions.archive',
  'ResetAuction': 'user_privileges.admin_privileges.manage_auctions.reset',
  'Information': 'user_privileges.admin_privileges.manage_auctions.information',
  'Publish': 'user_privileges.admin_privileges.manage_auctions.publish',
  'Lots': 'user_privileges.admin_privileges.manage_auctions.lots',
  'AvailableLots': 'user_privileges.admin_privileges.manage_auctions.available_lots',
  'Bidders': 'user_privileges.admin_privileges.manage_auctions.bidders',
  'RemainingUsers': 'user_privileges.admin_privileges.manage_auctions.remaining_users',
  'RunLiveAuction': 'user_privileges.admin_privileges.manage_auctions.run_live_auction',
  'AuctioneerScreen': 'user_privileges.admin_privileges.manage_auctions.auctioneer_screen',
  'Projector': 'user_privileges.admin_privileges.manage_auctions.projector',
  'BidIncrements': 'user_privileges.admin_privileges.manage_auctions.bid_increments',
  'BuyersPremium': 'user_privileges.admin_privileges.manage_auctions.buyers_premium',
  'Permissions': 'user_privileges.admin_privileges.manage_auctions.permissions',
  'CreateBidder': 'user_privileges.admin_privileges.manage_auctions.create_bidder'
};
const manageAuctionSubPrivileges = (/* unused pure expression or super */ null && (['ManageAllAuctions', 'DeleteAuction', 'ArchiveAuction', 'ResetAuction', 'Information', 'Publish', 'Lots', 'AvailableLots', 'Bidders', 'RemainingUsers', 'RunLiveAuction', 'AuctioneerScreen', 'Projector', 'BidIncrements', 'BuyersPremium', 'Permissions', 'CreateBidder']));
const manageUserSubPrivilegeNames = {
  'UserPasswords': 'Passwords',
  'BulkUserExport': 'Bulk user export',
  'UserPrivileges': 'User privileges',
  'DeleteUser': 'Delete user'
};
const manageUserSubPrivilegeNamesTranslations = {
  'UserPasswords': 'user_privileges.admin_privileges.manage_users.passwords',
  'BulkUserExport': 'user_privileges.admin_privileges.manage_users.bulk_user_export',
  'UserPrivileges': 'user_privileges.admin_privileges.manage_users.user_privileges',
  'DeleteUser': 'user_privileges.admin_privileges.manage_users.delete_user'
};
const manageUserSubPrivileges = (/* unused pure expression or super */ null && (['UserPasswords', 'BulkUserExport', 'UserPrivileges', 'DeleteUser']));
const manageUserGrantRolePrivileges = (/* unused pure expression or super */ null && (['GrantAdminRole', 'GrantBidderRole', 'GrantConsignorRole']));
const manageUserGrantRolePrivilegeNames = {
  'GrantAdminRole': 'Grant admin role',
  'GrantBidderRole': 'Grant bidder role',
  'GrantConsignorRole': 'Grant consignor role'
};
;// CONCATENATED MODULE: ./assets/js/src/Constants/Application.ts
/**
 * Please, do NOT change file content. The content was generated automatically by bin/generate/php_to_js_constants.php
 */

const UI_RESPONSIVE = 1;
const UI_ADMIN = 2;
const UI_CLI = 3;
const ENCODING = 'UTF-8';
const UIDIR_RESPONSIVE = 'm';
const UIDIR_ADMIN = 'admin';
const UIDIR_CLI = 'bin';
const uis = (/* unused pure expression or super */ null && ([1, 2, 3]));
const uiDirs = {
  '1': 'm',
  '2': 'admin',
  '3': 'bin'
};
;// CONCATENATED MODULE: ./assets/js/src/Constants/Auction.ts
/**
 * Please, do NOT change file content. The content was generated automatically by bin/generate/php_to_js_constants.php
 */

const LIVE = 'L';
const TIMED = 'T';
const HYBRID = 'H';
const AUCTION_TYPES = (/* unused pure expression or super */ null && (['T', 'L', 'H']));
const RTB_AUCTION_TYPES = (/* unused pure expression or super */ null && (['L', 'H']));
const AUCTION_TYPE_NAMES_TRANSLATIONS = {
  'T': 'auctions.type.timed',
  'L': 'auctions.type.live',
  'H': 'auctions.type.hybrid'
};
const AS_NONE = 0;
const AS_ACTIVE = 1;
const AS_STARTED = 2;
const AS_CLOSED = 3;
const AS_DELETED = 4;
const AS_ARCHIVED = 5;
const AS_PAUSED = 6;
const CS_SIMPLE = 'S';
const CS_ADVANCED = 'A';
const ET_SCHEDULED = 0;
const ET_ONGOING = 1;
const DAS_AUCTION_TO_ITEMS = 1;
const DAS_ITEMS_TO_AUCTION = 2;
const SD_NONE = 'N';
const SD_BPAV = '1';
const SD_BPV = '2';
const SD_BPA = '3';
const LOT_ORDER_BY_LOT_NUMBER = 1;
const LOT_ORDER_BY_ITEM_NUMBER = 2;
const LOT_ORDER_BY_CUST_FIELD = 3;
const LOT_ORDER_BY_CATEGORY = 4;
const LOT_ORDER_BY_NAME = 5;
const LOT_ORDER_BY_NONE = 0;
const STATUS_IN_PROGRESS = 1;
const STATUS_UPCOMING = 2;
const STATUS_CLOSED = 3;
const TS_UPCOMING = 1;
const TS_IN_PROGRESS = 2;
const TS_LOT_ENDED = 3;
const TS_AUCTION_CLOSED = 4;
const TS_LOT_CLOSED = 5;
const SMS_NOTIFICATION_TEXT = 'Text EVENT_NAME {lot_number} to NUMBER to receive text alert for this lot!';
const ACCESS_RESTYPE_AUCTION_VISIBILITY = 1;
const ACCESS_RESTYPE_AUCTION_INFO = 2;
const ACCESS_RESTYPE_AUCTION_CATALOG = 3;
const ACCESS_RESTYPE_LIVE_VIEW = 4;
const ACCESS_RESTYPE_LOT_DETAILS = 5;
const ACCESS_RESTYPE_LOT_BIDDING_HISTORY = 6;
const ACCESS_RESTYPE_LOT_WINNING_BID = 7;
const ACCESS_RESTYPE_LOT_BIDDING_INFO = 8;
const ACCESS_RESTYPE_LOT_STARTING_BID = 9;
const BNTR_NONE = 'N';
const BNTR_FIRST_BID = 'FB';
const BNTR_CURRENT_BID = 'CB';
const BUY_NOW_TIMED_RESTRICTIONS = (/* unused pure expression or super */ null && (['N', 'FB', 'CB']));
const BUY_NOW_TIMED_RESTRICTION_NAMES = {
  'N': 'None',
  'FB': 'First Bid',
  'CB': 'Current Bid'
};
const LIST_RECENT_ORDER_DIRECTIONS = {
  'asc': '(CASE\n        WHEN a.auction_status_id \u003C 3 AND a.auction_type = \u0027T\u0027 AND a.event_type = 1 THEN 1\n        WHEN a.auction_status_id \u003C 3 THEN 0\n        ELSE 2 END) ASC, IF(a.auction_status_id \u003C 3, (a.start_closing_date + 0), (0 - a.start_closing_date)) ASC',
  'desc': '(CASE\n        WHEN a.auction_status_id \u003C 3 AND a.auction_type = \u0027T\u0027 AND a.event_type = 1 THEN 1\n        WHEN a.auction_status_id \u003C 3 THEN 0\n        ELSE 2 END) DESC, IF(a.auction_status_id \u003C 3, (a.start_closing_date + 0), (0 - a.start_closing_date)) DESC'
};
const IS_ACTIVE = 'a.auction_status_id \u003C 3';
const IS_TIMED_ET_ONGOING = 'a.auction_type = \u0027T\u0027 AND a.event_type = 1';
const NS_OUTBID = 'outbid';
const NS_UPCOMING_LOTS = 'upcoming_lots';
const NS_WATCHLIST_REMINDER = 'watchlist-reminder';
const auctionTypeLabels = {
  'T': 'Timed online auction',
  'L': 'Live auction',
  'H': 'Hybrid auction'
};
const auctionTypeLabelsTranslations = {
  'T': 'secondary_menu.bid_increment.timed',
  'L': 'secondary_menu.bid_increment.live',
  'H': 'secondary_menu.bid_increment.hybrid'
};
const auctionTypeNames = {
  'T': 'Timed',
  'L': 'Live',
  'H': 'Hybrid'
};
const auctionTypeParams = {
  'T': 'timed',
  'L': 'live',
  'H': 'hybrid'
};
const auctionStatuses = (/* unused pure expression or super */ null && ([1, 2, 3, 4, 5, 6]));
const availableAuctionStatuses = (/* unused pure expression or super */ null && ([1, 2, 3, 6]));
const notDeletedAuctionStatuses = (/* unused pure expression or super */ null && ([1, 2, 3, 5, 6]));
const auctionStatusNames = {
  '1': 'Active',
  '2': 'Started',
  '3': 'Closed',
  '4': 'Deleted',
  '5': 'Archived',
  '6': 'Paused'
};
const openAuctionStatuses = (/* unused pure expression or super */ null && ([1, 2, 6]));
const clerkingStyleNames = {
  'S': 'Simple',
  'A': 'Advanced'
};
const eventTypes = (/* unused pure expression or super */ null && ([0, 1]));
const eventTypeNames = (/* unused pure expression or super */ null && (['Scheduled', 'Ongoing']));
const eventTypeFullNames = (/* unused pure expression or super */ null && (['Scheduled Event', 'Ongoing Event']));
const dateAssignmentStrategies = {
  '1': 'Apply auction\u0027s start bidding date and start closing date to items',
  '2': 'Apply item\u0027s min. start bidding date and min. start closing date to auction'
};
const streamDisplayNames = {
  'N': ''
};
const streamDisplayValues = (/* unused pure expression or super */ null && (['N']));
const streamDisplayCoded = {
  '1': 'BidPath Audio\/Video',
  '2': 'BidPath Video',
  '3': 'BidPath Audio'
};
const streamDisplayCodedValues = (/* unused pure expression or super */ null && (['1', '2', '3']));
const lotOrderTypes = (/* unused pure expression or super */ null && ([0, 1, 2, 3, 4, 5]));
const lotOrderPrimaryTypes = (/* unused pure expression or super */ null && ([1, 2, 3, 4, 5]));
const generalStatusNames = {
  '1': 'In progress',
  '2': 'Upcoming',
  '3': 'Closed'
};
const generalStatusParams = {
  '1': 'in-progress',
  '2': 'upcoming',
  '3': 'closed'
};
;// CONCATENATED MODULE: ./assets/js/src/Constants/AuctionDomainMode.ts
/**
 * Please, do NOT change file content. The content was generated automatically by bin/generate/php_to_js_constants.php
 */

const ANY_DOMAIN = 'A';
const ALWAYS_SUB_DOMAIN = 'S';
const ALWAYS_MAIN_DOMAIN = 'M';
const optionTexts = {
  'A': 'Any',
  'S': 'Always the auction account (sub) domain',
  'M': 'Always the main domain'
};
;// CONCATENATED MODULE: ./assets/js/src/Constants/AuctionInc.ts
/**
 * Please, do NOT change file content. The content was generated automatically by bin/generate/php_to_js_constants.php
 */

const WEIGHT_UNIT_LBS = 1;
const WEIGHT_UNIT_OZ = 2;
const WEIGHT_UNIT_KGS = 3;
const WEIGHT_UOM_VALUE = {
  '1': 'LBS',
  '2': 'OZ',
  '3': 'KGS'
};
const DIMENSION_UNIT_IN = 1;
const DIMENSION_UNIT_CM = 2;
const DIMENSION_UOM_VALUE = {
  '1': 'IN',
  '2': 'CM'
};
;// CONCATENATED MODULE: ./assets/js/src/Constants/Bidder.ts
/**
 * Please, do NOT change file content. The content was generated automatically by bin/generate/php_to_js_constants.php
 */

const PCH_SPACE = ' ';
const PCH_ZERO = '0';
const PCH_NONE = '';
const PCH_DEFAULT = '0';
const PADDING_CHARACTERS = (/* unused pure expression or super */ null && (['0', ' ', '']));
const PADDING_CHARACTER_NAMES = {
  ' ': 'Space',
  '0': 'Zero',
  '': 'None'
};
;// CONCATENATED MODULE: ./assets/js/src/Constants/Billing.ts
/**
 * Please, do NOT change file content. The content was generated automatically by bin/generate/php_to_js_constants.php
 */

const CCV_NONE = 0;
const CCV_AUTH = 1;
const CCV_CAPTURE = 2;
const CC_VERIFICATIONS = (/* unused pure expression or super */ null && ([0, 1, 2]));
const CC_VERIFICATION_NAMES = (/* unused pure expression or super */ null && (['NONE', 'AUTHORIZE', 'CAPTURE']));
const PAY_ACC_MODE_TEST = 'T';
const PAY_ACC_MODE_PRODUCTION = 'P';
const PAYMENT_ACCOUNT_MODE_NAMES = {
  'T': 'Test',
  'P': 'Production'
};
const PAY_ACC_TYPE_DEVELOPER = 'D';
const PAY_ACC_TYPE_MERCHANT = 'M';
const PAYMENT_ACCOUNT_TYPE_NAMES = {
  'D': 'Developer',
  'M': 'Merchant'
};
;// CONCATENATED MODULE: ./assets/js/src/Constants/BillingBank.ts
/**
 * Please, do NOT change file content. The content was generated automatically by bin/generate/php_to_js_constants.php
 */

const AT_CHECKING = 'C';
const AT_BUSINESS_CHECKING = 'B';
const AT_SAVINGS = 'S';
const ACCOUNT_TYPES = (/* unused pure expression or super */ null && (['C', 'B', 'S']));
const ACCOUNT_TYPE_NAMES = {
  'C': 'Checking',
  'B': 'Business Checking',
  'S': 'Savings'
};
const ACCOUNT_TYPE_NMI_VALUES = {
  'C': 'checking',
  'B': 'businesschecking',
  'S': 'savings'
};
const ACCOUNT_TYPE_AUTH_NET_VALUES = {
  'C': 'CHECKING',
  'B': 'BUSINESSCHECKING',
  'S': 'SAVINGS'
};
const ACCOUNT_TYPE_SOAP_VALUES = {
  'C': 'CHECKING',
  'B': 'BUSINESSCHECKING',
  'S': 'SAVINGS'
};
const AHT_BUSINESS = 'B';
const AHT_PERSONAL = 'P';
const ACCOUNT_HOLDER_TYPE_NAMES = {
  'B': 'Business',
  'P': 'Personal'
};
const ACCOUNT_HOLDER_TYPE_NMI_VALUES = {
  'B': 'business',
  'P': 'personal'
};
;// CONCATENATED MODULE: ./assets/js/src/Constants/BillingNmi.ts
/**
 * Please, do NOT change file content. The content was generated automatically by bin/generate/php_to_js_constants.php
 */

const ACCOUNT_HOLDER_TYPE_BUSINESS = 'business';
const ACCOUNT_HOLDER_TYPE_PERSONAL = 'personal';
const ACCOUNT_TYPE_CHECKING = 'checking';
const ACCOUNT_TYPE_SAVINGS = 'savings';
const PAYMENT_API_RESPONSE_STATUS_CODE = 'response';
const PAYMENT_API_RESPONSE_TEXT = 'responsetext';
const PAYMENT_API_AUTH_CODE = 'authcode';
const PAYMENT_API_TRANSACTION_ID = 'transactionid';
const PAYMENT_API_AVS_RESPONSE_CODE = 'avsresponse';
const PAYMENT_API_CVV_RESPONSE_CODE = 'cvvresponse';
const PAYMENT_API_ORDER_ID = 'orderid';
const PAYMENT_API_ORDER_DESCRIPTION = 'order_description';
const PAYMENT_API_RESPONSE_CODE = 'response_code';
const PAYMENT_API_CUSTOMER_VAULT_ID = 'customer_vault_id';
const PAYMENT_API_TRANSACTION_TYPE = 'type';
const PAYMENT_API_AMOUNT = 'amount';
const PAYMENT_API_SECURITY_KEY = 'security_key';
const PAYMENT_API_EMAIL = 'email';
const PAYMENT_API_FIRSTNAME = 'firstname';
const PAYMENT_API_LASTNAME = 'lastname';
const PAYMENT_API_ADDRESS = 'address1';
const PAYMENT_API_CITY = 'city';
const PAYMENT_API_STATE = 'state';
const PAYMENT_API_ZIP = 'zip';
const PAYMENT_API_COUNTRY = 'country';
const PAYMENT_API_PHONE = 'phone';
const PAYMENT_API_SHIPPING_FIRSTNAME = 'shipping_firstname';
const PAYMENT_API_SHIPPING_LASTNAME = 'shipping_lastname';
const PAYMENT_API_SHIPPING_ADDRESS = 'shipping_address1';
const PAYMENT_API_SHIPPING_CITY = 'shipping_city';
const PAYMENT_API_SHIPPING_STATE = 'shipping_state';
const PAYMENT_API_SHIPPING_COUNTRY = 'shipping_country';
const PAYMENT_API_SHIPPING_ZIP = 'shipping_zip';
const PAYMENT_API_PAYMENT_TOKEN = 'payment_token';
const PAYMENT_API_CUSTOMER_VAULT_ACTION = 'customer_vault';
const PAYMENT_API_CREATE_CUSTOMER_VAULT = 'add_customer';
const PAYMENT_API_UPDATE_CUSTOMER_VAULT = 'update_customer';
const PAYMENT_API_DELETE_CUSTOMER_VAULT = 'delete_customer';
const PAYMENT_API_TEST_MODE = 'test_mode';
const PAYMENT_API_RESPONSE_APPROVED = 1;
const PAYMENT_API_RESPONSE_DECLINED = 2;
const PAYMENT_API_RESPONSE_ERROR = 3;
const PAYMENT_API_RESPONSE_CODE_UNKNOWN_ERROR = 0;
const PAYMENT_API_TRANSACTION_TYPE_SALE = 'sale';
const PAYMENT_API_TRANSACTION_TYPE_VALIDATE = 'validate';
const PAYMENT_API_TRANSACTION_TYPE_REFUND = 'refund';
const PAYMENT_API_TRANSACTION_TYPE_VOID = 'void';
const PAYMENT_API_TRANSACTION_TYPE_AUTH = 'auth';
const PAYMENT_API_CVV_RESPONSE_M = 'M';
const PAYMENT_API_CVV_RESPONSE_N = 'N';
const PAYMENT_API_CVV_RESPONSE_P = 'P';
const PAYMENT_API_CVV_RESPONSE_S = 'S';
const PAYMENT_API_CVV_RESPONSE_U = 'U';
const QUERY_API_TRANSACTION_ID = 'transaction_id';
const accountHolderTypes = (/* unused pure expression or super */ null && (['business', 'personal']));
const accountTypes = (/* unused pure expression or super */ null && (['checking', 'savings']));
const paymentApiResultCodes = {
  '100': 'Transaction was approved.',
  '200': 'Transaction was declined by processor.',
  '201': 'Do not honor.',
  '202': 'Insufficient funds.',
  '203': 'Over limit.',
  '204': 'Transaction not allowed.',
  '220': 'Incorrect payment information.',
  '221': 'No such card issuer.',
  '222': 'No card number on file with issuer.',
  '223': 'Expired card.',
  '224': 'Invalid expiration date.',
  '225': 'Invalid card security code.',
  '226': 'Invalid PIN.',
  '240': 'Call issuer for further information.',
  '250': 'Pick up card.',
  '251': 'Lost card.',
  '252': 'Stolen card.',
  '253': 'Fraudulent card.',
  '260': 'Declined with further instructions available. (See response text)',
  '261': 'Declined-Stop all recurring payments.',
  '262': 'Declined-Stop this recurring program.',
  '263': 'Declined-Update cardholder data available.',
  '264': 'Declined-Retry in a few days.',
  '300': 'Transaction was rejected by gateway.',
  '400': 'Transaction error returned by processor.',
  '410': 'Invalid merchant configuration.',
  '411': 'Merchant account is inactive.',
  '420': 'Communication error.',
  '421': 'Communication error with issuer.',
  '430': 'Duplicate transaction at processor.',
  '440': 'Processor format error.',
  '441': 'Invalid transaction information.',
  '460': 'Processor feature not available.',
  '461': 'Unsupported card type.'
};
const paymentApiCVVResponseCodes = {
  'M': 'CVV2\/CVC2 Match',
  'N': 'CVV2\/CVC2 No Match',
  'P': 'Not Processed',
  'S': 'Merchant has indicated that CVV2\/CVC2 is not present on card',
  'U': 'Issuer is not certified and\/or has not provided Visa encryption keys'
};
;// CONCATENATED MODULE: ./assets/js/src/Constants/BillingOpayo.ts
/**
 * Please, do NOT change file content. The content was generated automatically by bin/generate/php_to_js_constants.php
 */

const TEST = 'T';
const PRODUCTION = 'P';
const P_AMOUNT = 'Amount';
const P_INVOICE_PAYMENT_EDITABLE_FORM_AMOUNT = 'InvoicePaymentEditAmount';
const P_AUTH_CAPTURE = 'AuthCapture';
const P_CC_MODIFIED = 'CcModified';
const P_PAYMENT_ITEM_ID = 'PaymentItemId';
const P_PAYMENT_TYPE = 'PaymentType';
const P_PAYMENT_URL = 'PaymentUrl';
const P_USER_ID = 'UserId';
const P_EDITOR_USER_ID = 'EditorUserId';
const P_OPAYO_TOKEN_ID = 'OpayoTokenId';
const P_VPSTX_ID = 'VPSTxId';
const P_ACS_URL = 'ACSURL';
const P_THREE_D_SECURE_CALLBACK_PARAMS = 'ThreeDSecureCallbackParams';
const P_SESSION_ID = 'SESSION_ID';
const P_OPAYO_AUTH_TRANSACTION_TYPE = 'OpayoAuthTransactionType';
const P_CARRIER_METHOD = 'CarrierMethod';
const P_CREDIT_CARD_ID = 'CreditCardId';
const P_TAX_SCHEMA_ID = 'TaxSchemaId';
const P_NOTE = 'Note';
const P_SKIP_AUTO_HANDLING = 'SkipAutoHandling';
const P_CREDIT_CARD_INFO_HASH = 'CreditCardInfoHash';
const PT_CHARGE_RESPONSIVE_INVOICE_VIEW = 'PayInvoice';
const PT_CHARGE_ADMIN_INVOICE_LIST = 'InvoiceListCharge';
const PT_CHARGE_ADMIN_INVOICE_EDIT = 'InvoiceDetailCharge';
const PT_CHARGE_ADMIN_INVOICE_PAYMENT_EDIT_ON_FILE = 'ChargeAdminInvoicePaymentEditOnFile';
const PT_CHARGE_ADMIN_INVOICE_PAYMENT_EDIT_ON_INPUT = 'ChargeAdminInvoicePaymentEditOnInput';
const PT_CHARGE_SETTLEMENT = 'SettlementCharge';
const PT_AUTH_AUCTION_REGISTRATION = 'AuthAuctionRegistration';
const PT_AUTH_ACCOUNT_REGISTRATION = 'AuthAccountRegistration';
const PT_CREATE_TOKEN = 'CreateToken';
const STATUS_DEFERRED = 'DEFERRED';
const STATUS_REPEAT_DEFERRED = 'REPEAT_DEFERRED';
const STATUS_AUTHENTICATED = 'AUTHENTICATED';
const STATUS_REGISTERED = 'REGISTERED';
const STATUS_FAIL = 'FAIL';
const STATUS_INVALID = 'INVALID';
const STATUS_STARTED = 'STARTED';
const STATUS_OK = 'OK';
const STATUS_UNKNOWN = 'UNKNOWN';
const STATUS_PAYMENT = 'PAYMENT';
const STATUS_REFUNDED = 'REFUNDED';
const STATUS_VOIDED = 'VOIDED';
const STATUS_CANCELED = 'CANCELLED';
const STATUS_3D_SECURE = '3DSECURE';
const STATUS_PAYPAL_REDIRECT = 'PPREDIRECT';
const STATUS_PAYPAL_OK = 'PAYPALOK';
const STATUS_NOTAUTHED = 'NOTAUTHED';
const STATUS_MALFORMED = 'MALFORMED';
const STATUS_ERROR = 'ERROR';
const STATUS_ABORTED = 'ABORTED';
const STATUS_3D_AUTH = '3DAUTH';
const STATUS_ATTEMPTONLY = 'ATTEMPTONLY';
const STATUS_CANT_AUTH = 'CANTAUTH';
const AVS_CV2_DEFAULT = 0;
const AVS_CV2_FORCE = 1;
const AVS_CV2_DISABLE = 2;
const AVS_CV2_FORCE_WITHOUT_RULES = 3;
const SECURE_3D_DEFAULT = 0;
const SECURE_3D_FORCE = 1;
const SECURE_3D_DISABLE = 2;
const SECURE_3D_WITHOUT_RULES = 3;
const MODE_LIVE = 'live';
const MODE_TEST = 'test';
const ENDPOINT_DIRECT = 'direct';
const ENDPOINT_DIRECT_3D = 'direct3d';
const ENDPOINT_REPEAT = 'repeat';
const ENDPOINT_ABORT = 'abort';
const ENDPOINT_RELEASE = 'release';
const ENDPOINT_REFUND = 'refund';
const ENDPOINT_VOID = 'void';
const ENDPOINT_AUTHORISE = 'authorise';
const ENDPOINT_CANCEL = 'cancel';
const ENDPOINT_REGISTER_SERVER = 'register-server';
const ENDPOINT_REGISTER_DIRECT = 'register-direct';
const ENDPOINT_REMOVE = 'remove';
const THREE_D_SECURE_STATUS_OK = 'OK';
const THREE_D_SECURE_STATUS_NOT_CHECKED = 'NOTCHECKED';
const THREE_D_SECURE_STATUS_NOT_AUTHED = 'NOTAUTHED';
const THREE_D_SECURE_STATUS_INCOMPLETE = 'INCOMPLETE';
const THREE_D_SECURE_STATUS_ERROR = 'ERROR';
const THREE_D_SECURE_STATUS_ATTEMPT_ONLY = 'ATTEMPTONLY';
const THREE_D_SECURE_STATUS_NO_AUTH = 'NOAUTH';
const THREE_D_SECURE_STATUS_CANT_AUTH = 'CANTAUTH';
const THREE_D_SECURE_STATUS_NO_MALFOMED = 'MALFORMED';
const THREE_D_SECURE_STATUS_NO_INVALID = 'INVALID';
const TX_TYPE_DEFERRED = 'DEFERRED';
const TX_TYPE_AUTHENTICATE = 'AUTHENTICATE';
const TX_TYPE_PAYMENT = 'PAYMENT';
const OPAYO_AUTH_NONE = 0;
const OPAYO_AUTH_DEFERRED = 1;
const OPAYO_AUTH_AUTHENTICATE = 2;
const OPAYO_AUTH_AUTHENTICATE_AUTHORISE = 3;
const OPAYO_THREE_D_HAS_SUCCESS = 'OpayoThreeDHasSuccess';
const OPAYO_THREE_D_ERROR_REPORT_MESSAGE = 'OpayoThreeDErrorReportMessage';
const avsCv2Options = (/* unused pure expression or super */ null && (['If AVS\/CV2 enabled then check them.', 'Force AVS\/CV2 checks even if not enabled for the account.', 'Force NO AVS\/CV2 checks even if enabled on account.', 'Force AVS\/CV2 checks even if not enabled for the account but DON\u0027T apply any rules.']));
const secure3dOptions = (/* unused pure expression or super */ null && (['If 3D-Secure checks are possible and rules allow, perform the checks and apply the authorisation rules.', 'Force 3D-Secure checks for this transaction if possible and apply rules for authorisation.', 'Do not perform 3D-Secure checks for this transaction and always authorise.', 'Force 3D-Secure checks for this transaction if possible but ALWAYS obtain an auth code, irrespective of rule base.']));
const sendEmailOptions = (/* unused pure expression or super */ null && (['Do not send either customer or vendor e-mails', 'Send customer and vendor e-mails if address(es) are provided', 'Send Vendor Email but not Customer Email. If you do not supply this field, 1 is assumed and e-mails are sent if addresses are provided.']));
const opayoUrl = {
  'test': {
    'direct': 'https:\/\/sandbox.opayo.eu.elavon.com\/gateway\/service\/vspdirect-register.vsp',
    'direct3d': 'https:\/\/sandbox.opayo.eu.elavon.com\/gateway\/service\/direct3dcallback.vsp',
    'authorise': 'https:\/\/sandbox.opayo.eu.elavon.com\/gateway\/service\/authorise.vsp',
    'cancel': 'https:\/\/sandbox.opayo.eu.elavon.com\/gateway\/service\/cancel.vsp',
    'remove': 'https:\/\/sandbox.opayo.eu.elavon.com\/gateway\/service\/removetoken.vsp'
  },
  'live': {
    'direct': 'https:\/\/live.opayo.eu.elavon.com\/gateway\/service\/vspdirect-register.vsp',
    'direct3d': 'https:\/\/live.opayo.eu.elavon.com\/gateway\/service\/direct3dcallback.vsp',
    'authorise': 'https:\/\/live.opayo.eu.elavon.com\/gateway\/service\/authorise.vsp',
    'cancel': 'https:\/\/live.opayo.eu.elavon.com\/gateway\/service\/cancel.vsp',
    'remove': 'https:\/\/live.opayo.eu.elavon.com\/gateway\/service\/removetoken.vsp'
  }
};
const authoriseTransactionTypes = {
  '1': 'Deferred',
  '2': 'Authenticate',
  '3': 'Authenticate \u0026 Authorise'
};
;// CONCATENATED MODULE: ./assets/js/src/Constants/BillingSmartPay.ts
/**
 * Please, do NOT change file content. The content was generated automatically by bin/generate/php_to_js_constants.php
 */

const MM_AUTOMATIC = 1;
const MM_MANUAL = 2;
const merchantModeNames = {
  '1': 'Automatic',
  '2': 'Manual'
};
;// CONCATENATED MODULE: ./assets/js/src/Constants/BuyersPremium.ts
/**
 * Please, do NOT change file content. The content was generated automatically by bin/generate/php_to_js_constants.php
 */

const MODE_GREATER = '\u003E';
const MODE_SUM = '+';
const MODE_NAME_GREATER = 'greater';
const MODE_NAME_SUM = 'sum';
const RANGE_CALC_SLIDING = 'sliding';
const RANGE_CALC_CUMULATIVE_TIERED = 'tiered';
const CLEAR_VALUE_MARKER = '~~CLEAR~~';
const DEFAULT_VALUE_MARKER = '~~DEFAULT~~';
const RANGES_DELIMITER = '|';
const AMOUNT_DELIMITER = ':';
const SET_DELIMITER = '-';
const BPRULE_DEFAULT = 'default';
const BPRULE_INDIVIDUAL = 'individual';
const rangeModes = (/* unused pure expression or super */ null && (['\u003E', '+']));
const rangeModeNames = {
  '\u003E': 'greater',
  '+': 'sum'
};
const rangeModeDescriptions = {
  '\u003E': '\u003E (Greater of fixed and percentage)',
  '+': '+ (Sum of fixed and percentage)'
};
const rangeCalculations = (/* unused pure expression or super */ null && (['sliding', 'tiered']));
const rangeCalculationNames = {
  'sliding': 'Sliding',
  'tiered': 'Cumulative Tiered'
};
;// CONCATENATED MODULE: ./assets/js/src/Constants/CarrierService.ts
/**
 * Please, do NOT change file content. The content was generated automatically by bin/generate/php_to_js_constants.php
 */

const M_NONE = 'N';
const M_PICKUP = 'PU';
const CARRIER_METHODS = (/* unused pure expression or super */ null && (['N', 'PU']));
const CARRIER_METHOD_NAMES = {
  'N': 'None',
  'PU': 'Pickup'
};
const COMP_DHL = 'DHL';
const COMP_FEDEX = 'FEDEX';
const COMP_UPS = 'UPS';
const COMP_USPS = 'USPS';
const DHL_WORLDWIDE_PRIORITY_EXPRESS = 'DHLWPE';
const DHL_9_AM = 'DHL9AM';
const DHL_10_AM = 'DHL10AM';
const DHL_12_PM = 'DHL12PM';
const FEDEX_2_DAY = 'FDX2D';
const FEDEX_EXPRESS_SAVER = 'FDXES';
const FEDEX_FIRST_OVERNIGHT = 'FDXFO';
const FEDEX_PRIORITY_OVERNIGHT = 'FDXPO';
const FEDEX_PRIORITY_OVERNIGHT_SATURDAY_DELIVERY = 'FDXPOS';
const FEDEX_STANDARD_OVERNIGHT = 'FDXSO';
const FEDEX_GROUND = 'FDXGND';
const FEDEX_HOME_DELIVERY = 'FDXHD';
const UPS_NEXT_DAY_AIR = 'UPSNDA';
const UPS_NEXT_DAY_AIR_EARLY_AM = 'UPSNDE';
const UPS_NEXT_DAY_AIR_SATURDAY_DELIVERY = 'UPSNDAS';
const UPS_NEXT_DAY_AIR_SAVER = 'UPSNDS';
const UPS_2_DAY_AIR_AM = 'UPS2DE';
const UPS_2ND_DAY_AIR = 'UPS2ND';
const UPS_3_DAY_SELECT = 'UPS3DS';
const UPS_GROUND = 'UPSGND';
const UPS_STANDARD = 'UPSCAN';
const UPS_WORLDWIDE_EXPRESS = 'UPSWEX';
const UPS_WORLDWIDE_SAVER = 'UPSWSV';
const UPS_WORLDWIDE_EXPEDITED = 'UPSWEP';
const USPS_FIRST_CLASS_MAIL = 'USPFC';
const USPS_EXPRESS_MAIL = 'USPEXP';
const USPS_BOUND_PRINTED = 'USPBPM';
const USPS_LIBRARY = 'USPLIB';
const USPS_MEDIA_MAIL = 'USPMM';
const USPS_PRIORITY_MAIL = 'USPPM';
const USPS_STANDARD_POST = 'USPPP';
const USPS_FIRST_CLASS_INTERNATIONAL = 'USPFCI';
const USPS_PRIORITY_MAIL_INTERNATIONAL = 'USPPMI';
const USPS_EXPRESS_MAIL_INTERNATIONAL = 'USPEMI';
const USPS_GLOBAL_EXPRESS_GUARANTEED = 'USPGXG';
const USPS_AIRMAIL_LETTER_POST = 'USPALP';
const USPS_AIRMAIL_PARCEL_POST = 'USPAPP';
const USPS_ECONOMY_LETTER_POST = 'USPELP';
const USPS_ECONOMY_PARCEL_POST = 'USPEPP';
const USPS_GLOBAL_EXPRESS_MAIL = 'USPGE';
const USPS_GLOBAL_PRIORITY_MAIL = 'USPGPM';
const CARRIER_SERVICE_NAMES = {
  'DHL': {
    'DHLWPE': 'Worldwide Priority Express',
    'DHL9AM': 'Express 9 A.M.',
    'DHL10AM': 'Express 10:30 A.M.',
    'DHL12PM': 'Express 12 P.M.'
  },
  'FEDEX': {
    'FDX2D': '2 Day',
    'FDXES': 'Express Saver',
    'FDXFO': 'First Overnight',
    'FDXPO': 'Priority Overnight',
    'FDXPOS': 'Priority Overnight Saturday Delivery',
    'FDXSO': 'Standard Overnight',
    'FDXGND': 'Ground',
    'FDXHD': 'Home Delivery'
  },
  'UPS': {
    'UPSNDA': 'Next Day Air',
    'UPSNDE': 'Next Day Air Early AM',
    'UPSNDAS': 'Next Day Air Saturday Delivery',
    'UPSNDS': 'Next Day Air Saver',
    'UPS2DE': '2 Day Air AM',
    'UPS2ND': '2nd Day Air',
    'UPS3DS': '3 Day Select',
    'UPSGND': 'Ground',
    'UPSCAN': 'UPS Standard',
    'UPSWEX': 'Worldwide Express',
    'UPSWSV': 'Worldwide Saver',
    'UPSWEP': 'Worldwide Expedited'
  },
  'USPS': {
    'USPFC': 'First-Class Mail',
    'USPEXP': 'Express Mail',
    'USPBPM': 'Bound\/Printed-- Inactive',
    'USPLIB': 'Library',
    'USPMM': 'Media Mail',
    'USPPM': 'Priority Mail',
    'USPPP': 'Standard Post',
    'USPFCI': 'First Class International',
    'USPPMI': 'Priority Mail International',
    'USPEMI': 'Express Mail International',
    'USPGXG': 'Global Express Guaranteed',
    'USPALP': 'Airmail Letter Post- Deprecated',
    'USPAPP': 'Airmail Parcel Post- Deprecated',
    'USPELP': 'Economy Letter Post- Deprecated',
    'USPEPP': 'Economy Parcel Post- Deprecated',
    'USPGE': 'Global Express Mail- Deprecated',
    'USPGPM': 'Global Priority Mail- Deprecated'
  }
};
;// CONCATENATED MODULE: ./assets/js/src/Constants/ConsignorCommissionFee.ts
/**
 * Please, do NOT change file content. The content was generated automatically by bin/generate/php_to_js_constants.php
 */

const LEVEL_ACCOUNT = 1;
const LEVEL_USER = 2;
const LEVEL_AUCTION = 3;
const LEVEL_LOT_ITEM = 4;
const LEVEL_AUCTION_LOT = 5;
const CALCULATION_METHOD_SLIDING = 1;
const CALCULATION_METHOD_TIERED = 2;
const CALCULATION_METHODS = (/* unused pure expression or super */ null && ([1, 2]));
const CALCULATION_METHOD_SLIDING_NAME = 'sliding';
const CALCULATION_METHOD_TIERED_NAME = 'tiered';
const CALCULATION_METHOD_NAMES = {
  '1': 'sliding',
  '2': 'tiered'
};
const FEE_REFERENCE_ZERO = 'zero';
const FEE_REFERENCE_HAMMER_PRICE = 'hammer_price';
const FEE_REFERENCE_START_BID = 'starting_bid';
const FEE_REFERENCE_RESERVE_PRICE = 'reserve_price';
const FEE_REFERENCE_MAX_BID = 'max_bid';
const FEE_REFERENCE_CURRENT_BID = 'current_bid';
const FEE_REFERENCE_LOW_ESTIMATE = 'low_estimate';
const FEE_REFERENCE_HIGH_ESTIMATE = 'high_estimate';
const FEE_REFERENCE_COST = 'cost';
const FEE_REFERENCE_REPLACEMENT_PRICE = 'replacement_price';
const FEE_REFERENCE_CUSTOM_FIELD_PREFIX = 'custom_field:';
const FEE_REFERENCES = (/* unused pure expression or super */ null && (['zero', 'hammer_price', 'starting_bid', 'reserve_price', 'max_bid', 'current_bid', 'low_estimate', 'high_estimate', 'cost', 'replacement_price']));
const RANGE_MODE_SUM = 1;
const RANGE_MODE_GREATER = 2;
const RANGE_MODES = (/* unused pure expression or super */ null && ([1, 2]));
const RANGE_MODE_SUM_NAME = '+';
const RANGE_MODE_GREATER_NAME = '\u003E';
const RANGE_MODE_NAMES = {
  '1': '+',
  '2': '\u003E'
};
const RANGE_MODE_SOAP_SUM_NAME = 'sum';
const RANGE_MODE_SOAP_GREATER_NAME = 'greater';
const RANGE_MODE_SOAP_NAMES = {
  '1': 'sum',
  '2': 'greater'
};
const OPTION_CUSTOM = 'custom';
const OPTION_DEFAULT = '';
;// CONCATENATED MODULE: ./assets/js/src/Constants/Country.ts
/**
 * Please, do NOT change file content. The content was generated automatically by bin/generate/php_to_js_constants.php
 */

const C_USA = 'US';
const C_CANADA = 'CA';
const C_MEXICO = 'MX';
const C_GREAT_BRITAIN = 'GB';
const C_AFGHANISTAN = 'AF';
const C_ALBANIA = 'AL';
const C_ALGERIA = 'DZ';
const C_AMERICAN_SAMOA = 'AS';
const C_ANDORRA = 'AD';
const C_ANGOLA = 'AO';
const C_ANGUILLA = 'AI';
const C_ANTARCTICA = 'AQ';
const C_ANTIGUA_AND_BARBUDA = 'AG';
const C_ARGENTINA = 'AR';
const C_ARMENIA = 'AM';
const C_ARUBA = 'AW';
const C_AUSTRALIA = 'AU';
const C_AUSTRIA = 'AT';
const C_AZERBAIJAN = 'AZ';
const C_BAHAMAS = 'BS';
const C_BAHRAIN = 'BH';
const C_BANGLADESH = 'BD';
const C_BARBADOS = 'BB';
const C_BELARUS = 'BY';
const C_BELGIUM = 'BE';
const C_BELIZE = 'BZ';
const C_BENIN = 'BJ';
const C_BERMUDA = 'BM';
const C_BHUTAN = 'BT';
const C_BOLIVIA = 'BO';
const C_BOSNIA_HERZEGOWINA = 'BA';
const C_BOTSWANA = 'BW';
const C_BOUVET_ISLAND = 'BV';
const C_BRAZIL = 'BR';
const C_BRITISH_INDIAN_OCEAN_TERRITORY = 'IO';
const C_BRUNEI_DARUSSALAM = 'BN';
const C_BULGARIA = 'BG';
const C_BURKINA_FASO = 'BF';
const C_BURUNDI = 'BI';
const C_CAMBODIA = 'KH';
const C_CAMEROON = 'CM';
const C_CAPE_VERDE = 'CV';
const C_CAYMAN_ISLANDS = 'KY';
const C_CENTRAL_AFRICAN_REPUBLIC = 'CF';
const C_CHAD = 'TD';
const C_CHILE = 'CL';
const C_CHINA = 'CN';
const C_CHRISTMAS_ISLAND_AUSTRALIA = 'CX';
const C_COCOS_ISLAND = 'CC';
const C_COLOMBIA = 'CO';
const C_COMOROS = 'KM';
const C_DEMOCRATIC_REPUBLIC_OF_THE_CONGO = 'CG';
const C_COOK_ISLANDS = 'CK';
const C_COSTA_RICA = 'CR';
const C_COTE_DIVOIRE = 'CI';
const C_CROATIA = 'HR';
const C_CUBA = 'CU';
const C_CYPRUS = 'CY';
const C_CZECH_REPUBLIC = 'CZ';
const C_DENMARK = 'DK';
const C_DJIBOUTI = 'DJ';
const C_DOMINICA = 'DM';
const C_DOMINICAN_REPUBLIC = 'DO';
const C_EAST_TIMOR = 'TP';
const C_ECUADOR = 'EC';
const C_EGYPT = 'EG';
const C_EL_SALVADOR = 'SV';
const C_EQUATORIAL_GUINEA = 'GQ';
const C_ERITREA = 'ER';
const C_ESTONIA = 'EE';
const C_ETHIOPIA = 'ET';
const C_FALKLAND_ISLANDS = 'FK';
const C_FAROE_ISLANDS = 'FO';
const C_FIJI = 'FJ';
const C_FINLAND = 'FI';
const C_FRANCE = 'FR';
const C_FRENCH_GUIANA = 'GF';
const C_FRENCH_POLYNESIA = 'PF';
const C_FRENCH_TERRITORY_OF_THE_AFARS_AND_ISSAS = 'TF';
const C_GABON = 'GA';
const C_GAMBIA = 'GM';
const C_GEORGIA = 'GE';
const C_GERMANY = 'DE';
const C_GHANA = 'GH';
const C_GIBRALTAR = 'GI';
const C_GREECE = 'GR';
const C_GREENLAND = 'GL';
const C_GRENADA = 'GD';
const C_GUADELOUPE = 'GP';
const C_GUAM = 'GU';
const C_GUATEMALA = 'GT';
const C_GUERNSEY = 'GG';
const C_GUINEA = 'GN';
const C_GUINEA_BISSAU = 'GW';
const C_GUYANA = 'GY';
const C_HAITI = 'HT';
const C_HEARD_AND_MC_DONALD_ISLANDS = 'HM';
const C_HONDURAS = 'HN';
const C_HONG_KONG = 'HK';
const C_HUNGARY = 'HU';
const C_ICELAND = 'IS';
const C_INDIA = 'IN';
const C_INDONESIA = 'ID';
const C_IRAN = 'IR';
const C_IRAQ = 'IQ';
const C_IRELAND = 'IE';
const C_ISRAEL = 'IL';
const C_ISLE_OF_MAN = 'IM';
const C_ITALY = 'IT';
const C_JAMAICA = 'JM';
const C_JAPAN = 'JP';
const C_JERSEY = 'JE';
const C_JORDAN = 'JO';
const C_KAZAKHSTAN = 'KZ';
const C_KENYA = 'KE';
const C_KIRIBATI = 'KI';
const C_KOREA_NORTH = 'KP';
const C_KOREA_SOUTH = 'KR';
const C_KOSOVO = 'XK';
const C_KUWAIT = 'KW';
const C_KYRGYZSTAN = 'KG';
const C_LAO_PEOPLES = 'LA';
const C_LATVIA = 'LV';
const C_LEBANON = 'LB';
const C_LESOTHO = 'LS';
const C_LIBERIA = 'LR';
const C_LIBYA = 'LY';
const C_LIECHTENSTEIN = 'LI';
const C_LITHUANIA = 'LT';
const C_LUXEMBOURG = 'LU';
const C_MACAU = 'MO';
const C_MACEDONIA = 'MK';
const C_MADAGASCAR = 'MG';
const C_MALAWI = 'MW';
const C_MALAYSIA = 'MY';
const C_MALDIVES = 'MV';
const C_MALI = 'ML';
const C_MALTA = 'MT';
const C_MARSHALL_ISLANDS = 'MH';
const C_MARTINIQUE = 'MQ';
const C_MAURITANIA = 'MR';
const C_MAURITIUS = 'MU';
const C_MAYOTTE = 'YT';
const C_MICRONESIA = 'FM';
const C_MOLDOVA = 'MD';
const C_MONACO = 'MC';
const C_MONGOLIA = 'MN';
const C_MONTSERRAT = 'MS';
const C_MOROCCO = 'MA';
const C_MOZAMBIQUE = 'MZ';
const C_MYANMAR = 'MM';
const C_NAMIBIA = 'NA';
const C_NAURU = 'NR';
const C_NEPAL = 'NP';
const C_NETHERLANDS = 'NL';
const C_NETHERLANDS_ANTILLES = 'AN';
const C_NEW_CALEDONIA = 'NC';
const C_NEW_ZEALAND = 'NZ';
const C_NICARAGUA = 'NI';
const C_NIGER = 'NE';
const C_NIGERIA = 'NG';
const C_NIUE = 'NU';
const C_NORFOLK_ISLAND = 'NF';
const C_NORTHERN_MARIANA_ISLANDS = 'MP';
const C_NORWAY = 'NO';
const C_OMAN = 'OM';
const C_PAKISTAN = 'PK';
const C_PALAU = 'PW';
const C_PANAMA = 'PA';
const C_PAPUA_NEW_GUINEA = 'PG';
const C_PARAGUAY = 'PY';
const C_PERU = 'PE';
const C_PHILIPPINES = 'PH';
const C_PITCAIRN_ISLAND = 'PN';
const C_POLAND = 'PL';
const C_PORTUGAL = 'PT';
const C_PUERTO_RICO = 'PR';
const C_QATAR = 'QA';
const C_REUNION = 'RE';
const C_ROMANIA = 'RO';
const C_RUSSIA = 'RU';
const C_RWANDA = 'RW';
const C_SAINT_CHRISTOPHER = 'KN';
const C_SAINT_LUCIA = 'LC';
const C_SAINT_VINCENT = 'VC';
const C_SAMOA = 'WS';
const C_SAN_MARINO = 'SM';
const C_SAO_TOME_AND_PRINCIPE = 'ST';
const C_SAUDI_ARABIA = 'SA';
const C_SENEGAL = 'SN';
const C_SEYCHELLES = 'SC';
const C_SIERRA_LEONE = 'SL';
const C_SINGAPORE = 'SG';
const C_SLOVAK_REPUBLIC = 'SK';
const C_SLOVENIA = 'SI';
const C_SOLOMON_ISLANDS = 'SB';
const C_SOMALIA = 'SO';
const C_SOUTH_AFRICA = 'ZA';
const C_SOUTH_GEORGIA = 'GS';
const C_SPAIN = 'ES';
const C_SRI_LANKA = 'LK';
const C_SAINT_HELENA = 'SH';
const C_SAINT_PIERRE_AND_MIQUELON = 'PM';
const C_SERBIA = 'RS';
const C_SUDAN = 'SD';
const C_SURINAME = 'SR';
const C_SVALBARD_AND_JAN_MAYEN_ISLANDS = 'SJ';
const C_SWAZILAND = 'SZ';
const C_SWEDEN = 'SE';
const C_SWITZERLAND = 'CH';
const C_SYRIAN_ARAB_REPUBLIC = 'SY';
const C_TAIWAN = 'TW';
const C_TAJIKISTAN = 'TJ';
const C_TANZANIA = 'TZ';
const C_THAILAND = 'TH';
const C_TOGO = 'TG';
const C_TOKELAU_GROUP = 'TK';
const C_TONGA = 'TO';
const C_TRINIDAD_AND_TOBAGO = 'TT';
const C_TUNISIA = 'TN';
const C_TURKEY = 'TR';
const C_TURKMENISTAN = 'TM';
const C_TURKS_AND_CAICOS_ISLANDS = 'TC';
const C_TUVALU = 'TV';
const C_UGANDA = 'UG';
const C_UKRAINE = 'UA';
const C_UNITED_ARAB_EMIRATES = 'AE';
const C_UNITED_STATES_MINOR_OUTLYING_ISLANDS = 'UM';
const C_URUGUAY = 'UY';
const C_UZBEKISTAN = 'UZ';
const C_VANUATU = 'VU';
const C_VATICAN_CITY = 'VA';
const C_VENEZUELA = 'VE';
const C_VIETNAM = 'VN';
const C_VIRGIN_ISLANDS_BRITISH = 'VG';
const C_VIRGIN_ISLANDS_US = 'VI';
const C_WALLIS_AND_FUTUNA_ISLANDS = 'WF';
const C_WESTERN_SAHARA = 'EH';
const C_YEMEN = 'YE';
const C_YUGOSLAVIA = 'YU';
const C_ZAIRE = 'ZR';
const C_ZAMBIA = 'ZM';
const C_ZIMBABWE = 'ZW';
const names = {
  'US': 'United States',
  'CA': 'Canada',
  'GB': 'United Kingdom (Great Britain)',
  'AF': 'Afghanistan',
  'AL': 'Albania',
  'DZ': 'Algeria',
  'AS': 'American Samoa',
  'AD': 'Andorra',
  'AO': 'Angola',
  'AI': 'Anguilla',
  'AQ': 'Antarctica',
  'AG': 'Antigua and Barbuda',
  'AR': 'Argentina',
  'AM': 'Armenia',
  'AW': 'Aruba',
  'AU': 'Australia',
  'AT': 'Austria',
  'AZ': 'Azerbaijan',
  'BS': 'Bahamas',
  'BH': 'Bahrain',
  'BD': 'Bangladesh',
  'BB': 'Barbados',
  'BY': 'Belarus',
  'BE': 'Belgium',
  'BZ': 'Belize',
  'BJ': 'Benin',
  'BM': 'Bermuda',
  'BT': 'Bhutan',
  'BO': 'Bolivia',
  'BA': 'Bosnia-Herzegowina',
  'BW': 'Botswana',
  'BV': 'Bouvet Island',
  'BR': 'Brazil',
  'IO': 'British Indian Ocean Territory',
  'BN': 'Brunei Darussalam',
  'BG': 'Bulgaria',
  'BF': 'Burkina Faso',
  'BI': 'Burundi',
  'KH': 'Cambodia',
  'CM': 'Cameroon',
  'CV': 'Cape Verde',
  'KY': 'Cayman Islands',
  'CF': 'Central African Republic',
  'TD': 'Chad',
  'CL': 'Chile',
  'CN': 'China',
  'CX': 'Christmas Island (Australia)',
  'CC': 'Cocos Island',
  'CO': 'Colombia',
  'KM': 'Comoros',
  'CG': 'Democratic Republic of the Congo',
  'CK': 'Cook Islands',
  'CR': 'Costa Rica',
  'CI': 'Cote D\u0027ivoire',
  'HR': 'Croatia',
  'CU': 'Cuba',
  'CY': 'Cyprus',
  'CZ': 'Czech Republic',
  'DK': 'Denmark',
  'DJ': 'Djibouti',
  'DM': 'Dominica',
  'DO': 'Dominican Republic',
  'TP': 'East Timor',
  'EC': 'Ecuador',
  'EG': 'Egypt',
  'SV': 'El Salvador',
  'GQ': 'Equatorial Guinea',
  'ER': 'Eritrea',
  'EE': 'Estonia',
  'ET': 'Ethiopia',
  'FK': 'Falkland Islands',
  'FO': 'Faroe Islands',
  'FJ': 'Fiji',
  'FI': 'Finland',
  'FR': 'France',
  'GF': 'French Guiana',
  'PF': 'French Polynesia',
  'TF': 'French Territory of the Afars and Issas (Djibouti)',
  'GA': 'Gabon',
  'GM': 'Gambia',
  'GE': 'Georgia, Republic of',
  'DE': 'Germany',
  'GH': 'Ghana',
  'GI': 'Gibraltar',
  'GR': 'Greece',
  'GL': 'Greenland',
  'GD': 'Grenada',
  'GP': 'Guadeloupe',
  'GU': 'Guam',
  'GT': 'Guatemala',
  'GG': 'Guernsey',
  'GN': 'Guinea',
  'GW': 'Guinea-bissau',
  'GY': 'Guyana',
  'HT': 'Haiti',
  'HM': 'Heard and Mc Donald Islands',
  'HN': 'Honduras',
  'HK': 'Hong Kong',
  'HU': 'Hungary',
  'IS': 'Iceland',
  'IN': 'India',
  'ID': 'Indonesia',
  'IR': 'Iran',
  'IQ': 'Iraq',
  'IE': 'Ireland',
  'IL': 'Israel',
  'IM': 'Isle of Man',
  'IT': 'Italy',
  'JM': 'Jamaica',
  'JP': 'Japan',
  'JE': 'Jersey',
  'JO': 'Jordan',
  'KZ': 'Kazakhstan',
  'KE': 'Kenya',
  'KI': 'Kiribati',
  'KP': 'Korea, Democratic Peoples Republic of (North Korea)',
  'KR': 'Korea, Republic of (South Korea)',
  'XK': 'Kosovo',
  'KW': 'Kuwait',
  'KG': 'Kyrgyzstan',
  'LA': 'Lao People\u0027s Democratic Republic',
  'LV': 'Latvia',
  'LB': 'Lebanon',
  'LS': 'Lesotho',
  'LR': 'Liberia',
  'LY': 'Libya',
  'LI': 'Liechtenstein',
  'LT': 'Lithuania',
  'LU': 'Luxembourg',
  'MO': 'Macau',
  'MK': 'Macedonia, Republic of',
  'MG': 'Madagascar',
  'MW': 'Malawi',
  'MY': 'Malaysia',
  'MV': 'Maldives',
  'ML': 'Mali',
  'MT': 'Malta',
  'MH': 'Marshall Islands',
  'MQ': 'Martinique',
  'MR': 'Mauritania',
  'MU': 'Mauritius',
  'YT': 'Mayotte',
  'MX': 'Mexico',
  'FM': 'Micronesia, Federated States Of',
  'MD': 'Moldova',
  'MC': 'Monaco',
  'MN': 'Mongolia',
  'MS': 'Montserrat',
  'MA': 'Morocco',
  'MZ': 'Mozambique',
  'MM': 'Myanmar',
  'NA': 'Namibia',
  'NR': 'Nauru',
  'NP': 'Nepal',
  'NL': 'Netherlands',
  'AN': 'Netherlands Antilles',
  'NC': 'New Caledonia',
  'NZ': 'New Zealand',
  'NI': 'Nicaragua',
  'NE': 'Niger',
  'NG': 'Nigeria',
  'NU': 'Niue',
  'NF': 'Norfolk Island',
  'MP': 'Northern Mariana Islands',
  'NO': 'Norway',
  'OM': 'Oman',
  'PK': 'Pakistan',
  'PW': 'Palau',
  'PA': 'Panama',
  'PG': 'Papua New Guinea',
  'PY': 'Paraguay',
  'PE': 'Peru',
  'PH': 'Philippines',
  'PN': 'Pitcairn Island',
  'PL': 'Poland',
  'PT': 'Portugal',
  'PR': 'Puerto Rico',
  'QA': 'Qatar',
  'RE': 'Reunion',
  'RO': 'Romania',
  'RU': 'Russia',
  'RW': 'Rwanda',
  'KN': 'Saint Christopher (St. Kitts) and Nevis',
  'LC': 'Saint Lucia',
  'VC': 'Saint Vincent and The Grenadines',
  'WS': 'Samoa',
  'SM': 'San Marino',
  'ST': 'Sao Tome and Principe',
  'SA': 'Saudi Arabia',
  'SN': 'Senegal',
  'SC': 'Seychelles',
  'SL': 'Sierra Leone',
  'SG': 'Singapore',
  'SK': 'Slovak Republic',
  'SI': 'Slovenia',
  'SB': 'Solomon Islands',
  'SO': 'Somalia',
  'ZA': 'South Africa',
  'GS': 'South Georgia',
  'ES': 'Spain',
  'LK': 'Sri Lanka',
  'SH': 'Saint Helena',
  'PM': 'Saint Pierre and Miquelon',
  'RS': 'Serbia',
  'SD': 'Sudan',
  'SR': 'Suriname',
  'SJ': 'Svalbard and Jan Mayen Islands',
  'SZ': 'Swaziland',
  'SE': 'Sweden',
  'CH': 'Switzerland',
  'SY': 'Syrian Arab Republic',
  'TW': 'Taiwan',
  'TJ': 'Tajikistan',
  'TZ': 'Tanzania',
  'TH': 'Thailand',
  'TG': 'Togo',
  'TK': 'Tokelau Group',
  'TO': 'Tonga',
  'TT': 'Trinidad and Tobago',
  'TN': 'Tunisia',
  'TR': 'Turkey',
  'TM': 'Turkmenistan',
  'TC': 'Turks and Caicos Islands',
  'TV': 'Tuvalu',
  'UG': 'Uganda',
  'UA': 'Ukraine',
  'AE': 'United Arab Emirates',
  'UM': 'United States Minor Outlying Islands',
  'UY': 'Uruguay',
  'UZ': 'Uzbekistan',
  'VU': 'Vanuatu',
  'VA': 'Vatican City',
  'VE': 'Venezuela',
  'VN': 'Vietnam',
  'VG': 'Virgin Islands (british)',
  'VI': 'Virgin Islands (u.s.)',
  'WF': 'Wallis and Futuna Islands',
  'EH': 'Western Sahara',
  'YE': 'Yemen',
  'YU': 'Yugoslavia',
  'ZR': 'Zaire (Congo Dem Rep)',
  'ZM': 'Zambia',
  'ZW': 'Zimbabwe'
};
;// CONCATENATED MODULE: ./assets/js/src/Constants/CreditCard.ts
/**
 * Please, do NOT change file content. The content was generated automatically by bin/generate/php_to_js_constants.php
 */

const T_NONE = 0;
const T_AMEX = 1;
const T_DISCOVER = 2;
const T_VISA = 3;
const T_MASTERCARD = 4;
const T_DINERS_CLUB = 5;
const T_JCB = 6;
const ccTypes = {
  '1': ['amex', 'american express'],
  '2': ['discover'],
  '3': ['visa'],
  '4': ['mastercard'],
  '5': ['diners club'],
  '6': ['jcb']
};
const epayCardTypes = (/* unused pure expression or super */ null && ([0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25]));
;// CONCATENATED MODULE: ./assets/js/src/Constants/CustomField.ts
/**
 * Please, do NOT change file content. The content was generated automatically by bin/generate/php_to_js_constants.php
 */

const TYPE_INTEGER = 1;
const TYPE_DECIMAL = 2;
const TYPE_TEXT = 3;
const TYPE_SELECT = 4;
const TYPE_DATE = 5;
const TYPE_FULLTEXT = 6;
const TYPE_FILE = 7;
const TYPE_POSTALCODE = 8;
const TYPE_LABEL = 9;
const TYPE_CHECKBOX = 10;
const TYPE_PASSWORD = 11;
const TYPE_RICHTEXT = 12;
const TYPE_YOUTUBELINK = 13;
const BARCODE_TYPE_CODE_39 = 1;
const BARCODE_TYPE_CODE_128 = 2;
const BARCODE_TYPE_EAN_13 = 3;
const BARCODE_TYPE_INT_25 = 4;
const BARCODE_TYPE_POST_NET = 5;
const BARCODE_TYPE_UPCA = 6;
const BARCODE_TYPE_DEFAULT = 1;
const CHECKBOX_ON_TEXT = 'Yes';
const CHECKBOX_OFF_TEXT = 'No';
const FILE_PARAMETERS_DEFAULT = 'pdf;3';
const FILE_PARAMETERS_IMAGES_ONLY_DEFAULT = 'gif|heic|heif|jfif|jpg|jpeg|png|webp;5;1000x1000';
const AUCTION_CUSTOM_FIELD_TRANSLATION_FILE = 'auctioncustomfields.csv';
const LOT_CUSTOM_FIELD_TRANSLATION_FILE = 'customfields.csv';
const USER_CUSTOM_FIELD_TRANSLATION_FILE = 'usercustomfields.csv';
const numericTypes = (/* unused pure expression or super */ null && ([1, 2, 5, 10]));
const CustomField_typeNames = {
  '1': 'Integer',
  '2': 'Decimal',
  '3': 'Input line',
  '4': 'Dropdown',
  '5': 'Date\/Time',
  '6': 'Text area',
  '12': 'Rich text',
  '10': 'Checkbox',
  '11': 'Password',
  '7': 'File',
  '8': 'ZIP\/Postal code',
  '9': 'Label',
  '13': 'Youtube url'
};
const encryptedTypes = (/* unused pure expression or super */ null && ([3, 6, 11]));
const defaultsPredefinedTypes = (/* unused pure expression or super */ null && ([1, 10, 3, 6, 12, 11, 7, 8]));
const barcodeTypeNames = {
  '1': 'code39',
  '2': 'code128',
  '3': 'ean13',
  '4': 'int25',
  '5': 'postnet',
  '6': 'upca'
};
const barcodeNumericTypes = (/* unused pure expression or super */ null && ([3, 4, 5, 6]));
const barcodeAlphanumericTypes = (/* unused pure expression or super */ null && ([1, 2]));
const barcodeLength = {
  '6': 12
};
const postalCodeRadiuses = (/* unused pure expression or super */ null && ([5, 10, 20, 50, 100, 250]));
const masterTranslationFiles = (/* unused pure expression or super */ null && (['auctioncustomfields.csv', 'customfields.csv', 'usercustomfields.csv']));
;// CONCATENATED MODULE: ./assets/js/src/Constants/Date.ts
/**
 * Please, do NOT change file content. The content was generated automatically by bin/generate/php_to_js_constants.php
 */

const ISO = 'Y-m-d H:i:s';
const ISO_TZ = 'Y-m-d H:i:s T';
const ISO_TZ_IDENTIFIER = 'Y-m-d H:i:s e';
const ISO_1ST_DAY_OF_MONTH = 'Y-m-01 H:i:s';
const ISO_N_DAY_OF_MONTH_TPL = 'Y-m-%s H:i:s';
const ISO_MS = 'Y-m-d H:i:s.u';
const ISO_DATE = 'Y-m-d';
const ISO_DATE_START = 'Y-m-d 00:00:00';
const ISO_DATE_END = 'Y-m-d 23:59:59';
const ISO_TIME = 'H:i:s';
const ISO_TIME_HOUR_MINUTE = 'H:i';
const ISO_TIME_START = '00:00:00';
const ISO_TIME_END = '23:59:59';
const US_DATE_TIME = 'm\/d\/Y h:i A';
const US_DATE = 'm\/d\/Y';
const US_COMPLETE = 'l, F jS Y h:i A';
const ADF_US = 1;
const ADF_AU = 2;
const MONTH_EMPTY_OPTION = 0;
const MONTH_JANUARY = 1;
const MONTH_FEBRUARY = 2;
const MONTH_MARCH = 3;
const MONTH_APRIL = 4;
const MONTH_MAY = 5;
const MONTH_JUNE = 6;
const MONTH_JULY = 7;
const MONTH_AUGUST = 8;
const MONTH_SEPTEMBER = 9;
const MONTH_OCTOBER = 10;
const MONTH_NOVEMBER = 11;
const MONTH_DECEMBER = 12;
const months = (/* unused pure expression or super */ null && ([1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12]));
const monthNames = {
  '1': 'January',
  '2': 'February',
  '3': 'March',
  '4': 'April',
  '5': 'May',
  '6': 'June',
  '7': 'July',
  '8': 'August',
  '9': 'September',
  '10': 'October',
  '11': 'November',
  '12': 'December'
};
const dateTimeFormats = {
  '1': 'MM\/DD\/YYYY h:mm zz',
  '2': 'DD\/MM\/YYYY hhhh:mm'
};
const hourNames = {
  '12': '12',
  '11': '11',
  '10': '10',
  '9': '09',
  '8': '08',
  '7': '07',
  '6': '06',
  '5': '05',
  '4': '04',
  '3': '03',
  '2': '02',
  '1': '01'
};
const minuteNames = (/* unused pure expression or super */ null && (['00', '01', '02', '03', '04', '05', '06', '07', '08', '09', '10', '11', '12', '13', '14', '15', '16', '17', '18', '19', '20', '21', '22', '23', '24', '25', '26', '27', '28', '29', '30', '31', '32', '33', '34', '35', '36', '37', '38', '39', '40', '41', '42', '43', '44', '45', '46', '47', '48', '49', '50', '51', '52', '53', '54', '55', '56', '57', '58', '59']));
const meridiemNames = {
  'am': 'AM',
  'pm': 'PM'
};
const staggerClosingIntervals = (/* unused pure expression or super */ null && ([1, 2, 3, 4, 5, 10, 15, 20, 25, 30, 35, 40, 45, 50, 55, 60]));
;// CONCATENATED MODULE: ./assets/js/src/Constants/Debug.ts
/**
 * Please, do NOT change file content. The content was generated automatically by bin/generate/php_to_js_constants.php
 */

const ALWAYS = 0;
const ERROR = 1;
const WARNING = 2;
const INFO = 3;
const DEBUG = 4;
const TRACE = 5;
const TRACE_FILE = 6;
const TRACE_QUERY = 7;
const levels = (/* unused pure expression or super */ null && ([0, 1, 2, 3, 4, 5, 6, 7]));
const levelNames = (/* unused pure expression or super */ null && (['Always', 'Error', 'Warning', 'Info', 'Debug', 'Trace', 'Trace file', 'Trace query']));
const levelCodes = {
  '1': 'ERROR',
  '2': 'WARNING',
  '3': 'INFO',
  '4': 'DEBUG',
  '5': 'TRACE',
  '6': 'TRACE-F',
  '7': 'TRACE-Q'
};
;// CONCATENATED MODULE: ./assets/js/src/Constants/EmailGroup.ts
/**
 * Please, do NOT change file content. The content was generated automatically by bin/generate/php_to_js_constants.php
 */

const G_REGISTRATION = 1;
const G_AUCTION_GENERAL = 2;
const G_LIVE_OR_HYBRID_AUCTION = 3;
const G_TIMED_ONLINE_AUCTION = 4;
const G_INVOICING = 5;
const G_SETTLEMENTS = 6;
const G_SYSTEM_GENERAL = 7;
const G_WATCHLIST_REMINDER = 8;
const TRANSLATION_KEYS = {
  '1': 'group.registration.name',
  '2': 'group.auction_general.name',
  '3': 'group.live_or_hybrid_auction.name',
  '4': 'group.timed_online_auction.name',
  '5': 'group.invoicing.name',
  '6': 'group.settlements.name',
  '7': 'group.system_general.name',
  '8': 'group.watchlist_reminder.name'
};
;// CONCATENATED MODULE: ./assets/js/src/Constants/EntitySync.ts
/**
 * Please, do NOT change file content. The content was generated automatically by bin/generate/php_to_js_constants.php
 */

const TYPE_ACCOUNT = 1;
const TYPE_AUCTION = 2;
const TYPE_AUCTION_LOT_ITEM = 3;
const TYPE_LOT_ITEM = 4;
const TYPE_USER = 5;
const TYPE_LOCATION = 6;
const TYPE_TO_DB_ALIAS_MAP = {
  '1': 'acc',
  '2': 'a',
  '3': 'ali',
  '4': 'li',
  '5': 'u',
  '6': 'loc'
};
;// CONCATENATED MODULE: ./assets/js/src/Constants/EwayCodes.ts
/**
 * Please, do NOT change file content. The content was generated automatically by bin/generate/php_to_js_constants.php
 */

const codes = {
  'A2000': 'Transaction Approved',
  'A2008': 'Honour With Identification',
  'A2010': 'Approved For Partial Amount',
  'A2011': 'Approved, VIP',
  'A2016': 'Approved, Update Track 3',
  'D4401': 'Refer to Issuer',
  'D4402': 'Refer to Issuer, special',
  'D4403': 'No Merchant',
  'D4404': 'Pick Up Card',
  'D4405': 'Do Not Honour',
  'D4406': 'Error',
  'D4407': 'Pick Up Card, Special',
  'D4409': 'Request In Progress',
  'D4412': 'Invalid Transaction',
  'D4413': 'Invalid Amount',
  'D4414': 'Invalid Card Number',
  'D4415': 'No Issuer',
  'D4417': '3D Secure Error',
  'D4419': 'Re-enter Last Transaction',
  'D4421': 'No Action Taken',
  'D4422': 'Suspected Malfunction',
  'D4423': 'Unacceptable Transaction Fee',
  'D4425': 'Unable to Locate Record On File',
  'D4430': 'Format Error',
  'D4431': 'Bank Not Supported By Switch',
  'D4433': 'Expired Card, Capture',
  'D4434': 'Suspected Fraud, Retain Card',
  'D4435': 'Card Acceptor, Contact Acquirer, Retain Card',
  'D4436': 'Restricted Card, Retain Card',
  'D4437': 'Contact Acquirer Security Department, Retain Card',
  'D4438': 'PIN Tries Exceeded, Capture',
  'D4439': 'No Credit Account',
  'D4440': 'Function Not Supported',
  'D4441': 'Lost Card',
  'D4442': 'No Universal Account',
  'D4443': 'Stolen Card',
  'D4444': 'No Investment Account',
  'D4450': 'Click-to-Pay (Visa Checkout) Transaction Error',
  'D4451': 'Insufficient Funds',
  'D4452': 'No Cheque Account',
  'D4453': 'No Savings Account',
  'D4454': 'Expired Card',
  'D4455': 'Incorrect PIN',
  'D4456': 'No Card Record',
  'D4457': 'Function Not Permitted to Cardholder',
  'D4458': 'Function Not Permitted to Terminal',
  'D4459': 'Suspected Fraud',
  'D4460': 'Acceptor Contact Acquirer',
  'D4461': 'Exceeds Withdrawal Limit',
  'D4462': 'Restricted Card',
  'D4463': 'Security Violation',
  'D4464': 'Original Amount Incorrect',
  'D4466': 'Acceptor Contact Acquirer, Security',
  'D4467': 'Capture Card',
  'D4475': 'PIN Tries Exceeded',
  'D4476': 'Invalidate Txn Reference',
  'D4481': 'Accumulated Transaction Counter (Amount) Exceeded',
  'D4482': 'CVV Validation Error',
  'D4483': 'Acquirer Is Not Accepting Transactions From You At This Time',
  'D4484': 'Acquirer Is Not Accepting This Transaction',
  'D4490': 'Cut off In Progress',
  'D4491': 'Card Issuer Unavailable',
  'D4492': 'Unable To Route Transaction',
  'D4493': 'Cannot Complete, Violation Of The Law',
  'D4494': 'Duplicate Transaction',
  'D4495': 'Amex Declined',
  'D4496': 'System Error',
  'D4497': 'MasterPass Error',
  'D4498': 'PayPal Create Transaction Error',
  'D4499': 'Invalid Transaction for Auth\/Void',
  'F7000': 'Undefined Fraud Error',
  'F7001*': 'Challenged Fraud',
  'F7002': 'Country Match Fraud',
  'F7003': 'High Risk Country Fraud',
  'F7004': 'Anonymous Proxy Fraud',
  'F7005': 'Transparent Proxy Fraud',
  'F7006': 'Free Email Fraud',
  'F7007': 'International Transaction Fraud',
  'F7008': 'Risk Score Fraud',
  'F7009*': 'Denied Fraud',
  'F7010': 'Denied by PayPal Fraud Rules',
  'F9001': 'Custom Fraud Rule',
  'F9010': 'High Risk Billing Country',
  'F9011': 'High Risk Credit Card Country',
  'F9012': 'High Risk Customer IP Address',
  'F9013': 'High Risk Email Address',
  'F9014': 'High Risk Shipping Country',
  'F9015': 'Multiple card numbers for single email address',
  'F9016': 'Multiple card numbers for single location',
  'F9017': 'Multiple email addresses for single card number',
  'F9018': 'Multiple email addresses for single location',
  'F9019': 'Multiple locations for single card number',
  'F9020': 'Multiple locations for single email address',
  'F9021': 'Suspicious Customer First Name',
  'F9022': 'Suspicious Customer Last Name',
  'F9023': 'Transaction Declined',
  'F9024': 'Multiple transactions for same address with known credit card',
  'F9025': 'Multiple transactions for same address with new credit card',
  'F9026': 'Multiple transactions for same email with new credit card',
  'F9027': 'Multiple transactions for same email with known credit card',
  'F9028': 'Multiple transactions for new credit card',
  'F9029': 'Multiple transactions for known credit card',
  'F9030': 'Multiple transactions for same email address',
  'F9031': 'Multiple transactions for same credit card',
  'F9032': 'Invalid Customer Last Name',
  'F9033': 'Invalid Billing Street',
  'F9034': 'Invalid Shipping Street',
  'F9037': 'Suspicious Customer Email Address',
  'F9049': 'Genuine Customer',
  'F9050': 'High Risk Email Address and amount',
  'F9059': 'No liability shift',
  'F9113': 'Card issuing country differs from IP address country',
  'S5000': 'System Error',
  'S5010': 'Unknown error returned by gateway',
  'S5011': 'PayPal Connection Error',
  'S5012': 'PayPal Settings Error',
  'S5014': 'Merchant setting Error',
  'S5016': 'Apple Pay processing error',
  'S5020': 'Transaction maximum time elapsed',
  'S5029': 'API Rate Limit Exceeded',
  'S5085': 'Started 3D Secure',
  'S5086': 'Routed 3D Secure',
  'S5087': 'Completed 3D Secure',
  'S5088': 'PayPal Transaction Created',
  'S5099': 'Incomplete (Access Code in progress\/incomplete)',
  'S5666': 'Transaction in unknown state',
  'V6000': 'Validation error',
  'V6001': 'Invalid CustomerIP',
  'V6002': 'Invalid DeviceID',
  'V6003': 'Invalid Request PartnerID',
  'V6004': 'Invalid Request Method',
  'V6010': 'Invalid TransactionType, account not certified for eCome only MOTO or Recurring available',
  'V6011': 'Invalid Payment TotalAmount',
  'V6012': 'Invalid Payment InvoiceDescription',
  'V6013': 'Invalid Payment InvoiceNumber',
  'V6014': 'Invalid Payment InvoiceReference',
  'V6015': 'Invalid Payment CurrencyCode',
  'V6016': 'Payment Required',
  'V6017': 'Payment CurrencyCode Required',
  'V6018': 'Unknown Payment CurrencyCode',
  'V6019': 'Cardholder identity authentication required',
  'V6020': 'Cardholder Input Required',
  'V6021': 'EWAY_CARDHOLDERNAME Required',
  'V6022': 'EWAY_CARDNUMBER Required',
  'V6023': 'EWAY_CARDCVN Required',
  'V6024': 'Cardholder Identity Authentication One Time Password Not Active Yet',
  'V6025': 'PIN Required',
  'V6033': 'Invalid Expiry Date',
  'V6034': 'Invalid Issue Number',
  'V6035': 'Invalid Valid From Date',
  'V6039': 'Invalid Network Token Status',
  'V6040': 'Invalid TokenCustomerID',
  'V6041': 'Customer Required',
  'V6042': 'Customer FirstName Required',
  'V6043': 'Customer LastName Required',
  'V6044': 'Customer CountryCode Required',
  'V6045': 'Customer Title Required',
  'V6046': 'TokenCustomerID Required',
  'V6047': 'RedirectURL Required',
  'V6048': 'CheckoutURL Required when CheckoutPayment specified',
  'V6049': 'Invalid Checkout URL',
  'V6051': 'Invalid Customer FirstName',
  'V6052': 'Invalid Customer LastName',
  'V6053': 'Invalid Customer CountryCode',
  'V6058': 'Invalid Customer Title',
  'V6059': 'Invalid RedirectURL',
  'V6060': 'Invalid TokenCustomerID',
  'V6061': 'Invalid Customer Reference',
  'V6062': 'Invalid Customer CompanyName',
  'V6063': 'Invalid Customer JobDescription',
  'V6064': 'Invalid Customer Street1',
  'V6065': 'Invalid Customer Street2',
  'V6066': 'Invalid Customer City',
  'V6067': 'Invalid Customer State',
  'V6068': 'Invalid Customer PostalCode',
  'V6069': 'Invalid Customer Email',
  'V6070': 'Invalid Customer Phone',
  'V6071': 'Invalid Customer Mobile',
  'V6072': 'Invalid Customer Comments',
  'V6073': 'Invalid Customer Fax',
  'V6074': 'Invalid Customer URL',
  'V6075': 'Invalid ShippingAddress FirstName',
  'V6076': 'Invalid ShippingAddress LastName',
  'V6077': 'Invalid ShippingAddress Street1',
  'V6078': 'Invalid ShippingAddress Street2',
  'V6079': 'Invalid ShippingAddress City',
  'V6080': 'Invalid ShippingAddress State',
  'V6081': 'Invalid ShippingAddress PostalCode',
  'V6082': 'Invalid ShippingAddress Email',
  'V6083': 'Invalid ShippingAddress Phone',
  'V6084': 'Invalid ShippingAddress Country',
  'V6085': 'Invalid ShippingAddress ShippingMethod',
  'V6086': 'Invalid ShippingAddress Fax',
  'V6091': 'Unknown Customer CountryCode',
  'V6092': 'Unknown ShippingAddress CountryCode',
  'V6093': 'Insufficient Address Information',
  'V6100': 'Invalid EWAY_CARDNAME',
  'V6101': 'Invalid EWAY_CARDEXPIRYMONTH',
  'V6102': 'Invalid EWAY_CARDEXPIRYYEAR',
  'V6103': 'Invalid EWAY_CARDSTARTMONTH',
  'V6104': 'Invalid EWAY_CARDSTARTYEAR',
  'V6105': 'Invalid EWAY_CARDISSUENUMBER',
  'V6106': 'Invalid EWAY_CARDCVN',
  'V6107': 'Invalid EWAY_ACCESSCODE',
  'V6108': 'Invalid CustomerHostAddress',
  'V6109': 'Invalid UserAgent',
  'V6110': 'Invalid EWAY_CARDNUMBER',
  'V6111': 'Unauthorised API Access, Account Not PCI Certified',
  'V6112': 'Redundant card details other than expiry year and month',
  'V6113': 'Invalid transaction for refund',
  'V6114': 'Gateway validation error',
  'V6115': 'Invalid DirectRefundRequest, Transaction ID',
  'V6116': 'Invalid card data on original TransactionID',
  'V6117': 'Invalid CreateAccessCodeSharedRequest, FooterText',
  'V6118': 'Invalid CreateAccessCodeSharedRequest, HeaderText',
  'V6119': 'Invalid CreateAccessCodeSharedRequest, Language',
  'V6120': 'Invalid CreateAccessCodeSharedRequest, LogoUrl',
  'V6121': 'Invalid TransactionSearch, Filter Match Type',
  'V6122': 'Invalid TransactionSearch, Non numeric Transaction ID',
  'V6123': 'Invalid TransactionSearch,no TransactionID or AccessCode specified',
  'V6124': 'Invalid Line Items. The line items have been provided however the totals do not match the TotalAmount field',
  'V6125': 'Selected Payment Type not enabled',
  'V6126': 'Invalid encrypted card number, decryption failed',
  'V6127': 'Invalid encrypted cvn, decryption failed',
  'V6128': 'Invalid Method for Payment Type',
  'V6129': 'Transaction has not been authorised for Capture\/Cancellation',
  'V6130': 'Generic customer information error',
  'V6131': 'Generic shipping information error',
  'V6132': 'Transaction has already been completed or voided, operation not permitted',
  'V6133': 'Checkout not available for Payment Type',
  'V6134': 'Invalid Auth Transaction ID for Capture\/Void',
  'V6135': 'PayPal Error Processing Refund',
  'V6136': 'Original transaction does not exist or state is incorrect',
  'V6140': 'Merchant account is suspended',
  'V6141': 'Invalid PayPal account details or API signature',
  'V6142': 'Authorise not available for Bank\/Branch',
  'V6143': 'Invalid Public Key',
  'V6144': 'Method not available with Public API Key Authentication',
  'V6145': 'Credit Card not allow if Token Customer ID is provided with Public API Key Authentication',
  'V6146': 'Client Side Encryption Key Missing or Invalid',
  'V6147': 'Unable to Create One Time Code for Secure Field',
  'V6148': 'Secure Field has Expired',
  'V6149': 'Invalid Secure Field One Time Code',
  'V6150': 'Invalid Refund Amount',
  'V6151': 'Refund amount greater than original transaction',
  'V6152': 'Original transaction already refunded for total amount',
  'V6153': 'Card type not support by merchant',
  'V6154': 'Insufficent Funds Available For Refund',
  'V6155': 'Missing one or more fields in request',
  'V6160': 'Encryption Method Not Supported',
  'V6161': 'Encryption failed, missing or invalid key',
  'V6165': 'Invalid Click-to-Pay (Visa Checkout) data or decryption failed',
  'V6170': 'Invalid TransactionSearch, Invoice Number is not unique',
  'V6171': 'Invalid TransactionSearch, Invoice Number not found',
  'V6220': 'Three domain secure XID invalid',
  'V6221': 'Three domain secure ECI invalid',
  'V6222': 'Three domain secure AVV invalid',
  'V6223': 'Three domain secure XID is required',
  'V6224': 'Three Domain Secure ECI is required',
  'V6225': 'Three Domain Secure AVV is required',
  'V6226': 'Three Domain Secure AuthStatus is required',
  'V6227': 'Three Domain Secure AuthStatus invalid',
  'V6228': 'Three domain secure Version is required',
  'V6230': 'Three domain secure Directory Server Txn ID invalid',
  'V6231': 'Three domain secure Directory Server Txn ID is required',
  'V6232': 'Three domain secure Version is invalid',
  'V6501': 'Invalid Amex InstallementPlan',
  'V6502': 'Invalid Number Of Installements for Amex. Valid values are from 0 to 99 inclusive',
  'V6503': 'Merchant Amex ID required',
  'V6504': 'Invalid Merchant Amex ID',
  'V6505': 'Merchant Terminal ID required',
  'V6506': 'Merchant category code required',
  'V6507': 'Invalid merchant category code',
  'V6508': 'Amex 3D ECI required',
  'V6509': 'Invalid Amex 3D ECI',
  'V6510': 'Invalid Amex 3D verification value',
  'V6511': 'Invalid merchant location data',
  'V6512': 'Invalid merchant street address',
  'V6513': 'Invalid merchant city',
  'V6514': 'Invalid merchant country',
  'V6515': 'Invalid merchant phone',
  'V6516': 'Invalid merchant postcode',
  'V6517': 'Amex connection error',
  'V6518': 'Amex EC Card Details API returned invalid data',
  'V6520': 'Invalid or missing Amex Point Of Sale Data',
  'V6521': 'Invalid or missing Amex transaction date time',
  'V6522': 'Invalid or missing Amex Original transaction date time',
  'V6530': 'Credit Card Number in non Credit Card Field',
  'S9990': 'Rapid endpoint not set or invalid',
  'S9901': 'Response is not JSON',
  'S9902': 'Empty response',
  'S9991': 'Rapid API key or password not set',
  'S9992': 'Error connecting to Rapid gateway',
  'S9993': 'Authentication error',
  'S9995': 'Error converting to or from JSON, invalid parameter',
  'S9996': 'Rapid gateway server error'
};
;// CONCATENATED MODULE: ./assets/js/src/Constants/Feed.ts
/**
 * Please, do NOT change file content. The content was generated automatically by bin/generate/php_to_js_constants.php
 */

const TYPE_AUCTIONS = 'A';
const TYPE_LOTS = 'L';
const TYPE_CATEGORY = 'C';
const ESC_NONE = 1;
const ESC_HTMLENTITIES = 2;
const ESC_CSV_EXCEL = 3;
const ESC_URL = 4;
const ESC_RTF = 5;
const ESC_JSON_ENCODE = 6;
const CATEGORY_SLUG = 'categories.xml';
const Feed_types = (/* unused pure expression or super */ null && (['A', 'L']));
const escapings = (/* unused pure expression or super */ null && ([1, 2, 3, 4, 5, 6]));
const escapingNames = {
  '1': 'none',
  '2': 'htmlentitites',
  '3': 'csv excel',
  '4': 'url',
  '5': 'RTF escaping',
  '6': 'json encode'
};
const escapingNamesTranslations = {
  '1': 'feed.escaping_names.none',
  '2': 'feed.escaping_names.htmlentitites',
  '3': 'feed.escaping_names.csv_excel',
  '4': 'feed.escaping_names.url',
  '5': 'feed.escaping_names.rtf_escaping',
  '6': 'feed.escaping_names.json_encode'
};
const Feed_typeNames = {
  'A': 'Auctions',
  'L': 'Lots'
};
const typeNamesTranslations = {
  'A': 'feed.type_names.auctions',
  'L': 'feed.type_names.lots'
};
const cachingTimeouts = {
  '5mins': 300,
  '15mins': 900,
  '30mins': 1800,
  '1hr': 3600,
  '2hrs': 7200,
  '6hrs': 21600,
  '12hrs': 43200,
  '24hrs': 86400
};
const cachingTimeoutsTranslations = {
  '300': 'feed.caching_timeouts.5mins',
  '900': 'feed.caching_timeouts.15mins',
  '1800': 'feed.caching_timeouts.30mins',
  '3600': 'feed.caching_timeouts.1hr',
  '7200': 'feed.caching_timeouts.2hrs',
  '21600': 'feed.caching_timeouts.6hrs',
  '43200': 'feed.caching_timeouts.12hrs',
  '86400': 'feed.caching_timeouts.24hrs'
};
;// CONCATENATED MODULE: ./assets/js/src/Constants/GraphQL.ts
/**
 * Please, do NOT change file content. The content was generated automatically by bin/generate/php_to_js_constants.php
 */

const AUCTION_LIST_STATUS_FILTER_ALL = 'ALL';
const AUCTION_LIST_STATUS_FILTER_BIDDING_UPCOMING = 'BIDDING_UPCOMING';
const AUCTION_LIST_STATUS_FILTER_BIDDING = 'BIDDING';
const AUCTION_LIST_STATUS_FILTER_UPCOMING = 'UPCOMING';
const AUCTION_LIST_STATUS_FILTER_CLOSED = 'CLOSED';
const AUCTION_TYPE_ENUM_VALUES = {
  'T': 'TIMED',
  'L': 'LIVE',
  'H': 'HYBRID'
};
const AUCTION_EVENT_TYPE_ENUM_VALUES = (/* unused pure expression or super */ null && (['SCHEDULED', 'ONGOING']));
const AUCTION_PROGRESS_STATUS_ENUM_VALUES = {
  '1': 'IN_PROGRESS',
  '2': 'UPCOMING',
  '3': 'CLOSED'
};
const AUCTION_STATUS_ENUM_VALUES = {
  '1': 'ACTIVE',
  '2': 'STARTED',
  '3': 'CLOSED',
  '5': 'ARCHIVED',
  '6': 'PAUSED'
};
const AUCTION_DATE_ASSIGNMENT_STRATEGY_ENUM_VALUES = {
  '1': 'AUCTION_TO_ITEMS',
  '2': 'ITEMS_TO_AUCTION'
};
const AUCTION_ABSENTEE_BID_DISPLAY_ENUM_VALUES = {
  'N': 'DO_NOT_DISPLAY',
  'NA': 'NUMBER_OF_ABSENTEE',
  'NH': 'NUMBER_OF_ABSENTEE_HIGH',
  'NL': 'NUMBER_OF_ABSENTEE_LINK'
};
const LOT_LIST_USER_RELATION_TYPE_FILTER_WON = 'WON';
const LOT_LIST_USER_RELATION_TYPE_FILTER_NOT_WON = 'NOT_WON';
const LOT_LIST_USER_RELATION_TYPE_FILTER_BIDDING = 'BIDDING';
const LOT_LIST_USER_RELATION_TYPE_FILTER_WATCHLIST = 'WATCHLIST';
const LOT_LIST_USER_RELATION_TYPE_FILTER_ALL = 'ALL';
const LOT_LIST_CATEGORY_MATCH_FILTER_ALL = 'ALL';
const LOT_LIST_CATEGORY_MATCH_FILTER_ANY = 'ANY';
const LOT_STATUS_ENUM_VALUES = {
  '1': 'ACTIVE',
  '2': 'UNSOLD',
  '3': 'SOLD',
  '6': 'RECEIVED'
};
const TAX_SCHEMA_AMOUNT_SOURCE_ENUM_VALUES = {
  '1': 'HAMMER_PRICE',
  '2': 'BUYERS_PREMIUM',
  '4': 'HAMMER_PRICE_PLUS_BUYERS_PREMIUM',
  '3': 'SERVICES'
};
const STACKED_TAX_DEFINITION_TAX_TYPE_ENUM_VALUES = {
  '1': 'STANDARD',
  '2': 'SPECIAL',
  '3': 'EXEMPTION'
};
const STACKED_TAX_GEO_TYPE_ENUM_VALUES = {
  '1': 'COUNTRY',
  '2': 'STATE',
  '3': 'COUNTY',
  '4': 'CITY'
};
const USER_CUSTOM_FILED_SECTIONS = {
  '1': 'INFORMATION',
  '2': 'BILLING',
  '3': 'SHIPPING'
};
const TIMED_AUCTION_BIDDING_DIRECTION_FORWARD = 'FORWARD';
const TIMED_AUCTION_BIDDING_DIRECTION_REVERSE = 'REVERSE';
;// CONCATENATED MODULE: ./assets/js/src/Constants/Increment.ts
/**
 * Please, do NOT change file content. The content was generated automatically by bin/generate/php_to_js_constants.php
 */

const LEVEL_LOT = 1;
const Increment_LEVEL_AUCTION = 2;
const Increment_LEVEL_ACCOUNT = 3;
const ADVANCED_CLERKING_INCREMENT_DEFAULT = 1;
const Increment_levelNames = {
  '1': 'lot',
  '2': 'auction',
  '3': 'account'
};
;// CONCATENATED MODULE: ./assets/js/src/Constants/Invoice.ts
/**
 * Please, do NOT change file content. The content was generated automatically by bin/generate/php_to_js_constants.php
 */

const IS_OPEN = 1;
const IS_PENDING = 2;
const IS_PAID = 3;
const IS_SHIPPED = 4;
const IS_CANCELED = 5;
const IS_DELETED = 6;
const ILIAT_ALL = 'A';
const BD_CONSOLIDATED = 'C';
const BD_ITEM_BY_ITEM = 'I';
const BD_DEFAULT = 'C';
const AIC_REGULAR = 'REGULAR';
const AIC_BUY_NOW = 'BUY_NOW';
const AUTO_INVOICING_CASES = (/* unused pure expression or super */ null && (['REGULAR', 'BUY_NOW']));
const AUCTION_INVOICE_PAGE = 'auction-invoice';
const MANAGE_INVOICE_PAGE = 'manage-invoice';
const TDS_LEGACY = 1;
const TDS_STACKED_TAX = 2;
const TAX_DESIGNATION_STRATEGIES = (/* unused pure expression or super */ null && ([1, 2]));
const IA_EXTRA_CHARGE = 1;
const IA_EXTRA_FEE = 2;
const IA_SHIPPING = 3;
const IA_ARTIST_RESALE_RIGHTS = 4;
const IA_PROCESSING_FEE = 5;
const IA_CC_SURCHARGE = 6;
const IA_CASH_DISCOUNT = 7;
const invoiceStatuses = (/* unused pure expression or super */ null && ([1, 2, 3, 4, 5, 6]));
const invoiceStatusNames = {
  '1': 'Open',
  '2': 'Pending',
  '3': 'Paid',
  '4': 'Shipped',
  '5': 'Canceled',
  '6': 'Deleted'
};
const invoiceStatusNamesTranslations = {
  '1': 'header.status.open.label',
  '2': 'header.status.pending.label',
  '3': 'header.status.paid.label',
  '4': 'header.status.shipped.label',
  '5': 'header.status.canceled.label',
  '6': 'header.status.deleted.label'
};
const availableInvoiceStatuses = (/* unused pure expression or super */ null && ([1, 2, 3, 4, 5]));
const openInvoiceStatuses = (/* unused pure expression or super */ null && ([1, 2, 3, 4]));
const closedInvoiceStatuses = (/* unused pure expression or super */ null && ([5, 6]));
const publicAvailableInvoiceStatuses = (/* unused pure expression or super */ null && ([2, 3, 4]));
const invoiceLineItemAuctionTypes = (/* unused pure expression or super */ null && (['A', 'T', 'L', 'H']));
const breakDowns = {
  'C': 'invoice_line_items.list.apply_on.breakdown.consolidated.label',
  'I': 'invoice_line_items.list.apply_on.breakdown.item_by_item.label'
};
const invoiceAdditionalTypeNames = {
  '1': 'Extra Charge',
  '2': 'Extra Fee',
  '3': 'Shipping \u0026 Handling',
  '4': 'Artist Resale Rights',
  '5': 'Processing Fee',
  '6': 'CC Surcharge',
  '7': 'Cash Discount'
};
;// CONCATENATED MODULE: ./assets/js/src/Constants/Location.ts
/**
 * Please, do NOT change file content. The content was generated automatically by bin/generate/php_to_js_constants.php
 */

const TYPE_AUCTION_EVENT = 1;
const TYPE_AUCTION_INVOICE = 2;
const Location_TYPE_LOT_ITEM = 3;
const Location_TYPE_USER = 4;
const Location_TYPE_TO_DB_ALIAS_MAP = {
  '1': 'a',
  '2': 'a',
  '3': 'li',
  '4': 'u'
};
const TYPE_TO_DB_FIELD = {
  '1': 'EventLocationId',
  '2': 'InvoiceLocationId',
  '3': 'LocationId',
  '4': 'LocationId'
};
const USA_STATES = 'USA states';
const CANADIAN_PROVINCES = 'Canadian provinces';
const MEXICO_STATES = 'Mexico states';
;// CONCATENATED MODULE: ./assets/js/src/Constants/Lot.ts
/**
 * Please, do NOT change file content. The content was generated automatically by bin/generate/php_to_js_constants.php
 */

const LS_UNASSIGNED = 0;
const LS_ACTIVE = 1;
const LS_UNSOLD = 2;
const LS_SOLD = 3;
const LS_DELETED = 4;
const LS_RECEIVED = 6;
const SOLD_WITH_RESERVATION_NAME = 'Sold with reservation';
const FILTER_BID_COUNT_NONE = 0;
const FILTER_BID_COUNT_HAS_BIDS = 1;
const FILTER_BID_COUNT_HAS_NO_BIDS = 2;
const FILTER_RESERVE_NONE = 0;
const FILTER_RESERVE_MEET = 1;
const FILTER_RESERVE_NOT_MEET = 2;
const FILTER_RESERVE_MEET_VALUES = (/* unused pure expression or super */ null && ([0, 1, 2]));
const LOT_NO_AUTO_INC_OFF = 0;
const LOT_NO_AUTO_INC_ON = 1;
const LOT_NO_AUTO_INC_AUCTION_OPTION = 2;
const TL_LOT_ENDED = (/* unused pure expression or super */ null && (-1));
const TL_LOT_PAUSED = (/* unused pure expression or super */ null && (-2));
const ITEM_NUM_EXT_MAX_LENGTH_FOR_EXISTING_LOT_ITEM = 8;
const ITEM_NUM_EXT_MAX_LENGTH_FOR_NEW_LOT_ITEM = 4;
const LOT_NUM_EXT_MAX_LENGTH_FOR_EXISTING_LOT = 7;
const LOT_NUM_EXT_MAX_LENGTH_FOR_NEW_LOT = 3;
const LOT_QUANTITY_MAX_INTEGER_DIGITS = 11;
const LOT_QUANTITY_MAX_FRACTIONAL_DIGITS = 8;
const LOT_QUANTITY_MAX_PRECISION = 15;
const NEW_LOT_ID = 0;
const FAMILY_LIST_CREATE = 'CREATE';
const lotStatuses = (/* unused pure expression or super */ null && ([1, 2, 3, 4, 6]));
const lotStatusNames = {
  '0': 'Unassigned',
  '1': 'Active',
  '2': 'Unsold',
  '3': 'Sold',
  '4': 'Deleted',
  '6': 'Received'
};
const lotStatusNamesForReverseAuction = {
  '0': 'Unassigned',
  '1': 'Active',
  '2': 'Unawarded',
  '3': 'Awarded',
  '4': 'Deleted',
  '6': 'Received'
};
const availableLotStatuses = (/* unused pure expression or super */ null && ([1, 2, 3, 6]));
const availableLotStatusesForTimed = (/* unused pure expression or super */ null && ([1, 2, 3, 6]));
const inAuctionStatuses = (/* unused pure expression or super */ null && ([1, 2, 3]));
const closedLotStatuses = (/* unused pure expression or super */ null && ([2, 3, 6]));
const wonLotStatuses = (/* unused pure expression or super */ null && ([3, 6]));
const filterBidCountNames = (/* unused pure expression or super */ null && (['Any', 'Bids', 'No bids']));
;// CONCATENATED MODULE: ./assets/js/src/Constants/LotBulkGroup.ts
/**
 * Please, do NOT change file content. The content was generated automatically by bin/generate/php_to_js_constants.php
 */

const LBGR_MASTER = 'MASTER';
const LBGR_NONE = '';
const LBGR_NAMES = {
  '': 'None',
  'MASTER': 'Bulk Master'
};
const BMWBD_MASTER = 1;
const BMWBD_EQUALLY = 2;
const BMWBD_WINNING = 3;
const bulkWinBidDistributionNames = {
  '1': 'MASTER',
  '2': 'EQUALLY',
  '3': 'WINNING'
};
;// CONCATENATED MODULE: ./assets/js/src/Constants/LotCloner.ts
/**
 * Please, do NOT change file content. The content was generated automatically by bin/generate/php_to_js_constants.php
 */

const LC_CATEGORY = 'Category';
const LC_NAME = 'Name';
const LC_DESCRIPTION = 'Description';
const LC_FAMILY_ID = 'Family';
const LC_CHANGES = 'Changes';
const LC_WARRANTY = 'Warranty';
const LC_IMAGES = 'Images';
const LC_IMAGE_DEFAULT = 'DefaultImage';
const LC_LOW_ESTIMATE = 'LowEstimate';
const LC_HIGH_ESTIMATE = 'HighEstimate';
const LC_STARTING_BID = 'StartingBid';
const LC_INCREMENTS = 'Increments';
const LC_COST = 'Cost';
const LC_REPLACEMENT_PRICE = 'ReplacementPrice';
const LC_RESERVE_PRICE = 'ReservePrice';
const LC_CONSIGNOR_ID = 'ConsignorId';
const LC_ONLY_TAX_BP = 'OnlyTaxBp';
const LC_SALES_TAX = 'SalesTax';
const LC_BUYERS_PREMIUM = 'BuyersPremium';
const LC_NO_TAX_OOS = 'NoTaxOos';
const LC_RETURNED = 'Returned';
const LC_TAX_DEFAULT_COUNTRY = 'TaxDefaultCountry';
const LC_LOCATION_ID = 'LocationId';
const LC_TAX_EXEMPT = 'TaxExempt';
const LC_GENERAL_NOTE = 'GeneralNote';
const LC_NOTE_TO_CLERK = 'NoteToClerk';
const LC_FULL_LOT_ITEM = 'FullLotItem';
const LC_FULL_AUCTION_LOT = 'FullAuctionLot';
const fieldNames = {
  'Category': 'Category',
  'Name': 'Name',
  'Description': 'Description',
  'Family': 'Family',
  'Changes': 'Changes',
  'Warranty': 'Warranty',
  'Images': 'Images',
  'LowEstimate': 'Low Estimate',
  'HighEstimate': 'High Estimate',
  'StartingBid': 'Starting Bid',
  'Increments': 'Increments',
  'Cost': 'Cost',
  'ReplacementPrice': 'Replacement Price',
  'ReservePrice': 'Reserve Price',
  'ConsignorId': 'Consignor',
  'OnlyTaxBp': 'Only Tax BP',
  'SalesTax': 'Sales Tax',
  'BuyersPremium': 'Buyers Premium',
  'NoTaxOos': 'No Tax on sales outside of state',
  'Returned': 'Returned',
  'TaxDefaultCountry': 'Item tax country',
  'LocationId': 'Location',
  'TaxExempt': 'TaxExempt',
  'GeneralNote': 'General note',
  'NoteToClerk': 'Note to auction clerk'
};
;// CONCATENATED MODULE: ./assets/js/src/Constants/MailingListTemplate.ts
/**
 * Please, do NOT change file content. The content was generated automatically by bin/generate/php_to_js_constants.php
 */

const UT_BIDDER = 1;
const UT_CONSIGNOR = 2;
const userTypes = (/* unused pure expression or super */ null && ([1, 2]));
const userTypeNames = {
  '1': 'Bidder',
  '2': 'Consignor'
};
;// CONCATENATED MODULE: ./assets/js/src/Constants/MySearch.ts
/**
 * Please, do NOT change file content. The content was generated automatically by bin/generate/php_to_js_constants.php
 */

const DESC = 'descending';
const ASC = 'ascending';
const CATEGORY_MATCH_ALL = 1;
const CATEGORY_MATCH_ANY = 2;
const OLSF_ALL = 1;
const OLSF_UNASSIGNED = 2;
const OLSF_ASSIGNED = 3;
const OLSF_SOLD = 4;
const OLSF_UNSOLD = 5;
const OLSF_RECEIVED = 6;
const ASSIGN_READY_OLSF_DEFAULT = 5;
const INVENTORY_OLSF_DEFAULT = 1;
const LBSF_ALL = 1;
const LBSF_OPEN = 2;
const LBSF_BILLED = 3;
const LBSF_DEFAULT = 1;
const overallLotStatusFilters = (/* unused pure expression or super */ null && ([1, 2, 3, 4, 5, 6]));
const overallLotStatusFilterNames = {
  '1': 'All',
  '2': 'Unassigned',
  '3': 'Assigned',
  '4': 'Sold',
  '5': 'Unsold',
  '6': 'Received'
};
const overallLotStatusFilterNamesTranslations = {
  '1': 'my_search.all',
  '2': 'my_search.unassigned',
  '3': 'my_search.assigned',
  '4': 'my_search.sold',
  '5': 'my_search.unsold',
  '6': 'my_search.received'
};
const assignReadyLotStatusFilters = (/* unused pure expression or super */ null && ([1, 2, 3, 5]));
const inventoryLotStatusFilters = (/* unused pure expression or super */ null && ([1, 2, 3, 4, 5, 6]));
const lotBillingStatuses = (/* unused pure expression or super */ null && ([1, 2, 3]));
const lotBillingStatusNames = {
  '1': 'ALL',
  '2': 'Open',
  '3': 'Billed'
};
;// CONCATENATED MODULE: ./assets/js/src/Constants/Mysql.ts
/**
 * Please, do NOT change file content. The content was generated automatically by bin/generate/php_to_js_constants.php
 */

const CH_BIG5 = 'big5';
const CH_DEC8 = 'dec8';
const CH_CP850 = 'cp850';
const CH_HP8 = 'hp8';
const CH_KOI8R = 'koi8r';
const CH_LATIN1 = 'latin1';
const CH_LATIN2 = 'latin2';
const CH_SWE7 = 'swe7';
const CH_ASCII = 'ascii';
const CH_UJIS = 'ujis';
const CH_SJIS = 'sjis';
const CH_HEBREW = 'hebrew';
const CH_TIS620 = 'tis620';
const CH_EUCKR = 'euckr';
const CH_KOI8U = 'koi8u';
const CH_GB2312 = 'gb2312';
const CH_GREEK = 'greek';
const CH_CP1250 = 'cp1250';
const CH_GBK = 'gbk';
const CH_LATIN5 = 'latin5';
const CH_ARMSCII8 = 'armscii8';
const CH_UTF8 = 'utf8';
const CH_UCS2 = 'ucs2';
const CH_CP866 = 'cp866';
const CH_KEYBCS2 = 'keybcs2';
const CH_MACCE = 'macce';
const CH_MACROMAN = 'macroman';
const CH_CP852 = 'cp852';
const CH_LATIN7 = 'latin7';
const CH_UTF8MB4 = 'utf8mb4';
const CH_CP1251 = 'cp1251';
const CH_UTF16 = 'utf16';
const CH_UTF16LE = 'utf16le';
const CH_CP1256 = 'cp1256';
const CH_CP1257 = 'cp1257';
const CH_UTF32 = 'utf32';
const CH_BINARY = 'binary';
const CH_GEOSTD8 = 'geostd8';
const CH_CP932 = 'cp932';
const CH_EUCJPMS = 'eucjpms';
const charsets = (/* unused pure expression or super */ null && (['big5', 'dec8', 'cp850', 'hp8', 'koi8r', 'latin1', 'latin2', 'swe7', 'ascii', 'ujis', 'sjis', 'hebrew', 'tis620', 'euckr', 'koi8u', 'gb2312', 'greek', 'cp1250', 'gbk', 'latin5', 'armscii8', 'utf8', 'ucs2', 'cp866', 'keybcs2', 'macce', 'macroman', 'cp852', 'latin7', 'utf8mb4', 'cp1251', 'utf16', 'utf16le', 'cp1256', 'cp1257', 'utf32', 'binary', 'geostd8', 'cp932', 'eucjpms']));
const charsetsNames = {
  'big5': 'Big5 Traditional Chinese',
  'dec8': 'DEC West European',
  'cp850': 'DOS West European',
  'hp8': 'HP West European',
  'koi8r': 'KOI8-R Relcom Russian',
  'latin1': 'cp1252 West European',
  'latin2': 'ISO 8859-2 Central European',
  'swe7': '7bit Swedish',
  'ascii': 'US ASCII',
  'ujis': 'EUC-JP Japanese',
  'sjis': 'Shift-JIS Japanese',
  'hebrew': 'ISO 8859-8 Hebrew',
  'tis620': 'TIS620 Thai',
  'euckr': 'EUC-KR Korean',
  'koi8u': 'KOI8-U Ukrainian',
  'gb2312': 'GB2312 Simplified Chinese',
  'greek': 'ISO 8859-7 Greek',
  'cp1250': 'Windows Central European',
  'gbk': 'GBK Simplified Chinese',
  'latin5': 'ISO 8859-9 Turkish',
  'armscii8': 'ARMSCII-8 Armenian',
  'utf8': 'UTF-8 Unicode',
  'ucs2': 'UCS-2 Unicode',
  'cp866': 'DOS Russian',
  'keybcs2': 'DOS Kamenicky Czech-Slovak',
  'macce': 'Mac Central European',
  'macroman': 'Mac West European',
  'cp852': 'DOS Central European',
  'latin7': 'ISO 8859-13 Baltic',
  'utf8mb4': 'UTF-8 Unicode',
  'cp1251': 'Windows Cyrillic',
  'utf16': 'UTF-16 Unicode',
  'utf16le': 'UTF-16LE Unicode',
  'cp1256': 'Windows Arabic',
  'cp1257': 'Windows Baltic',
  'utf32': 'UTF-32 Unicode',
  'binary': 'Binary pseudo charset',
  'geostd8': 'GEOSTD8 Georgian',
  'cp932': 'SJIS for Windows Japanese',
  'eucjpms': 'UJIS for Windows Japanese'
};
;// CONCATENATED MODULE: ./assets/js/src/Constants/Page.ts
/**
 * Please, do NOT change file content. The content was generated automatically by bin/generate/php_to_js_constants.php
 */

const LEGACY = 1;
const RESPONSIVE = 2;
const CATALOG = 'catalog-list';
const SEARCH = 'advanced-search';
const ALL = 'my-items-all';
const WON = 'my-items-won';
const NOTWON = 'my-items-not-won';
const BIDDING = 'my-items-bidding';
const WATCHLIST = 'my-items-watchlist';
const CONSIGNED = 'my-items-consigned';
const DETAIL = 'lot-detail';
const VM_GRID = 'grid';
const VM_LIST = 'list';
const VM_COMPACT = 'comp';
const PANEL_CLOSED = 'closed';
const PANEL_OPEN = 'open';
const PANEL_OPEN_FORM = 'open-form';
const myItems = (/* unused pure expression or super */ null && (['my-items-all', 'my-items-won', 'my-items-not-won', 'my-items-bidding', 'my-items-watchlist', 'my-items-consigned']));
const viewModes = (/* unused pure expression or super */ null && (['grid', 'list', 'comp']));
const viewModeToSearchResultsFormatMap = {
  'grid': 'L',
  'list': 'T',
  'comp': 'C'
};
const itemsPerPageNamesFullList = {
  '10': 10,
  '25': 25,
  '50': 50,
  '100': 100,
  '250': 250,
  '500': 500,
  '1000': 1000
};
const itemsPerPageNamesShortList = {
  '10': 10,
  '25': 25,
  '50': 50,
  '100': 100
};
;// CONCATENATED MODULE: ./assets/js/src/Constants/PasswordStrength.ts
/**
 * Please, do NOT change file content. The content was generated automatically by bin/generate/php_to_js_constants.php
 */

const VERY_WEAK = 1;
const WEAK = 2;
const GOOD = 3;
const STRONG = 4;
const VERY_STRONG = 5;
const scoreStatusNames = {
  '1': 'Very weak',
  '2': 'Weak',
  '3': 'Good',
  '4': 'Strong',
  '5': 'Very strong'
};
const scoreStatusNamesTranslations = {
  '1': 'password_strength.very_weak',
  '2': 'password_strength.weak',
  '3': 'password_strength.good',
  '4': 'password_strength.strong',
  '5': 'password_strength.very_strong'
};
const scoreAmounts = {
  '1': 0.1,
  '2': 0.25,
  '3': 0.4,
  '4': 0.6,
  '5': 1
};
const indicatorClasses = {
  '1': 'password-indicator-very-weak',
  '2': 'password-indicator-weak',
  '3': 'password-indicator-good',
  '4': 'password-indicator-strong',
  '5': 'password-indicator-very-strong'
};
const indicatorPercents = {
  '1': 20,
  '2': 40,
  '3': 60,
  '4': 80,
  '5': 100
};
;// CONCATENATED MODULE: ./assets/js/src/Constants/Payment.ts
/**
 * Please, do NOT change file content. The content was generated automatically by bin/generate/php_to_js_constants.php
 */

const TT_INVOICE = 'I';
const TT_SETTLEMENT = 'P';
const TT_PENDING = 'T';
const PM_CC = 1;
const PM_BANK_WIRE = 2;
const PM_GOOGLE_CHECKOUT = 3;
const PM_PAYPAL = 4;
const PM_OTHER = 5;
const PM_CASH = 6;
const PM_CHECK = 7;
const PM_MONEY_ORDER = 8;
const PM_CASHIERS_CHECK = 9;
const PM_CREDIT_MEMO = 10;
const PM_SMART_PAY = 11;
const PM_CC_ON_INPUT = 12;
const PM_CC_ON_FILE = 13;
const PM_CC_EXTERNALLY = 14;
const CC_PAYMENT_METHODS = (/* unused pure expression or super */ null && ([1, 12, 13, 14]));
const IPM_PAYPAL = 1;
const IPM_CC = 2;
const IPM_ACH = 3;
const IPM_SMART_PAY = 11;
const INVOICE_PAYMENT_METHOD_NAMES = {
  '1': 'Paypal',
  '2': 'Credit Card',
  '3': 'ACH',
  '11': 'SmartPay'
};
const PAYMENT_NOTE_DEF = 'note';
const paymentMethods = (/* unused pure expression or super */ null && ([12, 13, 14, 2, 3, 4, 5, 6, 7, 8, 9, 10]));
const paymentMethodNames = {
  '1': 'Credit Card',
  '2': 'Bank Wire',
  '3': 'Google Checkout',
  '4': 'Paypal',
  '5': 'Other',
  '6': 'Cash',
  '7': 'Check',
  '8': 'Money order',
  '9': 'Cashiers check',
  '10': 'Credit Memo'
};
;// CONCATENATED MODULE: ./assets/js/src/Constants/PhoneCountry.ts
/**
 * Please, do NOT change file content. The content was generated automatically by bin/generate/php_to_js_constants.php
 */

const AFGHANISTAN = 1;
const ALAND_ISLANDS_FINLAND = 2;
const ALBANIA = 3;
const ALGERIA = 4;
const ANDORRA = 5;
const ANGOLA = 6;
const ARGENTINA = 7;
const ARMENIA = 8;
const ARUBA = 9;
const ASCENSION = 10;
const AUSTRALIA_CHRISTMAS_ISLAND_COCOS_ISLANDS = 11;
const AUSTRALIAN_EXTERNAL_TERRITORIES_NORFOLK_ISLANDS = 12;
const AUSTRIA = 13;
const AZERBAIJAN = 14;
const BAHRAIN = 15;
const BANGLADESH = 16;
const BELARUS = 17;
const BELGIUM = 18;
const BELIZE = 19;
const BENIN = 20;
const BHUTAN = 21;
const BOLIVIA = 22;
const BOSNIA_HERZEGOVINA = 23;
const BOTSWANA = 24;
const BRAZIL = 25;
const BRITISH_INDIAN_OCEAN_TERRITORY_DIEGO_GARCIA = 26;
const BRUNEI_DARUSSALAM = 27;
const BULGARIA = 28;
const BURKINA_FASO = 29;
const BURMA = 30;
const BURUNDI = 31;
const CAMBODIA = 32;
const CAMEROON = 33;
const CANADA_USA = 34;
const CAPE_VERDE_ISLANDS = 35;
const CARIBBEAN_NETHERLANDS_SINT_EUSTATIUS_CARACAO_SABA_BONAIRE = 36;
const CENTRAL_AFRICAN_REPUBLIC = 37;
const CHAD = 38;
const CHILE_EASTERN_ISLANDS = 39;
const CHINA = 40;
const COLOMBIA = 41;
const COMOROS = 42;
const CONGO = 43;
const CONGO_DOMENICAN_REPUBLIC_OF_THE_ZAIRE = 44;
const COOK_ISLANDS = 45;
const COSTA_RICA = 46;
const COTE_DIVOIRE = 47;
const CROATIA = 48;
const CUBA_GUANTANAMO_BAY = 49;
const CYPRUS = 50;
const CZECH_REPUBLIC = 51;
const DENMARK = 52;
const DJIBOUTI = 53;
const EAST_TIMOR = 54;
const ECUADOR = 55;
const EGYPT = 56;
const EL_SALVADOR = 57;
const EQUATORIAL_GUINEA = 58;
const ERITREA = 59;
const ESTONIA = 60;
const ETHIOPIA = 61;
const FALKLAND_ISLANDS_SOUTH_GEORGIA_AND_THE_SOUTH_SANDWICH_ISLANDS = 62;
const FAROE_ISLANDS = 63;
const FIJI = 64;
const FRANCE = 65;
const FRENCH_ANTILLES = 66;
const FRENCH_GUIANA = 67;
const FRENCH_POLYNESIA = 68;
const GABON = 69;
const GAMBIA = 70;
const GEORGIA = 71;
const GERMANY = 72;
const GHANA = 73;
const GIBRALTAR = 74;
const GREECE = 75;
const GREENLAND = 76;
const GUADELOUPE_SAINT_BARTELEMY_SAINT_MARTIN_FRANCE = 77;
const GUATEMALA = 78;
const GUINEA = 79;
const GUINEA_BISSAU = 80;
const GUYANA = 81;
const HAITI = 82;
const HONURAS = 83;
const HONG_KONG = 84;
const HUNGARY = 85;
const ICELAND = 86;
const INDIA = 87;
const INDONESIA = 88;
const INMARSAT_SNAC = 89;
const IRAN = 90;
const IRAQ = 91;
const IRELAND = 92;
const ISRAEL = 93;
const ITALY = 94;
const JAPAN = 95;
const JORDAN = 96;
const KENYA = 97;
const KIRIBATI = 98;
const KOREA_NORTH = 99;
const KOREA_SOUTH = 100;
const KOSOVO = 209;
const KUWAIT = 101;
const KYRGYZSTAN = 102;
const LAOS = 103;
const LATVIA = 104;
const LEBANON = 105;
const LESOTHO = 106;
const LIBERIA = 107;
const LIBYA = 108;
const LIECHTENSTEIN = 109;
const LITHUANIA = 110;
const LUXEMBOURG = 111;
const MACAO = 112;
const MACEDONIA = 113;
const MADAGASCAR = 114;
const MALAWI = 115;
const MALAYSIA = 116;
const MALDIVES = 117;
const MALI = 118;
const MALTA = 119;
const MARSHALL_ISLANDS = 120;
const MARTINIQUE = 121;
const MAURITANIA = 122;
const MAURITIUS = 123;
const MEXICO = 124;
const MICRONESIA_FEDERATED_STATES_OF = 125;
const MOLDOVA = 126;
const MONACO = 127;
const MONGOLIA = 128;
const MONTENEGRO = 129;
const MAROCCO = 130;
const MOZAMBIQUE = 131;
const NAMIBIA = 132;
const NAURU = 133;
const NEPAL = 134;
const NETHERLANDS = 135;
const NEW_CALEDONIA = 136;
const NEW_ZEALAND_PITCAIRN_ISLANDS_CHATHAM_ISLAND = 137;
const NICARAGUA = 138;
const NIGER = 139;
const NIGERIA = 140;
const NIUE = 141;
const NORWAY = 142;
const OMAN = 143;
const PAKISTAN = 144;
const PALAU = 145;
const PALESTINIAN_TERRITORIES = 146;
const PANAMA = 147;
const PAPUA_NEW_GUINEA = 148;
const PARAGUAY = 149;
const PERU = 150;
const PHILIPPINES = 151;
const POLAND = 152;
const PORTUGAL = 153;
const QATAR = 154;
const REUNION_MAYOTTE = 155;
const ROMANIA = 156;
const RWANDA = 157;
const SAINT_HELENA_TRISTAN_DA_CUNHA = 158;
const SAINT_PIERREAND_MIQUELON = 159;
const SAMOA = 160;
const SAN_MARINO = 161;
const SAO_TOME_PRINCIPE = 162;
const SAUDI_ARABIA = 163;
const SENEGAL = 164;
const SERBIA = 165;
const SEYCHELLES = 166;
const SIERRA_LEONE = 167;
const SINGAPORE = 168;
const SLOVAK_REPUBLIC = 169;
const SLOVENIA = 170;
const SOLOMON_ISLANDS = 171;
const SOMALIA = 172;
const SOUTH_AFRICA = 173;
const SOUTH_SUDAN = 174;
const SPAIN = 175;
const SRI_LANKA = 176;
const SUDAN = 177;
const SURINAME = 178;
const SWAZILAND = 179;
const SWEDEN = 180;
const SWITZERLAND = 181;
const SYRIA = 182;
const TAIWAN = 183;
const TAJIKSTAN = 184;
const RUSSIA_KAZAKHSTAN_ABKHAZIA = 185;
const TANZANIA_ZANZIBAR = 186;
const THAILAND = 187;
const TOGO = 188;
const TOKELAU = 189;
const TONGA = 190;
const TUNISIA = 191;
const TURKEY = 192;
const TURKMENISTAN = 193;
const TUVALU = 194;
const UGANDA = 195;
const UKRAINE = 196;
const UNITED_ARAB_STATES = 197;
const UNITED_KINGDOM_GUERNSEY_ISLE_OF_MAN_JERSEY = 198;
const URUGUAY = 199;
const UZBEKISTAN = 200;
const VANUATU = 201;
const VENEZUELA = 202;
const VATICAN_CITY_STATE_HOLY_SEE = 203;
const VIETNAM = 204;
const WALLIS_AND_FUTUNA = 205;
const YEMEN = 206;
const ZAMBIA = 207;
const ZIMBABWE = 208;
const countryNames = {
  '1': 'Afghanistan',
  '2': '\u00c5land Islands \/ Finland',
  '3': 'Albania',
  '4': 'Algeria',
  '5': 'Andorra',
  '6': 'Angola',
  '7': 'Argentina',
  '8': 'Armenia',
  '9': 'Aruba',
  '10': 'Ascension',
  '11': 'Australia \/ Christmas Island \/ Cocos (Keeling) Islands',
  '12': 'Australian External Territories \/ Norfolk Island',
  '13': 'Austria',
  '14': 'Azerbaijan',
  '15': 'Bahrain',
  '16': 'Bangladesh',
  '17': 'Belarus',
  '18': 'Belgium',
  '19': 'Belize',
  '20': 'Benin',
  '21': 'Bhutan',
  '22': 'Bolivia',
  '23': 'Bosnia Herzegovina',
  '24': 'Botswana',
  '25': 'Brazil',
  '26': 'British Indian Ocean Territory \/Diego Garcia',
  '27': 'Brunei Darussalam',
  '28': 'Bulgaria',
  '29': 'Burkina Faso',
  '30': 'Burma',
  '31': 'Burundi',
  '32': 'Cambodia',
  '33': 'Cameroon',
  '34': 'Canada \/ USA',
  '35': 'Cape Verde Islands',
  '36': 'Caribbean Netherlands \/ Sint Eustatius \/ Cura\u00e7ao \/ Saba \/ Bonaire',
  '37': 'Central African Republic',
  '38': 'Chad',
  '39': 'Chile \/ Easter Island',
  '40': 'China',
  '41': 'Colombia',
  '42': 'Comoros',
  '43': 'Congo',
  '44': 'Congo, Democratic Republic of the (Zaire)',
  '45': 'Cook Islands',
  '46': 'Costa Rica',
  '47': 'C\u00f4te d\u0027Ivoire',
  '48': 'Croatia',
  '49': 'Cuba \/ Guantanamo Bay',
  '50': 'Cyprus',
  '51': 'Czech Republic',
  '52': 'Denmark',
  '53': 'Djibouti',
  '54': 'East Timor',
  '55': 'Ecuador',
  '56': 'Egypt',
  '57': 'El Salvador',
  '58': 'Equatorial Guinea',
  '59': 'Eritrea',
  '60': 'Estonia',
  '61': 'Ethiopia',
  '62': 'Falkland Islands \/ South Georgia and the South Sandwich Islands',
  '63': 'Faroe Islands',
  '64': 'Fiji',
  '65': 'France',
  '66': 'French Antilles',
  '67': 'French Guiana',
  '68': 'French Polynesia',
  '69': 'Gabon',
  '70': 'Gambia',
  '71': 'Georgia',
  '72': 'Germany',
  '73': 'Ghana',
  '74': 'Gibraltar',
  '75': 'Greece',
  '76': 'Greenland',
  '77': 'Guadeloupe \/ Saint Barth\u00e9lemy \/ Saint Martin (France)',
  '78': 'Guatemala',
  '79': 'Guinea',
  '80': 'Guinea - Bissau',
  '81': 'Guyana',
  '82': 'Haiti',
  '83': 'Honduras',
  '84': 'Hong Kong',
  '85': 'Hungary',
  '86': 'Iceland',
  '87': 'India',
  '88': 'Indonesia',
  '89': 'Inmarsat SNAC',
  '90': 'Iran',
  '91': 'Iraq',
  '92': 'Ireland',
  '93': 'Israel',
  '94': 'Italy',
  '95': 'Japan',
  '96': 'Jordan',
  '97': 'Kenya',
  '98': 'Kiribati',
  '99': 'Korea North',
  '100': 'Korea South',
  '209': 'Kosovo',
  '101': 'Kuwait',
  '102': 'Kyrgyzstan',
  '103': 'Laos',
  '104': 'Latvia',
  '105': 'Lebanon',
  '106': 'Lesotho',
  '107': 'Liberia',
  '108': 'Libya',
  '109': 'Liechtenstein',
  '110': 'Lithuania',
  '111': 'Luxembourg',
  '112': 'Macao',
  '113': 'Macedonia',
  '114': 'Madagascar',
  '115': 'Malawi',
  '116': 'Malaysia',
  '117': 'Maldives',
  '118': 'Mali',
  '119': 'Malta',
  '120': 'Marshall Islands',
  '121': 'Martinique',
  '122': 'Mauritania',
  '123': 'Mauritius',
  '124': 'Mexico',
  '125': 'Micronesia, Federated States of',
  '126': 'Moldova',
  '127': 'Monaco',
  '128': 'Mongolia',
  '129': 'Montenegro',
  '130': 'Morocco',
  '131': 'Mozambique',
  '132': 'Namibia',
  '133': 'Nauru',
  '134': 'Nepal',
  '135': 'Netherlands',
  '136': 'New Caledonia',
  '137': 'New Zealand \/ Pitcairn Islands \/ Chatham Island',
  '138': 'Nicaragua',
  '139': 'Niger',
  '140': 'Nigeria',
  '141': 'Niue',
  '142': 'Norway',
  '143': 'Oman',
  '144': 'Pakistan',
  '145': 'Palau',
  '146': 'Palestinian territories',
  '147': 'Panama',
  '148': 'Papua New Guinea',
  '149': 'Paraguay',
  '150': 'Peru',
  '151': 'Philippines',
  '152': 'Poland',
  '153': 'Portugal',
  '154': 'Qatar',
  '155': 'Reunion \/ Mayotte',
  '156': 'Romania',
  '157': 'Rwanda',
  '158': 'Saint Helena \/ Tristan da Cunha',
  '159': 'Saint Pierre and Miquelon',
  '160': 'Samoa',
  '161': 'San Marino',
  '162': 'Sao Tome Principe',
  '163': 'Saudi Arabia',
  '164': 'Senegal',
  '165': 'Serbia',
  '166': 'Seychelles',
  '167': 'Sierra Leone',
  '168': 'Singapore',
  '169': 'Slovak Republic',
  '170': 'Slovenia',
  '171': 'Solomon Islands',
  '172': 'Somalia',
  '173': 'South Africa',
  '174': 'South Sudan',
  '175': 'Spain',
  '176': 'Sri Lanka',
  '177': 'Sudan',
  '178': 'Suriname',
  '179': 'Swaziland',
  '180': 'Sweden',
  '181': 'Switzerland',
  '182': 'Syria',
  '183': 'Taiwan',
  '184': 'Tajikstan',
  '185': 'Russia \/ Kazakhstan \/ Abkhazia',
  '186': 'Tanzania \/ Zanzibar',
  '187': 'Thailand',
  '188': 'Togo',
  '189': 'Tokelau',
  '190': 'Tonga',
  '191': 'Tunisia',
  '192': 'Turkey',
  '193': 'Turkmenistan',
  '194': 'Tuvalu',
  '195': 'Uganda',
  '196': 'Ukraine',
  '197': 'United Arab Emirates',
  '198': 'United Kingdom \/ Guernsey \/ Isle of Man \/ Jersey',
  '199': 'Uruguay',
  '200': 'Uzbekistan',
  '201': 'Vanuatu',
  '202': 'Venezuela',
  '203': 'Vatican City State (Holy See)',
  '204': 'Vietnam',
  '205': 'Wallis \u0026 Futuna',
  '206': 'Yemen',
  '207': 'Zambia',
  '208': 'Zimbabwe'
};
const countryCodes = {
  '1': '93',
  '2': '358',
  '3': '355',
  '4': '213',
  '5': '376',
  '6': '244',
  '7': '54',
  '8': '374',
  '9': '297',
  '10': '247',
  '11': '61',
  '12': '672',
  '13': '43',
  '14': '994',
  '15': '973',
  '16': '880',
  '17': '375',
  '18': '32',
  '19': '501',
  '20': '229',
  '21': '975',
  '22': '591',
  '23': '387',
  '24': '267',
  '25': '55',
  '26': '246',
  '27': '673',
  '28': '359',
  '29': '226',
  '30': '95',
  '31': '257',
  '32': '855',
  '33': '237',
  '34': '1',
  '35': '238',
  '36': '599',
  '37': '236',
  '38': '235',
  '39': '56',
  '40': '86',
  '41': '57',
  '42': '269',
  '43': '242',
  '44': '243',
  '45': '682',
  '46': '506',
  '47': '225',
  '48': '385',
  '49': '53',
  '50': '357',
  '51': '420',
  '52': '45',
  '53': '253',
  '54': '670',
  '55': '593',
  '56': '20',
  '57': '503',
  '58': '240',
  '59': '291',
  '60': '372',
  '61': '251',
  '62': '500',
  '63': '298',
  '64': '679',
  '65': '33',
  '66': '596',
  '67': '594',
  '68': '689',
  '69': '241',
  '70': '220',
  '71': '995',
  '72': '49',
  '73': '233',
  '74': '350',
  '75': '30',
  '76': '299',
  '77': '590',
  '78': '502',
  '79': '224',
  '80': '245',
  '81': '592',
  '82': '509',
  '83': '504',
  '84': '852',
  '85': '36',
  '86': '354',
  '87': '91',
  '88': '62',
  '89': '870',
  '90': '98',
  '91': '964',
  '92': '353',
  '93': '972',
  '94': '39',
  '95': '81',
  '96': '962',
  '97': '254',
  '98': '686',
  '99': '850',
  '100': '82',
  '209': '383',
  '101': '965',
  '102': '996',
  '103': '856',
  '104': '371',
  '105': '961',
  '106': '266',
  '107': '231',
  '108': '218',
  '109': '423',
  '110': '370',
  '111': '352',
  '112': '853',
  '113': '389',
  '114': '261',
  '115': '265',
  '116': '60',
  '117': '960',
  '118': '223',
  '119': '356',
  '120': '692',
  '121': '596',
  '122': '222',
  '123': '230',
  '124': '52',
  '125': '691',
  '126': '373',
  '127': '377',
  '128': '976',
  '129': '382',
  '130': '212',
  '131': '258',
  '132': '264',
  '133': '674',
  '134': '977',
  '135': '31',
  '136': '687',
  '137': '64',
  '138': '505',
  '139': '227',
  '140': '234',
  '141': '683',
  '142': '47',
  '143': '968',
  '144': '92',
  '145': '680',
  '146': '970',
  '147': '507',
  '148': '675',
  '149': '595',
  '150': '51',
  '151': '63',
  '152': '48',
  '153': '351',
  '154': '974',
  '155': '262',
  '156': '40',
  '157': '250',
  '158': '290',
  '159': '508',
  '160': '685',
  '161': '378',
  '162': '239',
  '163': '966',
  '164': '221',
  '165': '381',
  '166': '248',
  '167': '232',
  '168': '65',
  '169': '421',
  '170': '386',
  '171': '677',
  '172': '252',
  '173': '27',
  '174': '211',
  '175': '34',
  '176': '94',
  '177': '249',
  '178': '597',
  '179': '268',
  '180': '46',
  '181': '41',
  '182': '963',
  '183': '886',
  '184': '992',
  '185': '7',
  '186': '255',
  '187': '66',
  '188': '228',
  '189': '690',
  '190': '676',
  '191': '216',
  '192': '90',
  '193': '993',
  '194': '688',
  '195': '256',
  '196': '380',
  '197': '971',
  '198': '44',
  '199': '598',
  '200': '998',
  '201': '678',
  '202': '58',
  '203': '379',
  '204': '84',
  '205': '681',
  '206': '967',
  '207': '260',
  '208': '263'
};
;// CONCATENATED MODULE: ./assets/js/src/Constants/Placeholder.ts
/**
 * Please, do NOT change file content. The content was generated automatically by bin/generate/php_to_js_constants.php
 */

const REGULAR = 1;
const MONEY = 2;
const URL = 3;
const INDEXED_ARRAY = 4;
const DATE = 5;
const DATE_ADDITIONAL = 6;
const BOOLEAN = 7;
const AUCTION_CUSTOM_FIELD = 8;
const LOT_CUSTOM_FIELD = 9;
const USER_CUSTOM_FIELD = 10;
const LANG_LABEL = 11;
const INLINE_TEXT = 12;
const COMPOSITE = 13;
const BEGIN_END = 14;
const OPTION_BEGIN_END_LOGICAL_NOT = 'logicalNot';
const HTML_ID_TIME_LEFT_COUNTDOWN = 'time_left_countdown';
const Placeholder_typeNames = {
  '1': 'Regular',
  '2': 'Money amount',
  '3': 'URLs',
  '4': 'Indexed array',
  '5': 'Date',
  '6': 'Date additional',
  '7': 'Boolean',
  '8': 'Auction custom field',
  '9': 'Lot custom field',
  '10': 'User custom field',
  '11': 'Translation label',
  '12': 'Inline text',
  '13': 'Composite',
  '14': 'Begin-End block'
};
const Placeholder_typeNamesTranslations = {
  '1': 'type_name.regular',
  '2': 'type_name.money_amount',
  '3': 'type_name.urls',
  '4': 'type_name.indexed_array',
  '5': 'type_name.date',
  '6': 'type_name.date_additional',
  '7': 'type_name.boolean',
  '8': 'type_name.auction_custom_field',
  '9': 'type_name.lot_custom_field',
  '10': 'type_name.user_custom_field',
  '11': 'type_name.translation_label',
  '12': 'type_name.inline_text',
  '13': 'type_name.composite',
  '14': 'type_name.begin_end_block'
};
const customFieldTypes = (/* unused pure expression or super */ null && ([8, 9, 10]));
;// CONCATENATED MODULE: ./assets/js/src/Constants/PortalUrlHandling.ts
/**
 * Please, do NOT change file content. The content was generated automatically by bin/generate/php_to_js_constants.php
 */

const MAIN_DOMAIN = 'maindomain';
const SUBDOMAINS = 'subdomains';
const PortalUrlHandling_types = (/* unused pure expression or super */ null && (['maindomain', 'subdomains']));
const PortalUrlHandling_typeNames = {
  'maindomain': 'maindomain',
  'subdomains': 'subdomains'
};
;// CONCATENATED MODULE: ./assets/js/src/Constants/PublicMainMenu.ts
/**
 * Please, do NOT change file content. The content was generated automatically by bin/generate/php_to_js_constants.php
 */

const P_ACCOUNT = 1;
const P_AUCTION = 2;
const P_ITEM = 3;
const P_ALERT = 4;
const P_INVOICE = 5;
const P_SIGNUP = 6;
const P_PROFILE = 7;
const P_LOGIN = 8;
const P_LOGOUT = 9;
const P_SETTLEMENT = 10;
const PAGES = {
  '1': 'Accounts',
  '2': 'Auctions',
  '3': 'My items',
  '4': 'My alerts',
  '5': 'Invoices',
  '10': 'Settlements',
  '6': 'Signup',
  '7': 'Profile',
  '8': 'Login',
  '9': 'Logout'
};
const PAGES_TRANSLATIONS = {
  '1': 'public_main_menu_item.accounts',
  '2': 'public_main_menu_item.auctions',
  '3': 'public_main_menu_item.my_items',
  '4': 'public_main_menu_item.my_alerts',
  '5': 'public_main_menu_item.invoices',
  '10': 'public_main_menu_item.settlements',
  '6': 'public_main_menu_item.signup',
  '7': 'public_main_menu_item.profile',
  '8': 'public_main_menu_item.login',
  '9': 'public_main_menu_item.logout'
};
;// CONCATENATED MODULE: ./assets/js/src/Constants/Qform.ts
/**
 * Please, do NOT change file content. The content was generated automatically by bin/generate/php_to_js_constants.php
 */

const FORM_CALL_TYPE = 'Qform__FormCallType';
const FORM_CHECKABLE_CONTROLS = 'Qform__FormCheckableControls';
const FORM_CONTROL = 'Qform__FormControl';
const FORM_CSRF_TOKEN_NAME = 'Qform__FormCsrfTokenName';
const FORM_EVENT = 'Qform__FormEvent';
const FORM_ID = 'Qform__FormId';
const FORM_PARAMETER = 'Qform__FormParameter';
const FORM_STATE_ID = 'Qform__FormState';
const FORM_UPDATES = 'Qform__FormUpdates';
;// CONCATENATED MODULE: ./assets/js/src/Constants/RegistrationReminder.ts
/**
 * Please, do NOT change file content. The content was generated automatically by bin/generate/php_to_js_constants.php
 */

const INTERVAL_ONCE_PER_4_HOURS = 4;
const INTERVAL_ONCE_PER_8_HOURS = 8;
const INTERVAL_ONCE_PER_12_HOURS = 12;
const INTERVAL_ONCE_PER_DAY = 24;
const INTERVAL_ONCE_PER_2_DAYS = 48;
const INTERVAL_ONCE_PER_3_DAYS = 72;
const INTERVAL_ONCE_PER_4_DAYS = 96;
const INTERVAL_ONCE_PER_5_DAYS = 120;
const INTERVAL_ONCE_PER_6_DAYS = 144;
const INTERVAL_ONCE_PER_7_DAYS = 168;
const INTERVALS_LESS_THAN_DAY = (/* unused pure expression or super */ null && ([4, 8, 12]));
const intervalHourNames = {
  '4': 'registration.reminder_email_interval.four_hours.option',
  '8': 'registration.reminder_email_interval.eight_hours.option',
  '12': 'registration.reminder_email_interval.twelve_hours.option',
  '24': 'registration.reminder_email_interval.one_day.option',
  '48': 'registration.reminder_email_interval.two_days.option',
  '72': 'registration.reminder_email_interval.three_days.option',
  '96': 'registration.reminder_email_interval.four_days.option',
  '120': 'registration.reminder_email_interval.five_days.option',
  '144': 'registration.reminder_email_interval.six_days.option',
  '168': 'registration.reminder_email_interval.seven_days.option'
};
;// CONCATENATED MODULE: ./assets/js/src/Constants/Role.ts
/**
 * Please, do NOT change file content. The content was generated automatically by bin/generate/php_to_js_constants.php
 */

const ADMIN = 'ADMIN';
const CONSIGNOR = 'CONSIGNOR';
const BIDDER = 'BIDDER';
const USER = 'USER';
const VISITOR = 'VISITOR';
const ACL_CUSTOMER = 'customer';
const ACL_ADMIN = 'admin';
const ACL_STAFF = 'staff';
const ACL_ANONYMOUS = 'anonymous';
const roles = (/* unused pure expression or super */ null && (['ADMIN', 'CONSIGNOR', 'BIDDER', 'USER', 'VISITOR']));
const rolesTranslations = {
  'ADMIN': 'role.admin',
  'CONSIGNOR': 'role.consignor',
  'BIDDER': 'role.bidder',
  'USER': 'role.user',
  'VISITOR': 'role.visitor'
};
const auctionAccessRolesTranslations = {
  'ADMIN': 'role.admin',
  'BIDDER': 'role.bidder',
  'USER': 'role.user',
  'VISITOR': 'role.visitor'
};
const auctionAccessRoles = (/* unused pure expression or super */ null && (['ADMIN', 'BIDDER', 'USER', 'VISITOR']));
;// CONCATENATED MODULE: ./assets/js/src/Constants/RtbdPool.ts
/**
 * Please, do NOT change file content. The content was generated automatically by bin/generate/php_to_js_constants.php
 */

const DS_FAIR = 1;
const DS_MANUAL = 2;
const DS_ROUND_ROBIN = 3;
const LOG_FILE_NAME_TPL = 'rtb-%s.log';
const PID_FILE_NAME_TPL = 'rtb-%s.pid';
const discoveryStrategies = (/* unused pure expression or super */ null && ([1, 2, 3]));
const discoveryStrategyNames = {
  '1': 'fair',
  '2': 'manual',
  '3': 'round robin'
};
;// CONCATENATED MODULE: ./assets/js/src/Constants/Search.ts
/**
 * Please, do NOT change file content. The content was generated automatically by bin/generate/php_to_js_constants.php
 */

const INDEX_FULLTEXT = 1;
const ENTITY_LOT_ITEM = 1;
const ENTITY_USER = 2;
const ENTITY_INVOICE = 3;
const ENTITY_SETTLEMENT = 4;
const ENTITY_DRAFT = 5;
const ENTITY_AUCTION = 6;
const indexTypes = (/* unused pure expression or super */ null && ([1]));
const indexTypeNames = {
  '1': 'Fulltext'
};
const entities = (/* unused pure expression or super */ null && ([1, 2, 3, 4, 5, 6]));
;// CONCATENATED MODULE: ./assets/js/src/Constants/Setting.ts
/**
 * Please, do NOT change file content. The content was generated automatically by bin/generate/php_to_js_constants.php
 */

const AUCTION_LISTING_PAGE_DESC = 'AuctionListingPageDesc';
const AUCTION_LISTING_PAGE_KEYWORD = 'AuctionListingPageKeyword';
const AUCTION_LISTING_PAGE_TITLE = 'AuctionListingPageTitle';
const AUCTION_PAGE_DESC = 'AuctionPageDesc';
const AUCTION_PAGE_KEYWORD = 'AuctionPageKeyword';
const AUCTION_PAGE_TITLE = 'AuctionPageTitle';
const AUCTION_SEO_URL_TEMPLATE = 'AuctionSeoUrlTemplate';
const LOGIN_DESC = 'LoginDesc';
const LOGIN_KEYWORD = 'LoginKeyword';
const LOGIN_TITLE = 'LoginTitle';
const LOT_PAGE_DESC = 'LotPageDesc';
const LOT_PAGE_KEYWORD = 'LotPageKeyword';
const LOT_PAGE_TITLE = 'LotPageTitle';
const LOT_SEO_URL_TEMPLATE = 'LotSeoUrlTemplate';
const SEARCH_RESULTS_PAGE_DESC = 'SearchResultsPageDesc';
const SEARCH_RESULTS_PAGE_KEYWORD = 'SearchResultsPageKeyword';
const SEARCH_RESULTS_PAGE_TITLE = 'SearchResultsPageTitle';
const SIGNUP_DESC = 'SignupDesc';
const SIGNUP_KEYWORD = 'SignupKeyword';
const SIGNUP_TITLE = 'SignupTitle';
const ABOVE_RESERVE = 'AboveReserve';
const ABOVE_STARTING_BID = 'AboveStartingBid';
const ABSENTEE_BID_LOT_NOTIFICATION = 'AbsenteeBidLotNotification';
const ABSENTEE_BIDS_DISPLAY = 'AbsenteeBidsDisplay';
const ADD_BIDS_TO_WATCHLIST = 'AddBidsToWatchlist';
const ADD_DESCRIPTION_IN_LOT_NAME_COLUMN = 'AddDescriptionInLotNameColumn';
const ALL_USER_REQUIRE_CC_AUTH = 'AllUserRequireCcAuth';
const ALLOW_ANYONE_TO_TELL_A_FRIEND = 'AllowAnyoneToTellAFriend';
const ALLOW_FORCE_BID = 'AllowForceBid';
const ALLOW_MANUAL_BIDDER_FOR_FLAGGED_BIDDERS = 'AllowManualBidderForFlaggedBidders';
const ALLOW_MULTIBIDS = 'AllowMultibids';
const ASSIGNED_LOTS_RESTRICTION = 'AssignedLotsRestriction';
const AUCTION_DOMAIN_MODE = 'AuctionDomainMode';
const AUCTION_LINKS_TO = 'AuctionLinksTo';
const BID_TRACKING_CODE = 'BidTrackingCode';
const BLACKLIST_PHRASE = 'BlacklistPhrase';
const BLOCK_SOLD_LOTS = 'BlockSoldLots';
const BUY_NOW_UNSOLD = 'BuyNowUnsold';
const CONDITIONAL_SALES = 'ConditionalSales';
const CONFIRM_ADDRESS_SALE = 'ConfirmAddressSale';
const CONFIRM_MULTIBIDS = 'ConfirmMultibids';
const CONFIRM_MULTIBIDS_TEXT = 'ConfirmMultibidsText';
const CONFIRM_TERMS_AND_CONDITIONS_SALE = 'ConfirmTermsAndConditionsSale';
const CONFIRM_TIMED_BID = 'ConfirmTimedBid';
const CONFIRM_TIMED_BID_TEXT = 'ConfirmTimedBidText';
const DISPLAY_BIDDER_INFO = 'DisplayBidderInfo';
const DISPLAY_ITEM_NUM = 'DisplayItemNum';
const DISPLAY_QUANTITY = 'DisplayQuantity';
const ENABLE_SECOND_CHANCE = 'EnableSecondChance';
const EXTEND_TIME_TIMED = 'ExtendTimeTimed';
const GA_BID_TRACKING = 'GaBidTracking';
const GROUPED_LOTS_HAMMER_PRICE_CALCULATION = 'GroupedLotsHammerPriceCalculation';
const HAMMER_PRICE_BP = 'HammerPriceBp';
const HIDE_BIDDER_NUMBER = 'HideBidderNumber';
const HIDE_MOVETOSALE = 'HideMovetosale';
const HIDE_UNSOLD_LOTS = 'HideUnsoldLots';
const INLINE_BID_CONFIRM = 'InlineBidConfirm';
const ITEM_NUM_LOCK = 'ItemNumLock';
const LOT_STATUS = 'LotStatus';
const MAX_STORED_SEARCHES = 'MaxStoredSearches';
const NEXT_BID_BUTTON = 'NextBidButton';
const NO_LOWER_MAXBID = 'NoLowerMaxbid';
const NOTIFY_ABSENTEE_BIDDERS = 'NotifyAbsenteeBidders';
const ON_AUCTION_REGISTRATION = 'OnAuctionRegistration';
const ON_AUCTION_REGISTRATION_AMOUNT = 'OnAuctionRegistrationAmount';
const ON_AUCTION_REGISTRATION_AUTO = 'OnAuctionRegistrationAuto';
const ON_AUCTION_REGISTRATION_EXPIRES = 'OnAuctionRegistrationExpires';
const ONLY_ONE_REG_EMAIL = 'OnlyOneRegEmail';
const PAYMENT_TRACKING_CODE = 'PaymentTrackingCode';
const PLACE_BID_REQUIRE_CC = 'PlaceBidRequireCc';
const QUANTITY_DIGITS = 'QuantityDigits';
const REG_CONFIRM_AUTO_APPROVE = 'RegConfirmAutoApprove';
const REG_CONFIRM_PAGE = 'RegConfirmPage';
const REG_CONFIRM_PAGE_CONTENT = 'RegConfirmPageContent';
const REG_USE_HIGH_BIDDER = 'RegUseHighBidder';
const REQUIRE_ON_INC_BIDS = 'RequireOnIncBids';
const REQUIRE_REENTER_CC = 'RequireReenterCc';
const RESERVE_MET_NOTICE = 'ReserveMetNotice';
const RESERVE_NOT_MET_NOTICE = 'ReserveNotMetNotice';
const SEND_RESULTS_ONCE = 'SendResultsOnce';
const SHIPPING_INFO_BOX = 'ShippingInfoBox';
const SHOW_AUCTION_STARTS_ENDING = 'ShowAuctionStartsEnding';
const SHOW_COUNTDOWN_SECONDS = 'ShowCountdownSeconds';
const SHOW_HIGH_EST = 'ShowHighEst';
const SHOW_LOW_EST = 'ShowLowEst';
const SHOW_WINNER_IN_CATALOG = 'ShowWinnerInCatalog';
const TAKE_MAX_BIDS_UNDER_RESERVE = 'TakeMaxBidsUnderReserve';
const TELL_A_FRIEND = 'TellAFriend';
const TIMED_ABOVE_RESERVE = 'TimedAboveReserve';
const TIMED_ABOVE_STARTING_BID = 'TimedAboveStartingBid';
const USE_ALTERNATE_PDF_CATALOG = 'UseAlternatePdfCatalog';
const VISIBLE_AUCTION_STATUSES = 'VisibleAuctionStatuses';
const AUTH_NET_CLIENT_KEY = 'AuthNetClientKey';
const AUTH_NET_LOGIN = 'AuthNetLogin';
const AUTH_NET_MODE = 'AuthNetMode';
const AUTH_NET_TRANKEY = 'AuthNetTrankey';
const CC_PAYMENT_AUTH_NET = 'CcPaymentAuthNet';
const CC_PAYMENT_EWAY = 'CcPaymentEway';
const EWAY_ACCOUNT_TYPE = 'EwayAccountType';
const EWAY_API_KEY = 'EwayApiKey';
const EWAY_ENCRYPTION_KEY = 'EwayEncryptionKey';
const EWAY_PASSWORD = 'EwayPassword';
const CC_PAYMENT_NMI = 'CcPaymentNmi';
const NMI_MODE = 'NmiMode';
const NMI_PUBLIC_KEY = 'NmiPublicKey';
const NMI_SECURITY_KEY = 'NmiSecurityKey';
const ACH_PAYMENT_OPAYO = 'AchPaymentOpayo';
const CC_PAYMENT_OPAYO = 'CcPaymentOpayo';
const OPAYO_3DSECURE = 'Opayo3dsecure';
const OPAYO_AUTH_TRANSACTION_TYPE = 'OpayoAuthTransactionType';
const OPAYO_AVSCV2 = 'OpayoAvscv2';
const OPAYO_CURRENCY = 'OpayoCurrency';
const OPAYO_MODE = 'OpayoMode';
const OPAYO_SEND_EMAIL = 'OpayoSendEmail';
const OPAYO_TOKEN = 'OpayoToken';
const OPAYO_VENDOR_NAME = 'OpayoVendorName';
const ENABLE_PAYPAL_PAYMENTS = 'EnablePaypalPayments';
const PAYPAL_ACCOUNT_TYPE = 'PaypalAccountType';
const PAYPAL_BN_CODE = 'PaypalBnCode';
const PAYPAL_EMAIL = 'PaypalEmail';
const PAYPAL_IDENTITY_TOKEN = 'PaypalIdentityToken';
const ENABLE_SMART_PAYMENTS = 'EnableSmartPayments';
const SMART_PAY_ACCOUNT_TYPE = 'SmartPayAccountType';
const SMART_PAY_MERCHANT_ACCOUNT = 'SmartPayMerchantAccount';
const SMART_PAY_MERCHANT_MODE = 'SmartPayMerchantMode';
const SMART_PAY_MODE = 'SmartPayMode';
const SMART_PAY_SHARED_SECRET = 'SmartPaySharedSecret';
const SMART_PAY_SKIN_CODE = 'SmartPaySkinCode';
const ACH_PAYMENT_PAY_TRACE = 'AchPaymentPayTrace';
const CC_PAYMENT_PAY_TRACE = 'CcPaymentPayTrace';
const PAY_TRACE_CIM = 'PayTraceCim';
const PAY_TRACE_MODE = 'PayTraceMode';
const PAY_TRACE_PASSWORD = 'PayTracePassword';
const PAY_TRACE_USERNAME = 'PayTraceUsername';
const APPLY_CASH_DISCOUNTS_ONLY_ON_TOTAL_HP = 'ApplyCashDiscountsOnlyOnTotalHp';
const AUTO_INVOICE = 'AutoInvoice';
const CASH_DISCOUNT = 'CashDiscount';
const CATEGORY_IN_INVOICE = 'CategoryInInvoice';
const DEFAULT_INVOICE_NOTES = 'DefaultInvoiceNotes';
const DEFAULT_LOT_ITEM_NO_TAX_OOS = 'DefaultLotItemNoTaxOos';
const DEFAULT_POST_AUC_IMPORT_PREMIUM = 'DefaultPostAucImportPremium';
const INVOICE_BP_TAX_SCHEMA_ID = 'InvoiceBpTaxSchemaId';
const INVOICE_HP_TAX_SCHEMA_ID = 'InvoiceHpTaxSchemaId';
const INVOICE_IDENTIFICATION = 'InvoiceIdentification';
const INVOICE_ITEM_DESCRIPTION = 'InvoiceItemDescription';
const INVOICE_ITEM_SALES_TAX = 'InvoiceItemSalesTax';
const INVOICE_ITEM_SALES_TAX_APPLICATION = 'InvoiceItemSalesTaxApplication';
const INVOICE_ITEM_SALES_TAX_DETERMINATION = 'InvoiceItemSalesTaxDetermination';
const INVOICE_ITEM_SEPARATE_TAX = 'InvoiceItemSeparateTax';
const INVOICE_LOGO = 'InvoiceLogo';
const INVOICE_SERVICES_TAX_SCHEMA_ID = 'InvoiceServicesTaxSchemaId';
const INVOICE_TAX_DESIGNATION_STRATEGY = 'InvoiceTaxDesignationStrategy';
const IS_SOLD_UNDER_CONDITION = 'IsSoldUnderCondition';
const KEEP_DECIMAL_INVOICE = 'KeepDecimalInvoice';
const MULTIPLE_SALE_INVOICE = 'MultipleSaleInvoice';
const ONE_SALE_GROUPED_INVOICE = 'OneSaleGroupedInvoice';
const PROCESSING_CHARGE = 'ProcessingCharge';
const QUANTITY_IN_INVOICE = 'QuantityInInvoice';
const RENDER_LOT_CUSTOM_FIELDS_IN_SEPARATE_ROW_FOR_INVOICE = 'RenderLotCustomFieldsInSeparateRowForInvoice';
const SALES_TAX = 'SalesTax';
const SALES_TAX_SERVICES = 'SalesTaxServices';
const SAM_TAX = 'SamTax';
const SAM_TAX_DEFAULT_COUNTRY = 'SamTaxDefaultCountry';
const SHIPPING_CHARGE = 'ShippingCharge';
const FAILED_LOGIN_ATTEMPT_LOCKOUT_TIMEOUT = 'FailedLoginAttemptLockoutTimeout';
const FAILED_LOGIN_ATTEMPT_TIME_INCREMENT = 'FailedLoginAttemptTimeIncrement';
const PW_HISTORY_REPEAT = 'PwHistoryRepeat';
const PW_MAX_CONSEQ_LETTER = 'PwMaxConseqLetter';
const PW_MAX_CONSEQ_NUM = 'PwMaxConseqNum';
const PW_MAX_SEQ_LETTER = 'PwMaxSeqLetter';
const PW_MAX_SEQ_NUM = 'PwMaxSeqNum';
const PW_MIN_LEN = 'PwMinLen';
const PW_MIN_LETTER = 'PwMinLetter';
const PW_MIN_NUM = 'PwMinNum';
const PW_MIN_SPECIAL = 'PwMinSpecial';
const PW_RENEW = 'PwRenew';
const PW_REQ_MIXED_CASE = 'PwReqMixedCase';
const PW_TMP_TIMEOUT = 'PwTmpTimeout';
const CHARGE_CONSIGNOR_COMMISSION = 'ChargeConsignorCommission';
const CONSIGNOR_COMMISSION_ID = 'ConsignorCommissionId';
const CONSIGNOR_SOLD_FEE_ID = 'ConsignorSoldFeeId';
const CONSIGNOR_UNSOLD_FEE_ID = 'ConsignorUnsoldFeeId';
const MULTIPLE_SALE_SETTLEMENT = 'MultipleSaleSettlement';
const QUANTITY_IN_SETTLEMENT = 'QuantityInSettlement';
const RENDER_LOT_CUSTOM_FIELDS_IN_SEPARATE_ROW_FOR_SETTLEMENT = 'RenderLotCustomFieldsInSeparateRowForSettlement';
const SETTLEMENT_LOGO = 'SettlementLogo';
const SETTLEMENT_UNPAID_LOTS = 'SettlementUnpaidLots';
const STLM_CHECK_ADDRESS_COORD_X = 'StlmCheckAddressCoordX';
const STLM_CHECK_ADDRESS_COORD_Y = 'StlmCheckAddressCoordY';
const STLM_CHECK_ADDRESS_TEMPLATE = 'StlmCheckAddressTemplate';
const STLM_CHECK_AMOUNT_COORD_X = 'StlmCheckAmountCoordX';
const STLM_CHECK_AMOUNT_COORD_Y = 'StlmCheckAmountCoordY';
const STLM_CHECK_AMOUNT_SPELLING_COORD_X = 'StlmCheckAmountSpellingCoordX';
const STLM_CHECK_AMOUNT_SPELLING_COORD_Y = 'StlmCheckAmountSpellingCoordY';
const STLM_CHECK_DATE_COORD_X = 'StlmCheckDateCoordX';
const STLM_CHECK_DATE_COORD_Y = 'StlmCheckDateCoordY';
const STLM_CHECK_ENABLED = 'StlmCheckEnabled';
const STLM_CHECK_FILE = 'StlmCheckFile';
const STLM_CHECK_HEIGHT = 'StlmCheckHeight';
const STLM_CHECK_MEMO_COORD_X = 'StlmCheckMemoCoordX';
const STLM_CHECK_MEMO_COORD_Y = 'StlmCheckMemoCoordY';
const STLM_CHECK_MEMO_TEMPLATE = 'StlmCheckMemoTemplate';
const STLM_CHECK_NAME_COORD_X = 'StlmCheckNameCoordX';
const STLM_CHECK_NAME_COORD_Y = 'StlmCheckNameCoordY';
const STLM_CHECK_PAYEE_TEMPLATE = 'StlmCheckPayeeTemplate';
const STLM_CHECK_PER_PAGE = 'StlmCheckPerPage';
const STLM_CHECK_REPEAT_COUNT = 'StlmCheckRepeatCount';
const ALLOW_ACCOUNT_ADMIN_ADD_FLOOR_BIDDER = 'AllowAccountAdminAddFloorBidder';
const ALLOW_ACCOUNT_ADMIN_MAKE_BIDDER_PREFERRED = 'AllowAccountAdminMakeBidderPreferred';
const ALLOW_CONSIGNOR_DELETE_ITEM = 'AllowConsignorDeleteItem';
const AUCTION_CATALOG_ACCESS = 'AuctionCatalogAccess';
const AUCTION_INFO_ACCESS = 'AuctionInfoAccess';
const AUCTION_VISIBILITY_ACCESS = 'AuctionVisibilityAccess';
const AUTO_ASSIGN_ACCOUNT_ADMIN_PRIVILEGES = 'AutoAssignAccountAdminPrivileges';
const AUTO_CONSIGNOR_PRIVILEGES = 'AutoConsignorPrivileges';
const DONT_MAKE_USER_BIDDER = 'DontMakeUserBidder';
const LIVE_VIEW_ACCESS = 'LiveViewAccess';
const LOT_BIDDING_HISTORY_ACCESS = 'LotBiddingHistoryAccess';
const LOT_BIDDING_INFO_ACCESS = 'LotBiddingInfoAccess';
const LOT_DETAILS_ACCESS = 'LotDetailsAccess';
const LOT_STARTING_BID_ACCESS = 'LotStartingBidAccess';
const LOT_WINNING_BID_ACCESS = 'LotWinningBidAccess';
const SHARE_USER_INFO = 'ShareUserInfo';
const SHARE_USER_STATS = 'ShareUserStats';
const OUTBID_NOTIFICATION_ENABLED = 'OutbidNotificationEnabled';
const OUTBID_SHORT_NOTIFICATION_TEMPLATE = 'OutbidShortNotificationTemplate';
const UPCOMING_LOTS_NOTIFICATION_ENABLED = 'UpcomingLotsNotificationEnabled';
const UPCOMING_LOTS_SHORT_NOTIFICATION_TEMPLATE = 'UpcomingLotsShortNotificationTemplate';
const SMTP_AUTH = 'SmtpAuth';
const SMTP_PASSWORD = 'SmtpPassword';
const SMTP_PORT = 'SmtpPort';
const SMTP_SERVER = 'SmtpServer';
const SMTP_SSL_TYPE = 'SmtpSslType';
const SMTP_USERNAME = 'SmtpUsername';
const AUC_INC_ACCOUNT_ID = 'AucIncAccountId';
const AUC_INC_BUSINESS_ID = 'AucIncBusinessId';
const AUC_INC_DHL = 'AucIncDhl';
const AUC_INC_DHL_ACCESS_KEY = 'AucIncDhlAccessKey';
const AUC_INC_DHL_POSTAL_CODE = 'AucIncDhlPostalCode';
const AUC_INC_DIMENSION_TYPE = 'AucIncDimensionType';
const AUC_INC_FEDEX = 'AucIncFedex';
const AUC_INC_HEIGHT_CUST_FIELD_ID = 'AucIncHeightCustFieldId';
const AUC_INC_LENGTH_CUST_FIELD_ID = 'AucIncLengthCustFieldId';
const AUC_INC_METHOD = 'AucIncMethod';
const AUC_INC_PICKUP = 'AucIncPickup';
const AUC_INC_UPS = 'AucIncUps';
const AUC_INC_USPS = 'AucIncUsps';
const AUC_INC_WEIGHT_CUST_FIELD_ID = 'AucIncWeightCustFieldId';
const AUC_INC_WEIGHT_TYPE = 'AucIncWeightType';
const AUC_INC_WIDTH_CUST_FIELD_ID = 'AucIncWidthCustFieldId';
const ACTIVATE_BIDDING_BUTTON = 'ActivateBiddingButton';
const ALLOW_BIDDING_DURING_START_GAP_HYBRID = 'AllowBiddingDuringStartGapHybrid';
const AUTO_CREATE_FLOOR_BIDDER_RECORD = 'AutoCreateFloorBidderRecord';
const BID_ACCEPTED_SOUND = 'BidAcceptedSound';
const BID_SOUND = 'BidSound';
const BUY_NOW_RESTRICTION = 'BuyNowRestriction';
const CLEAR_MESSAGE_CENTER = 'ClearMessageCenter';
const CLEAR_MESSAGE_CENTER_LOG = 'ClearMessageCenterLog';
const DEFAULT_IMAGE_PREVIEW = 'DefaultImagePreview';
const DELAY_AFTER_BID_ACCEPTED = 'DelayAfterBidAccepted';
const DELAY_BLOCK_SELL = 'DelayBlockSell';
const DELAY_SOLD_ITEM = 'DelaySoldItem';
const ENABLE_CONSIGNOR_COMPANY_CLERKING = 'EnableConsignorCompanyClerking';
const EXTEND_TIME_HYBRID = 'ExtendTimeHybrid';
const FAIR_WARNING_SOUND = 'FairWarningSound';
const FAIR_WARNINGS_HYBRID = 'FairWarningsHybrid';
const FLOOR_BIDDERS_FROM_DROPDOWN = 'FloorBiddersFromDropdown';
const LIVE_BIDDING_COUNTDOWN = 'LiveBiddingCountdown';
const LIVE_CHAT = 'LiveChat';
const LIVE_CHAT_VIEW_ALL = 'LiveChatViewAll';
const LOT_START_GAP_TIME_HYBRID = 'LotStartGapTimeHybrid';
const MULTI_CURRENCY = 'MultiCurrency';
const ONLINE_BID_INCOMING_ON_ADMIN_SOUND = 'OnlineBidIncomingOnAdminSound';
const ONLINEBID_BUTTON_INFO = 'OnlinebidButtonInfo';
const OUT_BID_SOUND = 'OutBidSound';
const PASSED_SOUND = 'PassedSound';
const PENDING_ACTION_TIMEOUT_HYBRID = 'PendingActionTimeoutHybrid';
const PLACE_BID_SOUND = 'PlaceBidSound';
const RESET_TIMER_ON_UNDO_HYBRID = 'ResetTimerOnUndoHybrid';
const SHOW_PORT_NOTICE = 'ShowPortNotice';
const SLIDESHOW_PROJECTOR_ONLY = 'SlideshowProjectorOnly';
const SOLD_NOT_WON_SOUND = 'SoldNotWonSound';
const SOLD_WON_SOUND = 'SoldWonSound';
const SUGGESTED_STARTING_BID = 'SuggestedStartingBid';
const SWITCH_FRAME_SECONDS = 'SwitchFrameSeconds';
const TWENTY_MESSAGES_MAX = 'TwentyMessagesMax';
const ADMIN_DATE_FORMAT = 'AdminDateFormat';
const ADMIN_LANGUAGE = 'AdminLanguage';
const DEFAULT_COUNTRY = 'DefaultCountry';
const DEFAULT_EXPORT_ENCODING = 'DefaultExportEncoding';
const DEFAULT_IMPORT_ENCODING = 'DefaultImportEncoding';
const EMAIL_FORMAT = 'EmailFormat';
const FORCE_MAIN_ACCOUNT_DOMAIN_MODE = 'ForceMainAccountDomainMode';
const GRAPHQL_CORS_ALLOWED_ORIGINS = 'GraphqlCorsAllowedOrigins';
const LOCALE = 'Locale';
const LOT_CATEGORY_GLOBAL_ORDER_AVAILABLE = 'LotCategoryGlobalOrderAvailable';
const PAYMENT_REMINDER_EMAIL_FREQUENCY = 'PaymentReminderEmailFrequency';
const PICKUP_REMINDER_EMAIL_FREQUENCY = 'PickupReminderEmailFrequency';
const PRIMARY_CURRENCY_ID = 'PrimaryCurrencyId';
const PUBLIC_ROUTING_FOR_EACH_ACCOUNT = 'PublicRoutingForEachAccount';
const REG_REMINDER_EMAIL = 'RegReminderEmail';
const SUPPORT_EMAIL = 'SupportEmail';
const TIMEZONE_ID = 'TimezoneId';
const US_NUMBER_FORMATTING = 'UsNumberFormatting';
const VIEW_LANGUAGE = 'ViewLanguage';
const ADMIN_CSS_FILE = 'AdminCssFile';
const ADMIN_CUSTOM_JS_URL = 'AdminCustomJsUrl';
const AUCTION_DATE_IN_SEARCH = 'AuctionDateInSearch';
const AUCTION_DETAIL_TEMPLATE = 'AuctionDetailTemplate';
const AUCTIONEER_FILTER = 'AuctioneerFilter';
const CONSIGNOR_SCHEDULE_HEADER = 'ConsignorScheduleHeader';
const CUSTOM_TEMPLATE_HIDE_EMPTY_FIELDS_FOR_ALL_CATEGORIES = 'CustomTemplateHideEmptyFieldsForAllCategories';
const CUSTOM_TEMPLATE_HIDE_EMPTY_FIELDS_FOR_NO_CATEGORY_LOT = 'CustomTemplateHideEmptyFieldsForNoCategoryLot';
const EXTERNAL_JAVASCRIPT = 'ExternalJavascript';
const IMAGE_AUTO_ORIENT = 'ImageAutoOrient';
const IMAGE_OPTIMIZE = 'ImageOptimize';
const ITEMS_PER_PAGE = 'ItemsPerPage';
const LANDING_PAGE = 'LandingPage';
const LANDING_PAGE_URL = 'LandingPageUrl';
const LOGO_LINK = 'LogoLink';
const LOT_ITEM_DETAIL_TEMPLATE = 'LotItemDetailTemplate';
const LOT_ITEM_DETAIL_TEMPLATE_FOR_NO_CATEGORY = 'LotItemDetailTemplateForNoCategory';
const MAIN_MENU_AUCTION_TARGET = 'MainMenuAuctionTarget';
const PAGE_HEADER = 'PageHeader';
const PAGE_HEADER_TYPE = 'PageHeaderType';
const PAGE_REDIRECTION = 'PageRedirection';
const RESPONSIVE_CSS_FILE = 'ResponsiveCssFile';
const RESPONSIVE_HEADER_ADDRESS = 'ResponsiveHeaderAddress';
const RESPONSIVE_HTML_HEAD_CODE = 'ResponsiveHtmlHeadCode';
const RTB_DETAIL_TEMPLATE = 'RtbDetailTemplate';
const RTB_DETAIL_TEMPLATE_FOR_NO_CATEGORY = 'RtbDetailTemplateForNoCategory';
const SEARCH_RESULTS_FORMAT = 'SearchResultsFormat';
const SHOW_MEMBER_MENU_ITEMS = 'ShowMemberMenuItems';
const AUTHORIZATION_USE = 'AuthorizationUse';
const AUTO_INCREMENT_CUSTOMER_NUM = 'AutoIncrementCustomerNum';
const AUTO_PREFERRED = 'AutoPreferred';
const AUTO_PREFERRED_CREDIT_CARD = 'AutoPreferredCreditCard';
const DEFAULT_COUNTRY_CODE = 'DefaultCountryCode';
const ENABLE_CONSIGNOR_PAYMENT_INFO = 'EnableConsignorPaymentInfo';
const ENABLE_RESELLER_REG = 'EnableResellerReg';
const ENABLE_USER_COMPANY = 'EnableUserCompany';
const ENABLE_USER_RESUME = 'EnableUserResume';
const HIDE_COUNTRY_CODE_SELECTION = 'HideCountryCodeSelection';
const INCLUDE_ACH_INFO = 'IncludeAchInfo';
const INCLUDE_BASIC_INFO = 'IncludeBasicInfo';
const INCLUDE_BILLING_INFO = 'IncludeBillingInfo';
const INCLUDE_CC_INFO = 'IncludeCcInfo';
const INCLUDE_USER_PREFERENCES = 'IncludeUserPreferences';
const MAKE_PERMANENT_BIDDER_NUM = 'MakePermanentBidderNum';
const MANDATORY_ACH_INFO = 'MandatoryAchInfo';
const MANDATORY_BASIC_INFO = 'MandatoryBasicInfo';
const MANDATORY_BILLING_INFO = 'MandatoryBillingInfo';
const MANDATORY_CC_INFO = 'MandatoryCcInfo';
const MANDATORY_USER_PREFERENCES = 'MandatoryUserPreferences';
const NEWSLETTER_OPTION = 'NewsletterOption';
const NO_AUTO_AUTHORIZATION = 'NoAutoAuthorization';
const ON_REGISTRATION = 'OnRegistration';
const ON_REGISTRATION_AMOUNT = 'OnRegistrationAmount';
const ON_REGISTRATION_EXPIRES = 'OnRegistrationExpires';
const PROFILE_BILLING_OPTIONAL = 'ProfileBillingOptional';
const PROFILE_SHIPPING_OPTIONAL = 'ProfileShippingOptional';
const REGISTRATION_REQUIRE_CC = 'RegistrationRequireCc';
const REQUIRE_IDENTIFICATION = 'RequireIdentification';
const REVOKE_PREFERRED_BIDDER = 'RevokePreferredBidder';
const SAVE_RESELLER_CERT_IN_PROFILE = 'SaveResellerCertInProfile';
const SEND_CONFIRMATION_LINK = 'SendConfirmationLink';
const SHOW_USER_RESUME = 'ShowUserResume';
const SIGNUP_TRACKING_CODE = 'SignupTrackingCode';
const SIMPLIFIED_SIGNUP = 'SimplifiedSignup';
const STAY_ON_ACCOUNT_DOMAIN = 'StayOnAccountDomain';
const VERIFY_EMAIL = 'VerifyEmail';
const WATCHLIST_REMINDER_EMAIL = 'WatchlistReminderEmail';
const typeMap = {
  'AuctionListingPageDesc': {
    'type': 'string',
    'property': 'AuctionListingPageDesc',
    'entity': 'SettingSeo'
  },
  'AuctionListingPageKeyword': {
    'type': 'string',
    'property': 'AuctionListingPageKeyword',
    'entity': 'SettingSeo'
  },
  'AuctionListingPageTitle': {
    'type': 'string',
    'property': 'AuctionListingPageTitle',
    'entity': 'SettingSeo'
  },
  'AuctionPageDesc': {
    'type': 'string',
    'property': 'AuctionPageDesc',
    'entity': 'SettingSeo'
  },
  'AuctionPageKeyword': {
    'type': 'string',
    'property': 'AuctionPageKeyword',
    'entity': 'SettingSeo'
  },
  'AuctionPageTitle': {
    'type': 'string',
    'property': 'AuctionPageTitle',
    'entity': 'SettingSeo'
  },
  'AuctionSeoUrlTemplate': {
    'type': 'string',
    'property': 'AuctionSeoUrlTemplate',
    'entity': 'SettingSeo'
  },
  'LoginDesc': {
    'type': 'string',
    'property': 'LoginDesc',
    'entity': 'SettingSeo'
  },
  'LoginKeyword': {
    'type': 'string',
    'property': 'LoginKeyword',
    'entity': 'SettingSeo'
  },
  'LoginTitle': {
    'type': 'string',
    'property': 'LoginTitle',
    'entity': 'SettingSeo'
  },
  'LotPageDesc': {
    'type': 'string',
    'property': 'LotPageDesc',
    'entity': 'SettingSeo'
  },
  'LotPageKeyword': {
    'type': 'string',
    'property': 'LotPageKeyword',
    'entity': 'SettingSeo'
  },
  'LotPageTitle': {
    'type': 'string',
    'property': 'LotPageTitle',
    'entity': 'SettingSeo'
  },
  'LotSeoUrlTemplate': {
    'type': 'string',
    'property': 'LotSeoUrlTemplate',
    'entity': 'SettingSeo'
  },
  'SearchResultsPageDesc': {
    'type': 'string',
    'property': 'SearchResultsPageDesc',
    'entity': 'SettingSeo'
  },
  'SearchResultsPageKeyword': {
    'type': 'string',
    'property': 'SearchResultsPageKeyword',
    'entity': 'SettingSeo'
  },
  'SearchResultsPageTitle': {
    'type': 'string',
    'property': 'SearchResultsPageTitle',
    'entity': 'SettingSeo'
  },
  'SignupDesc': {
    'type': 'string',
    'property': 'SignupDesc',
    'entity': 'SettingSeo'
  },
  'SignupKeyword': {
    'type': 'string',
    'property': 'SignupKeyword',
    'entity': 'SettingSeo'
  },
  'SignupTitle': {
    'type': 'string',
    'property': 'SignupTitle',
    'entity': 'SettingSeo'
  },
  'AboveReserve': {
    'type': 'boolean',
    'property': 'AboveReserve',
    'entity': 'SettingAuction'
  },
  'AboveStartingBid': {
    'type': 'boolean',
    'property': 'AboveStartingBid',
    'entity': 'SettingAuction'
  },
  'AbsenteeBidLotNotification': {
    'type': 'boolean',
    'property': 'AbsenteeBidLotNotification',
    'entity': 'SettingAuction'
  },
  'AbsenteeBidsDisplay': {
    'type': 'string',
    'property': 'AbsenteeBidsDisplay',
    'entity': 'SettingAuction'
  },
  'AddBidsToWatchlist': {
    'type': 'boolean',
    'property': 'AddBidsToWatchlist',
    'entity': 'SettingAuction'
  },
  'AddDescriptionInLotNameColumn': {
    'type': 'boolean',
    'property': 'AddDescriptionInLotNameColumn',
    'entity': 'SettingAuction'
  },
  'AllUserRequireCcAuth': {
    'type': 'boolean',
    'property': 'AllUserRequireCcAuth',
    'entity': 'SettingAuction'
  },
  'AllowAnyoneToTellAFriend': {
    'type': 'boolean',
    'property': 'AllowAnyoneToTellAFriend',
    'entity': 'SettingAuction'
  },
  'AllowForceBid': {
    'type': 'boolean',
    'property': 'AllowForceBid',
    'entity': 'SettingAuction'
  },
  'AllowManualBidderForFlaggedBidders': {
    'type': 'boolean',
    'property': 'AllowManualBidderForFlaggedBidders',
    'entity': 'SettingAuction'
  },
  'AllowMultibids': {
    'type': 'boolean',
    'property': 'AllowMultibids',
    'entity': 'SettingAuction'
  },
  'AssignedLotsRestriction': {
    'type': 'integer',
    'property': 'AssignedLotsRestriction',
    'entity': 'SettingAuction'
  },
  'AuctionDomainMode': {
    'type': 'string',
    'property': 'AuctionDomainMode',
    'entity': 'SettingAuction'
  },
  'AuctionLinksTo': {
    'type': 'integer',
    'property': 'AuctionLinksTo',
    'entity': 'SettingAuction'
  },
  'BidTrackingCode': {
    'type': 'string',
    'property': 'BidTrackingCode',
    'entity': 'SettingAuction'
  },
  'BlacklistPhrase': {
    'type': 'string',
    'property': 'BlacklistPhrase',
    'entity': 'SettingAuction'
  },
  'BlockSoldLots': {
    'type': 'boolean',
    'property': 'BlockSoldLots',
    'entity': 'SettingAuction'
  },
  'BuyNowUnsold': {
    'type': 'boolean',
    'property': 'BuyNowUnsold',
    'entity': 'SettingAuction'
  },
  'ConditionalSales': {
    'type': 'boolean',
    'property': 'ConditionalSales',
    'entity': 'SettingAuction'
  },
  'ConfirmAddressSale': {
    'type': 'boolean',
    'property': 'ConfirmAddressSale',
    'entity': 'SettingAuction'
  },
  'ConfirmMultibids': {
    'type': 'boolean',
    'property': 'ConfirmMultibids',
    'entity': 'SettingAuction'
  },
  'ConfirmMultibidsText': {
    'type': 'string',
    'property': 'ConfirmMultibidsText',
    'entity': 'SettingAuction'
  },
  'ConfirmTermsAndConditionsSale': {
    'type': 'boolean',
    'property': 'ConfirmTermsAndConditionsSale',
    'entity': 'SettingAuction'
  },
  'ConfirmTimedBid': {
    'type': 'boolean',
    'property': 'ConfirmTimedBid',
    'entity': 'SettingAuction'
  },
  'ConfirmTimedBidText': {
    'type': 'string',
    'property': 'ConfirmTimedBidText',
    'entity': 'SettingAuction'
  },
  'DisplayBidderInfo': {
    'type': 'string',
    'property': 'DisplayBidderInfo',
    'entity': 'SettingAuction'
  },
  'DisplayItemNum': {
    'type': 'boolean',
    'property': 'DisplayItemNum',
    'entity': 'SettingAuction'
  },
  'DisplayQuantity': {
    'type': 'boolean',
    'property': 'DisplayQuantity',
    'entity': 'SettingAuction'
  },
  'EnableSecondChance': {
    'type': 'boolean',
    'property': 'EnableSecondChance',
    'entity': 'SettingAuction'
  },
  'ExtendTimeTimed': {
    'type': 'integer',
    'property': 'ExtendTimeTimed',
    'entity': 'SettingAuction',
    'nullable': true
  },
  'GaBidTracking': {
    'type': 'boolean',
    'property': 'GaBidTracking',
    'entity': 'SettingAuction'
  },
  'GroupedLotsHammerPriceCalculation': {
    'type': 'boolean',
    'property': 'GroupedLotsHammerPriceCalculation',
    'entity': 'SettingAuction'
  },
  'HammerPriceBp': {
    'type': 'boolean',
    'property': 'HammerPriceBp',
    'entity': 'SettingAuction'
  },
  'HideBidderNumber': {
    'type': 'boolean',
    'property': 'HideBidderNumber',
    'entity': 'SettingAuction'
  },
  'HideMovetosale': {
    'type': 'boolean',
    'property': 'HideMovetosale',
    'entity': 'SettingAuction'
  },
  'HideUnsoldLots': {
    'type': 'boolean',
    'property': 'HideUnsoldLots',
    'entity': 'SettingAuction'
  },
  'InlineBidConfirm': {
    'type': 'boolean',
    'property': 'InlineBidConfirm',
    'entity': 'SettingAuction'
  },
  'ItemNumLock': {
    'type': 'boolean',
    'property': 'ItemNumLock',
    'entity': 'SettingAuction'
  },
  'LotStatus': {
    'type': 'integer',
    'property': 'LotStatus',
    'entity': 'SettingAuction',
    'nullable': true
  },
  'MaxStoredSearches': {
    'type': 'integer',
    'property': 'MaxStoredSearches',
    'entity': 'SettingAuction',
    'nullable': true
  },
  'NextBidButton': {
    'type': 'boolean',
    'property': 'NextBidButton',
    'entity': 'SettingAuction'
  },
  'NoLowerMaxbid': {
    'type': 'boolean',
    'property': 'NoLowerMaxbid',
    'entity': 'SettingAuction'
  },
  'NotifyAbsenteeBidders': {
    'type': 'boolean',
    'property': 'NotifyAbsenteeBidders',
    'entity': 'SettingAuction'
  },
  'OnAuctionRegistration': {
    'type': 'integer',
    'property': 'OnAuctionRegistration',
    'entity': 'SettingAuction'
  },
  'OnAuctionRegistrationAmount': {
    'type': 'double',
    'property': 'OnAuctionRegistrationAmount',
    'entity': 'SettingAuction',
    'nullable': true
  },
  'OnAuctionRegistrationAuto': {
    'type': 'boolean',
    'property': 'OnAuctionRegistrationAuto',
    'entity': 'SettingAuction'
  },
  'OnAuctionRegistrationExpires': {
    'type': 'integer',
    'property': 'OnAuctionRegistrationExpires',
    'entity': 'SettingAuction',
    'nullable': true
  },
  'OnlyOneRegEmail': {
    'type': 'boolean',
    'property': 'OnlyOneRegEmail',
    'entity': 'SettingAuction'
  },
  'PaymentTrackingCode': {
    'type': 'string',
    'property': 'PaymentTrackingCode',
    'entity': 'SettingAuction'
  },
  'PlaceBidRequireCc': {
    'type': 'boolean',
    'property': 'PlaceBidRequireCc',
    'entity': 'SettingAuction'
  },
  'QuantityDigits': {
    'type': 'integer',
    'property': 'QuantityDigits',
    'entity': 'SettingAuction'
  },
  'RegConfirmAutoApprove': {
    'type': 'boolean',
    'property': 'RegConfirmAutoApprove',
    'entity': 'SettingAuction'
  },
  'RegConfirmPage': {
    'type': 'boolean',
    'property': 'RegConfirmPage',
    'entity': 'SettingAuction'
  },
  'RegConfirmPageContent': {
    'type': 'string',
    'property': 'RegConfirmPageContent',
    'entity': 'SettingAuction'
  },
  'RegUseHighBidder': {
    'type': 'boolean',
    'property': 'RegUseHighBidder',
    'entity': 'SettingAuction'
  },
  'RequireOnIncBids': {
    'type': 'boolean',
    'property': 'RequireOnIncBids',
    'entity': 'SettingAuction'
  },
  'RequireReenterCc': {
    'type': 'boolean',
    'property': 'RequireReenterCc',
    'entity': 'SettingAuction'
  },
  'ReserveMetNotice': {
    'type': 'boolean',
    'property': 'ReserveMetNotice',
    'entity': 'SettingAuction'
  },
  'ReserveNotMetNotice': {
    'type': 'boolean',
    'property': 'ReserveNotMetNotice',
    'entity': 'SettingAuction'
  },
  'SendResultsOnce': {
    'type': 'boolean',
    'property': 'SendResultsOnce',
    'entity': 'SettingAuction'
  },
  'ShippingInfoBox': {
    'type': 'integer',
    'property': 'ShippingInfoBox',
    'entity': 'SettingAuction',
    'nullable': true
  },
  'ShowAuctionStartsEnding': {
    'type': 'boolean',
    'property': 'ShowAuctionStartsEnding',
    'entity': 'SettingAuction'
  },
  'ShowCountdownSeconds': {
    'type': 'boolean',
    'property': 'ShowCountdownSeconds',
    'entity': 'SettingAuction'
  },
  'ShowHighEst': {
    'type': 'boolean',
    'property': 'ShowHighEst',
    'entity': 'SettingAuction'
  },
  'ShowLowEst': {
    'type': 'boolean',
    'property': 'ShowLowEst',
    'entity': 'SettingAuction'
  },
  'ShowWinnerInCatalog': {
    'type': 'boolean',
    'property': 'ShowWinnerInCatalog',
    'entity': 'SettingAuction'
  },
  'TakeMaxBidsUnderReserve': {
    'type': 'boolean',
    'property': 'TakeMaxBidsUnderReserve',
    'entity': 'SettingAuction'
  },
  'TellAFriend': {
    'type': 'boolean',
    'property': 'TellAFriend',
    'entity': 'SettingAuction'
  },
  'TimedAboveReserve': {
    'type': 'boolean',
    'property': 'TimedAboveReserve',
    'entity': 'SettingAuction'
  },
  'TimedAboveStartingBid': {
    'type': 'boolean',
    'property': 'TimedAboveStartingBid',
    'entity': 'SettingAuction'
  },
  'UseAlternatePdfCatalog': {
    'type': 'boolean',
    'property': 'UseAlternatePdfCatalog',
    'entity': 'SettingAuction'
  },
  'VisibleAuctionStatuses': {
    'type': 'integer',
    'property': 'VisibleAuctionStatuses',
    'entity': 'SettingAuction',
    'nullable': true
  },
  'AuthNetClientKey': {
    'type': 'string',
    'property': 'AuthNetClientKey',
    'entity': 'SettingBillingAuthorizeNet'
  },
  'AuthNetLogin': {
    'type': 'string',
    'property': 'AuthNetLogin',
    'entity': 'SettingBillingAuthorizeNet'
  },
  'AuthNetMode': {
    'type': 'string',
    'property': 'AuthNetMode',
    'entity': 'SettingBillingAuthorizeNet'
  },
  'AuthNetTrankey': {
    'type': 'string',
    'property': 'AuthNetTrankey',
    'entity': 'SettingBillingAuthorizeNet'
  },
  'CcPaymentAuthNet': {
    'type': 'boolean',
    'property': 'CcPaymentAuthNet',
    'entity': 'SettingBillingAuthorizeNet'
  },
  'CcPaymentEway': {
    'type': 'boolean',
    'property': 'CcPaymentEway',
    'entity': 'SettingBillingEway'
  },
  'EwayAccountType': {
    'type': 'string',
    'property': 'EwayAccountType',
    'entity': 'SettingBillingEway'
  },
  'EwayApiKey': {
    'type': 'string',
    'property': 'EwayApiKey',
    'entity': 'SettingBillingEway'
  },
  'EwayEncryptionKey': {
    'type': 'string',
    'property': 'EwayEncryptionKey',
    'entity': 'SettingBillingEway'
  },
  'EwayPassword': {
    'type': 'string',
    'property': 'EwayPassword',
    'entity': 'SettingBillingEway'
  },
  'CcPaymentNmi': {
    'type': 'boolean',
    'property': 'CcPaymentNmi',
    'entity': 'SettingBillingNmi'
  },
  'NmiMode': {
    'type': 'string',
    'property': 'NmiMode',
    'entity': 'SettingBillingNmi'
  },
  'NmiPublicKey': {
    'type': 'string',
    'property': 'NmiPublicKey',
    'entity': 'SettingBillingNmi'
  },
  'NmiSecurityKey': {
    'type': 'string',
    'property': 'NmiSecurityKey',
    'entity': 'SettingBillingNmi'
  },
  'AchPaymentOpayo': {
    'type': 'boolean',
    'property': 'AchPaymentOpayo',
    'entity': 'SettingBillingOpayo'
  },
  'CcPaymentOpayo': {
    'type': 'boolean',
    'property': 'CcPaymentOpayo',
    'entity': 'SettingBillingOpayo'
  },
  'Opayo3dsecure': {
    'type': 'integer',
    'property': 'Opayo3dsecure',
    'entity': 'SettingBillingOpayo',
    'nullable': true
  },
  'OpayoAuthTransactionType': {
    'type': 'integer',
    'property': 'OpayoAuthTransactionType',
    'entity': 'SettingBillingOpayo'
  },
  'OpayoAvscv2': {
    'type': 'integer',
    'property': 'OpayoAvscv2',
    'entity': 'SettingBillingOpayo',
    'nullable': true
  },
  'OpayoCurrency': {
    'type': 'string',
    'property': 'OpayoCurrency',
    'entity': 'SettingBillingOpayo'
  },
  'OpayoMode': {
    'type': 'string',
    'property': 'OpayoMode',
    'entity': 'SettingBillingOpayo'
  },
  'OpayoSendEmail': {
    'type': 'integer',
    'property': 'OpayoSendEmail',
    'entity': 'SettingBillingOpayo',
    'nullable': true
  },
  'OpayoToken': {
    'type': 'boolean',
    'property': 'OpayoToken',
    'entity': 'SettingBillingOpayo'
  },
  'OpayoVendorName': {
    'type': 'string',
    'property': 'OpayoVendorName',
    'entity': 'SettingBillingOpayo'
  },
  'EnablePaypalPayments': {
    'type': 'boolean',
    'property': 'EnablePaypalPayments',
    'entity': 'SettingBillingPaypal'
  },
  'PaypalAccountType': {
    'type': 'string',
    'property': 'PaypalAccountType',
    'entity': 'SettingBillingPaypal'
  },
  'PaypalBnCode': {
    'type': 'string',
    'property': 'PaypalBnCode',
    'entity': 'SettingBillingPaypal'
  },
  'PaypalEmail': {
    'type': 'string',
    'property': 'PaypalEmail',
    'entity': 'SettingBillingPaypal'
  },
  'PaypalIdentityToken': {
    'type': 'string',
    'property': 'PaypalIdentityToken',
    'entity': 'SettingBillingPaypal'
  },
  'EnableSmartPayments': {
    'type': 'boolean',
    'property': 'EnableSmartPayments',
    'entity': 'SettingBillingSmartPay'
  },
  'SmartPayAccountType': {
    'type': 'string',
    'property': 'SmartPayAccountType',
    'entity': 'SettingBillingSmartPay'
  },
  'SmartPayMerchantAccount': {
    'type': 'string',
    'property': 'SmartPayMerchantAccount',
    'entity': 'SettingBillingSmartPay'
  },
  'SmartPayMerchantMode': {
    'type': 'integer',
    'property': 'SmartPayMerchantMode',
    'entity': 'SettingBillingSmartPay'
  },
  'SmartPayMode': {
    'type': 'string',
    'property': 'SmartPayMode',
    'entity': 'SettingBillingSmartPay'
  },
  'SmartPaySharedSecret': {
    'type': 'string',
    'property': 'SmartPaySharedSecret',
    'entity': 'SettingBillingSmartPay'
  },
  'SmartPaySkinCode': {
    'type': 'string',
    'property': 'SmartPaySkinCode',
    'entity': 'SettingBillingSmartPay'
  },
  'AchPaymentPayTrace': {
    'type': 'boolean',
    'property': 'AchPaymentPayTrace',
    'entity': 'SettingBillingPayTrace'
  },
  'CcPaymentPayTrace': {
    'type': 'boolean',
    'property': 'CcPaymentPayTrace',
    'entity': 'SettingBillingPayTrace'
  },
  'PayTraceCim': {
    'type': 'boolean',
    'property': 'PayTraceCim',
    'entity': 'SettingBillingPayTrace'
  },
  'PayTraceMode': {
    'type': 'string',
    'property': 'PayTraceMode',
    'entity': 'SettingBillingPayTrace'
  },
  'PayTracePassword': {
    'type': 'string',
    'property': 'PayTracePassword',
    'entity': 'SettingBillingPayTrace'
  },
  'PayTraceUsername': {
    'type': 'string',
    'property': 'PayTraceUsername',
    'entity': 'SettingBillingPayTrace'
  },
  'ApplyCashDiscountsOnlyOnTotalHp': {
    'type': 'boolean',
    'property': 'ApplyCashDiscountsOnlyOnTotalHp',
    'entity': 'SettingInvoice'
  },
  'AutoInvoice': {
    'type': 'boolean',
    'property': 'AutoInvoice',
    'entity': 'SettingInvoice'
  },
  'CashDiscount': {
    'type': 'double',
    'property': 'CashDiscount',
    'entity': 'SettingInvoice',
    'nullable': true
  },
  'CategoryInInvoice': {
    'type': 'boolean',
    'property': 'CategoryInInvoice',
    'entity': 'SettingInvoice'
  },
  'DefaultInvoiceNotes': {
    'type': 'string',
    'property': 'DefaultInvoiceNotes',
    'entity': 'SettingInvoice'
  },
  'DefaultLotItemNoTaxOos': {
    'type': 'boolean',
    'property': 'DefaultLotItemNoTaxOos',
    'entity': 'SettingInvoice'
  },
  'DefaultPostAucImportPremium': {
    'type': 'double',
    'property': 'DefaultPostAucImportPremium',
    'entity': 'SettingInvoice',
    'nullable': true
  },
  'InvoiceBpTaxSchemaId': {
    'type': 'integer',
    'property': 'InvoiceBpTaxSchemaId',
    'entity': 'SettingInvoice',
    'nullable': true
  },
  'InvoiceHpTaxSchemaId': {
    'type': 'integer',
    'property': 'InvoiceHpTaxSchemaId',
    'entity': 'SettingInvoice',
    'nullable': true
  },
  'InvoiceIdentification': {
    'type': 'boolean',
    'property': 'InvoiceIdentification',
    'entity': 'SettingInvoice'
  },
  'InvoiceItemDescription': {
    'type': 'boolean',
    'property': 'InvoiceItemDescription',
    'entity': 'SettingInvoice'
  },
  'InvoiceItemSalesTax': {
    'type': 'boolean',
    'property': 'InvoiceItemSalesTax',
    'entity': 'SettingInvoice'
  },
  'InvoiceItemSalesTaxApplication': {
    'type': 'integer',
    'property': 'InvoiceItemSalesTaxApplication',
    'entity': 'SettingInvoice',
    'nullable': true
  },
  'InvoiceItemSalesTaxDetermination': {
    'type': 'integer',
    'property': 'InvoiceItemSalesTaxDetermination',
    'entity': 'SettingInvoice'
  },
  'InvoiceItemSeparateTax': {
    'type': 'boolean',
    'property': 'InvoiceItemSeparateTax',
    'entity': 'SettingInvoice'
  },
  'InvoiceLogo': {
    'type': 'string',
    'property': 'InvoiceLogo',
    'entity': 'SettingInvoice'
  },
  'InvoiceServicesTaxSchemaId': {
    'type': 'integer',
    'property': 'InvoiceServicesTaxSchemaId',
    'entity': 'SettingInvoice',
    'nullable': true
  },
  'InvoiceTaxDesignationStrategy': {
    'type': 'integer',
    'property': 'InvoiceTaxDesignationStrategy',
    'entity': 'SettingInvoice'
  },
  'IsSoldUnderCondition': {
    'type': 'boolean',
    'property': 'IsSoldUnderCondition',
    'entity': 'SettingInvoice'
  },
  'KeepDecimalInvoice': {
    'type': 'boolean',
    'property': 'KeepDecimalInvoice',
    'entity': 'SettingInvoice'
  },
  'MultipleSaleInvoice': {
    'type': 'boolean',
    'property': 'MultipleSaleInvoice',
    'entity': 'SettingInvoice'
  },
  'OneSaleGroupedInvoice': {
    'type': 'boolean',
    'property': 'OneSaleGroupedInvoice',
    'entity': 'SettingInvoice'
  },
  'ProcessingCharge': {
    'type': 'double',
    'property': 'ProcessingCharge',
    'entity': 'SettingInvoice',
    'nullable': true
  },
  'QuantityInInvoice': {
    'type': 'boolean',
    'property': 'QuantityInInvoice',
    'entity': 'SettingInvoice'
  },
  'RenderLotCustomFieldsInSeparateRowForInvoice': {
    'type': 'boolean',
    'property': 'RenderLotCustomFieldsInSeparateRowForInvoice',
    'entity': 'SettingInvoice'
  },
  'SalesTax': {
    'type': 'double',
    'property': 'SalesTax',
    'entity': 'SettingInvoice',
    'nullable': true
  },
  'SalesTaxServices': {
    'type': 'boolean',
    'property': 'SalesTaxServices',
    'entity': 'SettingInvoice'
  },
  'SamTax': {
    'type': 'boolean',
    'property': 'SamTax',
    'entity': 'SettingInvoice'
  },
  'SamTaxDefaultCountry': {
    'type': 'string',
    'property': 'SamTaxDefaultCountry',
    'entity': 'SettingInvoice'
  },
  'ShippingCharge': {
    'type': 'double',
    'property': 'ShippingCharge',
    'entity': 'SettingInvoice',
    'nullable': true
  },
  'FailedLoginAttemptLockoutTimeout': {
    'type': 'integer',
    'property': 'FailedLoginAttemptLockoutTimeout',
    'entity': 'SettingPassword'
  },
  'FailedLoginAttemptTimeIncrement': {
    'type': 'integer',
    'property': 'FailedLoginAttemptTimeIncrement',
    'entity': 'SettingPassword'
  },
  'PwHistoryRepeat': {
    'type': 'integer',
    'property': 'PwHistoryRepeat',
    'entity': 'SettingPassword'
  },
  'PwMaxConseqLetter': {
    'type': 'integer',
    'property': 'PwMaxConseqLetter',
    'entity': 'SettingPassword'
  },
  'PwMaxConseqNum': {
    'type': 'integer',
    'property': 'PwMaxConseqNum',
    'entity': 'SettingPassword'
  },
  'PwMaxSeqLetter': {
    'type': 'integer',
    'property': 'PwMaxSeqLetter',
    'entity': 'SettingPassword'
  },
  'PwMaxSeqNum': {
    'type': 'integer',
    'property': 'PwMaxSeqNum',
    'entity': 'SettingPassword'
  },
  'PwMinLen': {
    'type': 'integer',
    'property': 'PwMinLen',
    'entity': 'SettingPassword'
  },
  'PwMinLetter': {
    'type': 'integer',
    'property': 'PwMinLetter',
    'entity': 'SettingPassword'
  },
  'PwMinNum': {
    'type': 'integer',
    'property': 'PwMinNum',
    'entity': 'SettingPassword'
  },
  'PwMinSpecial': {
    'type': 'integer',
    'property': 'PwMinSpecial',
    'entity': 'SettingPassword'
  },
  'PwRenew': {
    'type': 'integer',
    'property': 'PwRenew',
    'entity': 'SettingPassword'
  },
  'PwReqMixedCase': {
    'type': 'boolean',
    'property': 'PwReqMixedCase',
    'entity': 'SettingPassword'
  },
  'PwTmpTimeout': {
    'type': 'integer',
    'property': 'PwTmpTimeout',
    'entity': 'SettingPassword'
  },
  'ChargeConsignorCommission': {
    'type': 'boolean',
    'property': 'ChargeConsignorCommission',
    'entity': 'SettingSettlement'
  },
  'ConsignorCommissionId': {
    'type': 'integer',
    'property': 'ConsignorCommissionId',
    'entity': 'SettingSettlement',
    'nullable': true
  },
  'ConsignorSoldFeeId': {
    'type': 'integer',
    'property': 'ConsignorSoldFeeId',
    'entity': 'SettingSettlement',
    'nullable': true
  },
  'ConsignorUnsoldFeeId': {
    'type': 'integer',
    'property': 'ConsignorUnsoldFeeId',
    'entity': 'SettingSettlement',
    'nullable': true
  },
  'MultipleSaleSettlement': {
    'type': 'boolean',
    'property': 'MultipleSaleSettlement',
    'entity': 'SettingSettlement'
  },
  'QuantityInSettlement': {
    'type': 'boolean',
    'property': 'QuantityInSettlement',
    'entity': 'SettingSettlement'
  },
  'RenderLotCustomFieldsInSeparateRowForSettlement': {
    'type': 'boolean',
    'property': 'RenderLotCustomFieldsInSeparateRowForSettlement',
    'entity': 'SettingSettlement'
  },
  'SettlementLogo': {
    'type': 'string',
    'property': 'SettlementLogo',
    'entity': 'SettingSettlement'
  },
  'SettlementUnpaidLots': {
    'type': 'boolean',
    'property': 'SettlementUnpaidLots',
    'entity': 'SettingSettlement'
  },
  'StlmCheckAddressCoordX': {
    'type': 'integer',
    'property': 'StlmCheckAddressCoordX',
    'entity': 'SettingSettlementCheck',
    'nullable': true
  },
  'StlmCheckAddressCoordY': {
    'type': 'integer',
    'property': 'StlmCheckAddressCoordY',
    'entity': 'SettingSettlementCheck',
    'nullable': true
  },
  'StlmCheckAddressTemplate': {
    'type': 'string',
    'property': 'StlmCheckAddressTemplate',
    'entity': 'SettingSettlementCheck',
    'nullable': true
  },
  'StlmCheckAmountCoordX': {
    'type': 'integer',
    'property': 'StlmCheckAmountCoordX',
    'entity': 'SettingSettlementCheck',
    'nullable': true
  },
  'StlmCheckAmountCoordY': {
    'type': 'integer',
    'property': 'StlmCheckAmountCoordY',
    'entity': 'SettingSettlementCheck',
    'nullable': true
  },
  'StlmCheckAmountSpellingCoordX': {
    'type': 'integer',
    'property': 'StlmCheckAmountSpellingCoordX',
    'entity': 'SettingSettlementCheck',
    'nullable': true
  },
  'StlmCheckAmountSpellingCoordY': {
    'type': 'integer',
    'property': 'StlmCheckAmountSpellingCoordY',
    'entity': 'SettingSettlementCheck',
    'nullable': true
  },
  'StlmCheckDateCoordX': {
    'type': 'integer',
    'property': 'StlmCheckDateCoordX',
    'entity': 'SettingSettlementCheck',
    'nullable': true
  },
  'StlmCheckDateCoordY': {
    'type': 'integer',
    'property': 'StlmCheckDateCoordY',
    'entity': 'SettingSettlementCheck',
    'nullable': true
  },
  'StlmCheckEnabled': {
    'type': 'boolean',
    'property': 'StlmCheckEnabled',
    'entity': 'SettingSettlementCheck'
  },
  'StlmCheckFile': {
    'type': 'string',
    'property': 'StlmCheckFile',
    'entity': 'SettingSettlementCheck'
  },
  'StlmCheckHeight': {
    'type': 'integer',
    'property': 'StlmCheckHeight',
    'entity': 'SettingSettlementCheck',
    'nullable': true
  },
  'StlmCheckMemoCoordX': {
    'type': 'integer',
    'property': 'StlmCheckMemoCoordX',
    'entity': 'SettingSettlementCheck',
    'nullable': true
  },
  'StlmCheckMemoCoordY': {
    'type': 'integer',
    'property': 'StlmCheckMemoCoordY',
    'entity': 'SettingSettlementCheck',
    'nullable': true
  },
  'StlmCheckMemoTemplate': {
    'type': 'string',
    'property': 'StlmCheckMemoTemplate',
    'entity': 'SettingSettlementCheck',
    'nullable': true
  },
  'StlmCheckNameCoordX': {
    'type': 'integer',
    'property': 'StlmCheckNameCoordX',
    'entity': 'SettingSettlementCheck',
    'nullable': true
  },
  'StlmCheckNameCoordY': {
    'type': 'integer',
    'property': 'StlmCheckNameCoordY',
    'entity': 'SettingSettlementCheck',
    'nullable': true
  },
  'StlmCheckPayeeTemplate': {
    'type': 'string',
    'property': 'StlmCheckPayeeTemplate',
    'entity': 'SettingSettlementCheck',
    'nullable': true
  },
  'StlmCheckPerPage': {
    'type': 'integer',
    'property': 'StlmCheckPerPage',
    'entity': 'SettingSettlementCheck'
  },
  'StlmCheckRepeatCount': {
    'type': 'integer',
    'property': 'StlmCheckRepeatCount',
    'entity': 'SettingSettlementCheck'
  },
  'AllowAccountAdminAddFloorBidder': {
    'type': 'boolean',
    'property': 'AllowAccountAdminAddFloorBidder',
    'entity': 'SettingAccessPermission'
  },
  'AllowAccountAdminMakeBidderPreferred': {
    'type': 'boolean',
    'property': 'AllowAccountAdminMakeBidderPreferred',
    'entity': 'SettingAccessPermission'
  },
  'AllowConsignorDeleteItem': {
    'type': 'boolean',
    'property': 'AllowConsignorDeleteItem',
    'entity': 'SettingAccessPermission'
  },
  'AuctionCatalogAccess': {
    'type': 'string',
    'property': 'AuctionCatalogAccess',
    'entity': 'SettingAccessPermission',
    'knownSet': ['ADMIN', 'CONSIGNOR', 'BIDDER', 'USER', 'VISITOR']
  },
  'AuctionInfoAccess': {
    'type': 'string',
    'property': 'AuctionInfoAccess',
    'entity': 'SettingAccessPermission',
    'knownSet': ['ADMIN', 'CONSIGNOR', 'BIDDER', 'USER', 'VISITOR']
  },
  'AuctionVisibilityAccess': {
    'type': 'string',
    'property': 'AuctionVisibilityAccess',
    'entity': 'SettingAccessPermission',
    'knownSet': ['ADMIN', 'CONSIGNOR', 'BIDDER', 'USER', 'VISITOR']
  },
  'AutoAssignAccountAdminPrivileges': {
    'type': 'boolean',
    'property': 'AutoAssignAccountAdminPrivileges',
    'entity': 'SettingAccessPermission'
  },
  'AutoConsignorPrivileges': {
    'type': 'boolean',
    'property': 'AutoConsignorPrivileges',
    'entity': 'SettingAccessPermission'
  },
  'DontMakeUserBidder': {
    'type': 'boolean',
    'property': 'DontMakeUserBidder',
    'entity': 'SettingAccessPermission'
  },
  'LiveViewAccess': {
    'type': 'string',
    'property': 'LiveViewAccess',
    'entity': 'SettingAccessPermission',
    'knownSet': ['ADMIN', 'CONSIGNOR', 'BIDDER', 'USER', 'VISITOR']
  },
  'LotBiddingHistoryAccess': {
    'type': 'string',
    'property': 'LotBiddingHistoryAccess',
    'entity': 'SettingAccessPermission',
    'knownSet': ['ADMIN', 'CONSIGNOR', 'BIDDER', 'USER', 'VISITOR']
  },
  'LotBiddingInfoAccess': {
    'type': 'string',
    'property': 'LotBiddingInfoAccess',
    'entity': 'SettingAccessPermission',
    'knownSet': ['ADMIN', 'CONSIGNOR', 'BIDDER', 'USER', 'VISITOR']
  },
  'LotDetailsAccess': {
    'type': 'string',
    'property': 'LotDetailsAccess',
    'entity': 'SettingAccessPermission',
    'knownSet': ['ADMIN', 'CONSIGNOR', 'BIDDER', 'USER', 'VISITOR']
  },
  'LotStartingBidAccess': {
    'type': 'string',
    'property': 'LotStartingBidAccess',
    'entity': 'SettingAccessPermission',
    'knownSet': ['ADMIN', 'CONSIGNOR', 'BIDDER', 'USER', 'VISITOR']
  },
  'LotWinningBidAccess': {
    'type': 'string',
    'property': 'LotWinningBidAccess',
    'entity': 'SettingAccessPermission',
    'knownSet': ['ADMIN', 'CONSIGNOR', 'BIDDER', 'USER', 'VISITOR']
  },
  'ShareUserInfo': {
    'type': 'integer',
    'property': 'ShareUserInfo',
    'entity': 'SettingAccessPermission',
    'nullable': true
  },
  'ShareUserStats': {
    'type': 'boolean',
    'property': 'ShareUserStats',
    'entity': 'SettingAccessPermission'
  },
  'OutbidNotificationEnabled': {
    'type': 'boolean',
    'property': 'OutbidNotificationEnabled',
    'entity': 'SettingSms'
  },
  'OutbidShortNotificationTemplate': {
    'type': 'string',
    'property': 'OutbidShortNotificationTemplate',
    'entity': 'SettingSms'
  },
  'UpcomingLotsNotificationEnabled': {
    'type': 'boolean',
    'property': 'UpcomingLotsNotificationEnabled',
    'entity': 'SettingSms',
    'nullable': true
  },
  'UpcomingLotsShortNotificationTemplate': {
    'type': 'string',
    'property': 'UpcomingLotsShortNotificationTemplate',
    'entity': 'SettingSms'
  },
  'SmtpAuth': {
    'type': 'boolean',
    'property': 'SmtpAuth',
    'entity': 'SettingSmtp'
  },
  'SmtpPassword': {
    'type': 'string',
    'property': 'SmtpPassword',
    'entity': 'SettingSmtp'
  },
  'SmtpPort': {
    'type': 'integer',
    'property': 'SmtpPort',
    'entity': 'SettingSmtp',
    'nullable': true
  },
  'SmtpServer': {
    'type': 'string',
    'property': 'SmtpServer',
    'entity': 'SettingSmtp'
  },
  'SmtpSslType': {
    'type': 'integer',
    'property': 'SmtpSslType',
    'entity': 'SettingSmtp',
    'nullable': true
  },
  'SmtpUsername': {
    'type': 'string',
    'property': 'SmtpUsername',
    'entity': 'SettingSmtp'
  },
  'AucIncAccountId': {
    'type': 'string',
    'property': 'AucIncAccountId',
    'entity': 'SettingShippingAuctionInc'
  },
  'AucIncBusinessId': {
    'type': 'string',
    'property': 'AucIncBusinessId',
    'entity': 'SettingShippingAuctionInc'
  },
  'AucIncDhl': {
    'type': 'boolean',
    'property': 'AucIncDhl',
    'entity': 'SettingShippingAuctionInc'
  },
  'AucIncDhlAccessKey': {
    'type': 'integer',
    'property': 'AucIncDhlAccessKey',
    'entity': 'SettingShippingAuctionInc',
    'nullable': true
  },
  'AucIncDhlPostalCode': {
    'type': 'integer',
    'property': 'AucIncDhlPostalCode',
    'entity': 'SettingShippingAuctionInc',
    'nullable': true
  },
  'AucIncDimensionType': {
    'type': 'integer',
    'property': 'AucIncDimensionType',
    'entity': 'SettingShippingAuctionInc'
  },
  'AucIncFedex': {
    'type': 'boolean',
    'property': 'AucIncFedex',
    'entity': 'SettingShippingAuctionInc'
  },
  'AucIncHeightCustFieldId': {
    'type': 'integer',
    'property': 'AucIncHeightCustFieldId',
    'entity': 'SettingShippingAuctionInc',
    'nullable': true
  },
  'AucIncLengthCustFieldId': {
    'type': 'integer',
    'property': 'AucIncLengthCustFieldId',
    'entity': 'SettingShippingAuctionInc',
    'nullable': true
  },
  'AucIncMethod': {
    'type': 'string',
    'property': 'AucIncMethod',
    'entity': 'SettingShippingAuctionInc'
  },
  'AucIncPickup': {
    'type': 'boolean',
    'property': 'AucIncPickup',
    'entity': 'SettingShippingAuctionInc'
  },
  'AucIncUps': {
    'type': 'boolean',
    'property': 'AucIncUps',
    'entity': 'SettingShippingAuctionInc'
  },
  'AucIncUsps': {
    'type': 'boolean',
    'property': 'AucIncUsps',
    'entity': 'SettingShippingAuctionInc'
  },
  'AucIncWeightCustFieldId': {
    'type': 'integer',
    'property': 'AucIncWeightCustFieldId',
    'entity': 'SettingShippingAuctionInc',
    'nullable': true
  },
  'AucIncWeightType': {
    'type': 'integer',
    'property': 'AucIncWeightType',
    'entity': 'SettingShippingAuctionInc'
  },
  'AucIncWidthCustFieldId': {
    'type': 'integer',
    'property': 'AucIncWidthCustFieldId',
    'entity': 'SettingShippingAuctionInc',
    'nullable': true
  },
  'ActivateBiddingButton': {
    'type': 'boolean',
    'property': 'ActivateBiddingButton',
    'entity': 'SettingRtb',
    'nullable': true
  },
  'AllowBiddingDuringStartGapHybrid': {
    'type': 'boolean',
    'property': 'AllowBiddingDuringStartGapHybrid',
    'entity': 'SettingRtb'
  },
  'AutoCreateFloorBidderRecord': {
    'type': 'boolean',
    'property': 'AutoCreateFloorBidderRecord',
    'entity': 'SettingRtb'
  },
  'BidAcceptedSound': {
    'type': 'string',
    'property': 'BidAcceptedSound',
    'entity': 'SettingRtb'
  },
  'BidSound': {
    'type': 'string',
    'property': 'BidSound',
    'entity': 'SettingRtb'
  },
  'BuyNowRestriction': {
    'type': 'string',
    'property': 'BuyNowRestriction',
    'entity': 'SettingRtb'
  },
  'ClearMessageCenter': {
    'type': 'boolean',
    'property': 'ClearMessageCenter',
    'entity': 'SettingRtb'
  },
  'ClearMessageCenterLog': {
    'type': 'boolean',
    'property': 'ClearMessageCenterLog',
    'entity': 'SettingRtb'
  },
  'DefaultImagePreview': {
    'type': 'integer',
    'property': 'DefaultImagePreview',
    'entity': 'SettingRtb'
  },
  'DelayAfterBidAccepted': {
    'type': 'integer',
    'property': 'DelayAfterBidAccepted',
    'entity': 'SettingRtb',
    'nullable': true
  },
  'DelayBlockSell': {
    'type': 'integer',
    'property': 'DelayBlockSell',
    'entity': 'SettingRtb',
    'nullable': true
  },
  'DelaySoldItem': {
    'type': 'integer',
    'property': 'DelaySoldItem',
    'entity': 'SettingRtb',
    'nullable': true
  },
  'EnableConsignorCompanyClerking': {
    'type': 'boolean',
    'property': 'EnableConsignorCompanyClerking',
    'entity': 'SettingRtb'
  },
  'ExtendTimeHybrid': {
    'type': 'integer',
    'property': 'ExtendTimeHybrid',
    'entity': 'SettingRtb',
    'nullable': true
  },
  'FairWarningSound': {
    'type': 'string',
    'property': 'FairWarningSound',
    'entity': 'SettingRtb'
  },
  'FairWarningsHybrid': {
    'type': 'string',
    'property': 'FairWarningsHybrid',
    'entity': 'SettingRtb'
  },
  'FloorBiddersFromDropdown': {
    'type': 'boolean',
    'property': 'FloorBiddersFromDropdown',
    'entity': 'SettingRtb'
  },
  'LiveBiddingCountdown': {
    'type': 'string',
    'property': 'LiveBiddingCountdown',
    'entity': 'SettingRtb'
  },
  'LiveChat': {
    'type': 'boolean',
    'property': 'LiveChat',
    'entity': 'SettingRtb'
  },
  'LiveChatViewAll': {
    'type': 'boolean',
    'property': 'LiveChatViewAll',
    'entity': 'SettingRtb'
  },
  'LotStartGapTimeHybrid': {
    'type': 'integer',
    'property': 'LotStartGapTimeHybrid',
    'entity': 'SettingRtb'
  },
  'MultiCurrency': {
    'type': 'boolean',
    'property': 'MultiCurrency',
    'entity': 'SettingRtb'
  },
  'OnlineBidIncomingOnAdminSound': {
    'type': 'string',
    'property': 'OnlineBidIncomingOnAdminSound',
    'entity': 'SettingRtb'
  },
  'OnlinebidButtonInfo': {
    'type': 'integer',
    'property': 'OnlinebidButtonInfo',
    'entity': 'SettingRtb',
    'nullable': true
  },
  'OutBidSound': {
    'type': 'string',
    'property': 'OutBidSound',
    'entity': 'SettingRtb'
  },
  'PassedSound': {
    'type': 'string',
    'property': 'PassedSound',
    'entity': 'SettingRtb'
  },
  'PendingActionTimeoutHybrid': {
    'type': 'integer',
    'property': 'PendingActionTimeoutHybrid',
    'entity': 'SettingRtb',
    'nullable': true
  },
  'PlaceBidSound': {
    'type': 'string',
    'property': 'PlaceBidSound',
    'entity': 'SettingRtb'
  },
  'ResetTimerOnUndoHybrid': {
    'type': 'boolean',
    'property': 'ResetTimerOnUndoHybrid',
    'entity': 'SettingRtb'
  },
  'ShowPortNotice': {
    'type': 'boolean',
    'property': 'ShowPortNotice',
    'entity': 'SettingRtb'
  },
  'SlideshowProjectorOnly': {
    'type': 'boolean',
    'property': 'SlideshowProjectorOnly',
    'entity': 'SettingRtb'
  },
  'SoldNotWonSound': {
    'type': 'string',
    'property': 'SoldNotWonSound',
    'entity': 'SettingRtb'
  },
  'SoldWonSound': {
    'type': 'string',
    'property': 'SoldWonSound',
    'entity': 'SettingRtb'
  },
  'SuggestedStartingBid': {
    'type': 'boolean',
    'property': 'SuggestedStartingBid',
    'entity': 'SettingRtb'
  },
  'SwitchFrameSeconds': {
    'type': 'integer',
    'property': 'SwitchFrameSeconds',
    'entity': 'SettingRtb',
    'nullable': true
  },
  'TwentyMessagesMax': {
    'type': 'boolean',
    'property': 'TwentyMessagesMax',
    'entity': 'SettingRtb'
  },
  'AdminDateFormat': {
    'type': 'integer',
    'property': 'AdminDateFormat',
    'entity': 'SettingSystem',
    'nullable': true
  },
  'AdminLanguage': {
    'type': 'string',
    'property': 'AdminLanguage',
    'entity': 'SettingSystem'
  },
  'DefaultCountry': {
    'type': 'string',
    'property': 'DefaultCountry',
    'entity': 'SettingSystem'
  },
  'DefaultExportEncoding': {
    'type': 'string',
    'property': 'DefaultExportEncoding',
    'entity': 'SettingSystem'
  },
  'DefaultImportEncoding': {
    'type': 'string',
    'property': 'DefaultImportEncoding',
    'entity': 'SettingSystem'
  },
  'EmailFormat': {
    'type': 'string',
    'property': 'EmailFormat',
    'entity': 'SettingSystem'
  },
  'ForceMainAccountDomainMode': {
    'type': 'boolean',
    'property': 'ForceMainAccountDomainMode',
    'entity': 'SettingSystem'
  },
  'GraphqlCorsAllowedOrigins': {
    'type': 'string',
    'property': 'GraphqlCorsAllowedOrigins',
    'entity': 'SettingSystem'
  },
  'Locale': {
    'type': 'string',
    'property': 'Locale',
    'entity': 'SettingSystem'
  },
  'LotCategoryGlobalOrderAvailable': {
    'type': 'boolean',
    'property': 'LotCategoryGlobalOrderAvailable',
    'entity': 'SettingSystem'
  },
  'PaymentReminderEmailFrequency': {
    'type': 'integer',
    'property': 'PaymentReminderEmailFrequency',
    'entity': 'SettingSystem'
  },
  'PickupReminderEmailFrequency': {
    'type': 'integer',
    'property': 'PickupReminderEmailFrequency',
    'entity': 'SettingSystem'
  },
  'PrimaryCurrencyId': {
    'type': 'integer',
    'property': 'PrimaryCurrencyId',
    'entity': 'SettingSystem',
    'nullable': true
  },
  'PublicRoutingForEachAccount': {
    'type': 'boolean',
    'property': 'PublicRoutingForEachAccount',
    'entity': 'SettingSystem'
  },
  'RegReminderEmail': {
    'type': 'integer',
    'property': 'RegReminderEmail',
    'entity': 'SettingSystem',
    'nullable': true
  },
  'SupportEmail': {
    'type': 'string',
    'property': 'SupportEmail',
    'entity': 'SettingSystem'
  },
  'TimezoneId': {
    'type': 'integer',
    'property': 'TimezoneId',
    'entity': 'SettingSystem',
    'nullable': true
  },
  'UsNumberFormatting': {
    'type': 'boolean',
    'property': 'UsNumberFormatting',
    'entity': 'SettingSystem'
  },
  'ViewLanguage': {
    'type': 'integer',
    'property': 'ViewLanguage',
    'entity': 'SettingSystem',
    'nullable': true
  },
  'AdminCssFile': {
    'type': 'string',
    'property': 'AdminCssFile',
    'entity': 'SettingUi'
  },
  'AdminCustomJsUrl': {
    'type': 'string',
    'property': 'AdminCustomJsUrl',
    'entity': 'SettingUi'
  },
  'AuctionDateInSearch': {
    'type': 'boolean',
    'property': 'AuctionDateInSearch',
    'entity': 'SettingUi'
  },
  'AuctionDetailTemplate': {
    'type': 'string',
    'property': 'AuctionDetailTemplate',
    'entity': 'SettingUi'
  },
  'AuctioneerFilter': {
    'type': 'boolean',
    'property': 'AuctioneerFilter',
    'entity': 'SettingUi'
  },
  'ConsignorScheduleHeader': {
    'type': 'string',
    'property': 'ConsignorScheduleHeader',
    'entity': 'SettingUi'
  },
  'CustomTemplateHideEmptyFieldsForAllCategories': {
    'type': 'boolean',
    'property': 'CustomTemplateHideEmptyFieldsForAllCategories',
    'entity': 'SettingUi'
  },
  'CustomTemplateHideEmptyFieldsForNoCategoryLot': {
    'type': 'boolean',
    'property': 'CustomTemplateHideEmptyFieldsForNoCategoryLot',
    'entity': 'SettingUi'
  },
  'ExternalJavascript': {
    'type': 'string',
    'property': 'ExternalJavascript',
    'entity': 'SettingUi'
  },
  'ImageAutoOrient': {
    'type': 'boolean',
    'property': 'ImageAutoOrient',
    'entity': 'SettingUi'
  },
  'ImageOptimize': {
    'type': 'boolean',
    'property': 'ImageOptimize',
    'entity': 'SettingUi'
  },
  'ItemsPerPage': {
    'type': 'integer',
    'property': 'ItemsPerPage',
    'entity': 'SettingUi',
    'nullable': true
  },
  'LandingPage': {
    'type': 'string',
    'property': 'LandingPage',
    'entity': 'SettingUi'
  },
  'LandingPageUrl': {
    'type': 'string',
    'property': 'LandingPageUrl',
    'entity': 'SettingUi'
  },
  'LogoLink': {
    'type': 'string',
    'property': 'LogoLink',
    'entity': 'SettingUi'
  },
  'LotItemDetailTemplate': {
    'type': 'string',
    'property': 'LotItemDetailTemplate',
    'entity': 'SettingUi'
  },
  'LotItemDetailTemplateForNoCategory': {
    'type': 'string',
    'property': 'LotItemDetailTemplateForNoCategory',
    'entity': 'SettingUi'
  },
  'MainMenuAuctionTarget': {
    'type': 'string',
    'property': 'MainMenuAuctionTarget',
    'entity': 'SettingUi'
  },
  'PageHeader': {
    'type': 'string',
    'property': 'PageHeader',
    'entity': 'SettingUi'
  },
  'PageHeaderType': {
    'type': 'string',
    'property': 'PageHeaderType',
    'entity': 'SettingUi'
  },
  'PageRedirection': {
    'type': 'string',
    'property': 'PageRedirection',
    'entity': 'SettingUi'
  },
  'ResponsiveCssFile': {
    'type': 'string',
    'property': 'ResponsiveCssFile',
    'entity': 'SettingUi'
  },
  'ResponsiveHeaderAddress': {
    'type': 'string',
    'property': 'ResponsiveHeaderAddress',
    'entity': 'SettingUi'
  },
  'ResponsiveHtmlHeadCode': {
    'type': 'string',
    'property': 'ResponsiveHtmlHeadCode',
    'entity': 'SettingUi'
  },
  'RtbDetailTemplate': {
    'type': 'string',
    'property': 'RtbDetailTemplate',
    'entity': 'SettingUi'
  },
  'RtbDetailTemplateForNoCategory': {
    'type': 'string',
    'property': 'RtbDetailTemplateForNoCategory',
    'entity': 'SettingUi'
  },
  'SearchResultsFormat': {
    'type': 'string',
    'property': 'SearchResultsFormat',
    'entity': 'SettingUi'
  },
  'ShowMemberMenuItems': {
    'type': 'boolean',
    'property': 'ShowMemberMenuItems',
    'entity': 'SettingUi'
  },
  'AuthorizationUse': {
    'type': 'string',
    'property': 'AuthorizationUse',
    'entity': 'SettingUser'
  },
  'AutoIncrementCustomerNum': {
    'type': 'boolean',
    'property': 'AutoIncrementCustomerNum',
    'entity': 'SettingUser'
  },
  'AutoPreferred': {
    'type': 'boolean',
    'property': 'AutoPreferred',
    'entity': 'SettingUser'
  },
  'AutoPreferredCreditCard': {
    'type': 'boolean',
    'property': 'AutoPreferredCreditCard',
    'entity': 'SettingUser'
  },
  'DefaultCountryCode': {
    'type': 'integer',
    'property': 'DefaultCountryCode',
    'entity': 'SettingUser'
  },
  'EnableConsignorPaymentInfo': {
    'type': 'boolean',
    'property': 'EnableConsignorPaymentInfo',
    'entity': 'SettingUser'
  },
  'EnableResellerReg': {
    'type': 'boolean',
    'property': 'EnableResellerReg',
    'entity': 'SettingUser'
  },
  'EnableUserCompany': {
    'type': 'boolean',
    'property': 'EnableUserCompany',
    'entity': 'SettingUser'
  },
  'EnableUserResume': {
    'type': 'boolean',
    'property': 'EnableUserResume',
    'entity': 'SettingUser'
  },
  'HideCountryCodeSelection': {
    'type': 'boolean',
    'property': 'HideCountryCodeSelection',
    'entity': 'SettingUser'
  },
  'IncludeAchInfo': {
    'type': 'boolean',
    'property': 'IncludeAchInfo',
    'entity': 'SettingUser'
  },
  'IncludeBasicInfo': {
    'type': 'boolean',
    'property': 'IncludeBasicInfo',
    'entity': 'SettingUser'
  },
  'IncludeBillingInfo': {
    'type': 'boolean',
    'property': 'IncludeBillingInfo',
    'entity': 'SettingUser'
  },
  'IncludeCcInfo': {
    'type': 'boolean',
    'property': 'IncludeCcInfo',
    'entity': 'SettingUser'
  },
  'IncludeUserPreferences': {
    'type': 'boolean',
    'property': 'IncludeUserPreferences',
    'entity': 'SettingUser'
  },
  'MakePermanentBidderNum': {
    'type': 'boolean',
    'property': 'MakePermanentBidderNum',
    'entity': 'SettingUser'
  },
  'MandatoryAchInfo': {
    'type': 'boolean',
    'property': 'MandatoryAchInfo',
    'entity': 'SettingUser'
  },
  'MandatoryBasicInfo': {
    'type': 'boolean',
    'property': 'MandatoryBasicInfo',
    'entity': 'SettingUser'
  },
  'MandatoryBillingInfo': {
    'type': 'boolean',
    'property': 'MandatoryBillingInfo',
    'entity': 'SettingUser'
  },
  'MandatoryCcInfo': {
    'type': 'boolean',
    'property': 'MandatoryCcInfo',
    'entity': 'SettingUser'
  },
  'MandatoryUserPreferences': {
    'type': 'boolean',
    'property': 'MandatoryUserPreferences',
    'entity': 'SettingUser'
  },
  'NewsletterOption': {
    'type': 'boolean',
    'property': 'NewsletterOption',
    'entity': 'SettingUser'
  },
  'NoAutoAuthorization': {
    'type': 'boolean',
    'property': 'NoAutoAuthorization',
    'entity': 'SettingUser'
  },
  'OnRegistration': {
    'type': 'integer',
    'property': 'OnRegistration',
    'entity': 'SettingUser'
  },
  'OnRegistrationAmount': {
    'type': 'double',
    'property': 'OnRegistrationAmount',
    'entity': 'SettingUser',
    'nullable': true
  },
  'OnRegistrationExpires': {
    'type': 'integer',
    'property': 'OnRegistrationExpires',
    'entity': 'SettingUser',
    'nullable': true
  },
  'ProfileBillingOptional': {
    'type': 'boolean',
    'property': 'ProfileBillingOptional',
    'entity': 'SettingUser'
  },
  'ProfileShippingOptional': {
    'type': 'boolean',
    'property': 'ProfileShippingOptional',
    'entity': 'SettingUser'
  },
  'RegistrationRequireCc': {
    'type': 'boolean',
    'property': 'RegistrationRequireCc',
    'entity': 'SettingUser'
  },
  'RequireIdentification': {
    'type': 'boolean',
    'property': 'RequireIdentification',
    'entity': 'SettingUser'
  },
  'RevokePreferredBidder': {
    'type': 'boolean',
    'property': 'RevokePreferredBidder',
    'entity': 'SettingUser'
  },
  'SaveResellerCertInProfile': {
    'type': 'boolean',
    'property': 'SaveResellerCertInProfile',
    'entity': 'SettingUser'
  },
  'SendConfirmationLink': {
    'type': 'boolean',
    'property': 'SendConfirmationLink',
    'entity': 'SettingUser'
  },
  'ShowUserResume': {
    'type': 'string',
    'property': 'ShowUserResume',
    'entity': 'SettingUser'
  },
  'SignupTrackingCode': {
    'type': 'string',
    'property': 'SignupTrackingCode',
    'entity': 'SettingUser'
  },
  'SimplifiedSignup': {
    'type': 'boolean',
    'property': 'SimplifiedSignup',
    'entity': 'SettingUser'
  },
  'StayOnAccountDomain': {
    'type': 'boolean',
    'property': 'StayOnAccountDomain',
    'entity': 'SettingUser'
  },
  'VerifyEmail': {
    'type': 'boolean',
    'property': 'VerifyEmail',
    'entity': 'SettingUser'
  },
  'WatchlistReminderEmail': {
    'type': 'integer',
    'property': 'WatchlistReminderEmail',
    'entity': 'SettingUser',
    'nullable': true
  }
};
;// CONCATENATED MODULE: ./assets/js/src/Constants/SettingAuction.ts
/**
 * Please, do NOT change file content. The content was generated automatically by bin/generate/php_to_js_constants.php
 */

const ABD_DO_NOT_DISPLAY = 'N';
const ABD_NUMBER_OF_ABSENTEE = 'NA';
const ABD_NUMBER_OF_ABSENTEE_LINK = 'NL';
const ABD_NUMBER_OF_ABSENTEE_HIGH = 'NH';
const GLHPC_NUMBER_OF_LOTS = 0;
const GLHPC_SUM_OF_QUANTITY = 1;
const ABSENTEE_BID_DISPLAY_SOAP_VALUES = {
  'N': 'DoNotDisplay',
  'NA': 'NumberOfAbsentee',
  'NL': 'NumberOfAbsenteeLink',
  'NH': 'NumberOfAbsenteeHigh'
};
const ABSENTEE_BID_DISPLAY_OPTIONS = {
  'N': 'Don\u0027t display live absentee bids',
  'NA': 'Display number of bids only',
  'NL': 'Display number of bids and bid amounts \/ bidder numbers',
  'NH': 'Display current high absentee bid'
};
const GROUPED_LOTS_HAMMER_PRICE_CALCULATION_OPTIONS = (/* unused pure expression or super */ null && (['Calculate by the number of lots', 'Calculate by the sum of the quantity value of all grouped lots']));
const DISPLAY_DETAILED_BIDS_INFO_MODES = (/* unused pure expression or super */ null && (['NL', 'NH']));
const SIB_AUCTION = 1;
const SIB_AUCTION_LOT = 2;
const SIB_LOT = 3;
const SIB_DISABLED = 4;
const SHIPPING_INFO_TYPES = {
  '1': 'Auction information',
  '2': 'Auction information \u0026 lot details',
  '3': 'Lot details',
  '4': 'Disable'
};
const DBI_NUMBER = 'BN';
const DBI_USERNAME = 'UN';
const DBI_COMPANY_NAME = 'CN';
const DISPLAY_BIDDER_INFOS = (/* unused pure expression or super */ null && (['BN', 'UN', 'CN']));
const DISPLAY_BIDDER_INFO_NAMES = {
  'BN': 'Bidder #',
  'UN': 'Username',
  'CN': 'Company Name'
};
const AUCTION_LINK_TO_INFO = 1;
const AUCTION_LINK_TO_CATALOG = 2;
const AUCTION_LINK_TO_FIRST_LOT = 3;
const AUCTION_LINKS_TO_NAMES = {
  '1': 'Info',
  '2': 'Catalog',
  '3': 'First lot'
};
const AUCTION_LINK_TO_NAME_TRANSLATIONS = {
  '1': 'catalog.auction_link_destination.info.option',
  '2': 'catalog.auction_link_destination.catalog.option',
  '3': 'catalog.auction_link_destination.first_lot.option'
};
const ALR_NONE = 0;
const ALR_WARNING = 1;
const ALR_BLOCK = 2;
const ASSIGNED_LOTS_RESTRICTIONS = (/* unused pure expression or super */ null && ([0, 1, 2]));
const ASSIGNED_LOTS_RESTRICTION_NAMES_TRANSLATIONS = (/* unused pure expression or super */ null && (['lot_assignment.assigned_lots_restriction.none.option', 'lot_assignment.assigned_lots_restriction.warning.option', 'lot_assignment.assigned_lots_restriction.block_completely.option']));
;// CONCATENATED MODULE: ./assets/js/src/Constants/SettingShippingAuctionInc.ts
/**
 * Please, do NOT change file content. The content was generated automatically by bin/generate/php_to_js_constants.php
 */

const AIM_SINGLE_SELLER = 'SS';
const AIM_UNLIMITED_SELLER = 'XS';
const AUC_INC_METHOD_NAMES_TRANSLATED = {
  'SS': 'auction_inc_shipping_calculator.shipping_method.single_seller.label',
  'XS': 'auction_inc_shipping_calculator.shipping_method.unlimited_seller.label'
};
;// CONCATENATED MODULE: ./assets/js/src/Constants/SettingUi.ts
/**
 * Please, do NOT change file content. The content was generated automatically by bin/generate/php_to_js_constants.php
 */

const LP_AUCTION = 'A';
const LP_SEARCH = 'S';
const LP_OTHER = 'O';
const SRF_LIST = 'T';
const SRF_GRID = 'L';
const SRF_COMPACT = 'C';
const SEARCH_RESULTS_FORMAT_NAMES = {
  'L': 'Grid view',
  'T': 'List view',
  'C': 'Compact view'
};
const SEARCH_RESULTS_FORMAT_NAMES_TRANSLATIONS = {
  'L': 'look_feel.default_search_results_format.view.grid.option',
  'T': 'look_feel.default_search_results_format.view.list.option',
  'C': 'look_feel.default_search_results_format.view.compact.option'
};
const PHT_TEXT = 'T';
const PHT_LOGO = 'L';
const PHT_URL = 'U';
;// CONCATENATED MODULE: ./assets/js/src/Constants/SettingUser.ts
/**
 * Please, do NOT change file content. The content was generated automatically by bin/generate/php_to_js_constants.php
 */

const P_PAYMENT_GATEWAY = 'P_PAYMENT_GATEWAY';
const PAY_AUTHORIZE_NET = 'A';
const PAY_EWAY = 'E';
const PAY_NMI = 'M';
const PAY_NO_AUTHORIZATION = 'N';
const PAY_PAY_TRACE = 'P';
const PAY_OPAYO = 'U';
const PAYMENT_GATEWAY_NAMES = {
  'A': 'Authorize.net',
  'E': 'Eway',
  'M': 'Nmi',
  'N': 'No authorization',
  'P': 'PayTrace',
  'U': 'Opayo'
};
const SUR_ALL = 'A';
const SUR_NONE = 'N';
;// CONCATENATED MODULE: ./assets/js/src/Constants/Settlement.ts
/**
 * Please, do NOT change file content. The content was generated automatically by bin/generate/php_to_js_constants.php
 */

const SS_PENDING = 1;
const SS_PAID = 2;
const SS_DELETED = 3;
const SS_OPEN = 4;
const settlementStatuses = (/* unused pure expression or super */ null && ([1, 2, 3, 4]));
const settlementStatusNames = {
  '1': 'Pending',
  '2': 'Paid',
  '3': 'Deleted',
  '4': 'Open'
};
const availableSettlementStatuses = (/* unused pure expression or super */ null && ([1, 2, 4]));
const availableSettlementStatusesResponsive = (/* unused pure expression or super */ null && ([1, 2]));
const publicAvailableSettlementStatuses = (/* unused pure expression or super */ null && ([1, 2]));
;// CONCATENATED MODULE: ./assets/js/src/Constants/Soap.ts
/**
 * Please, do NOT change file content. The content was generated automatically by bin/generate/php_to_js_constants.php
 */

const ESB_CLEAR = 'clear';
const ESB_DEFAULT = 'default';
const ESB_NONE = '';
const emptyStringBehaviors = (/* unused pure expression or super */ null && (['clear', 'default', '']));
const emptyStringBehaviorNames = {
  'clear': 'Clear',
  'default': 'Default',
  '': 'No action'
};
;// CONCATENATED MODULE: ./assets/js/src/Constants/StackedTax.ts
/**
 * Please, do NOT change file content. The content was generated automatically by bin/generate/php_to_js_constants.php
 */

const TT_STANDARD = 1;
const TT_SPECIAL = 2;
const TT_EXEMPTION = 3;
const TAX_TYPES = (/* unused pure expression or super */ null && ([1, 2, 3]));
const TAX_TYPE_NAMES = {
  '1': 'Standard',
  '2': 'Special',
  '3': 'Exemption'
};
const GT_COUNTRY = 1;
const GT_STATE = 2;
const GT_COUNTY = 3;
const GT_CITY = 4;
const GEO_TYPES = (/* unused pure expression or super */ null && ([1, 2, 3, 4]));
const GEO_TYPE_NAMES = {
  '1': 'Country',
  '2': 'State',
  '3': 'County',
  '4': 'City'
};
const TAX_AUTHORITY_GEO_TYPES = (/* unused pure expression or super */ null && ([1, 2, 3, 4]));
const RCM_SLIDING = 'sliding';
const RCM_TIERED = 'tiered';
const RANGE_CALCULATION_METHODS = (/* unused pure expression or super */ null && (['sliding', 'tiered']));
const RM_SUM = '+';
const RM_GREATER = '\u003E';
const StackedTax_RANGE_MODES = (/* unused pure expression or super */ null && (['+', '\u003E']));
const AS_HAMMER_PRICE = 1;
const AS_BUYERS_PREMIUM = 2;
const AS_SERVICES = 3;
const AS_HAMMER_PRICE_PLUS_BUYERS_PREMIUM = 4;
const AMOUNT_SOURCES = (/* unused pure expression or super */ null && ([1, 2, 4, 3]));
const TAX_DETERMINATION_DEFAULT = 1;
const TAX_DETERMINATION_BY_ADDRESS = 2;
const TAX_DETERMINATION_BY_USER_BILLING = 2;
const TAX_DETERMINATION_BY_USER_SHIPPING = 3;
const TAX_DETERMINATION_BY_INVOICE_USER_BILLING = 4;
const TAX_DETERMINATION_BY_INVOICE_USER_SHIPPING = 5;
const TAX_DETERMINATION_OPTIONS = (/* unused pure expression or super */ null && ([1, 2, 3]));
const HP_TAX_SCHEMA_EXEMPTED_FROM_TAXES = 'HP Tax Schema by address(Exempted from taxes)';
const BP_TAX_SCHEMA_EXEMPTED_FROM_TAXES = 'BP Tax Schema by address(Exempted from taxes)';
const ST_HAMMER_PRICE = 'HP';
const ST_BUYERS_PREMIUM = 'BP';
const ST_SERVICES = 'SERVICES';
const SCHEMA_TARGET_TO_AMOUNT_SOURCE_MAP = {
  'HP': [1, 4],
  'BP': [2, 4],
  'SERVICES': [3]
};
const SOURCE_CREATED_BY_SAM = '';
const SOURCE_CREATED_BY_USER_BILLING = 'user-billing';
const SOURCE_CREATED_BY_USER_SHIPPING = 'user-shipping';
const SOURCE_CREATED_BY_INVOICE_USER_BILLING = 'invoice-user-billing';
const SOURCE_CREATED_BY_INVOICE_USER_SHIPPING = 'invoice-user-shipping';
const SOURCES = (/* unused pure expression or super */ null && (['', 'user-billing', 'user-shipping', 'invoice-user-billing', 'invoice-user-shipping']));
const EXTERNAL_SOURCES = (/* unused pure expression or super */ null && (['user-billing', 'user-shipping', 'invoice-user-billing', 'invoice-user-shipping']));
;// CONCATENATED MODULE: ./assets/js/src/Constants/State.ts
/**
 * Please, do NOT change file content. The content was generated automatically by bin/generate/php_to_js_constants.php
 */

const State_names = {
  'US': {
    'AL': 'Alabama',
    'AK': 'Alaska',
    'AZ': 'Arizona',
    'AR': 'Arkansas',
    'AE': 'Armed Forces Africa\/Canada\/Europe\/MiddleEast (AE)',
    'AA': 'Armed Forces Americas (AA) (except Canada)',
    'AP': 'Armed Forces Pacific (AP)',
    'CA': 'California',
    'CO': 'Colorado',
    'CT': 'Connecticut',
    'DE': 'Delaware',
    'DC': 'District of Columbia',
    'FL': 'Florida',
    'GA': 'Georgia',
    'HI': 'Hawaii',
    'ID': 'Idaho',
    'IL': 'Illinois',
    'IN': 'Indiana',
    'IA': 'Iowa',
    'KS': 'Kansas',
    'KY': 'Kentucky',
    'LA': 'Louisiana',
    'ME': 'Maine',
    'MD': 'Maryland',
    'MA': 'Massachusetts',
    'MI': 'Michigan',
    'MN': 'Minnesota',
    'MS': 'Mississippi',
    'MO': 'Missouri',
    'MT': 'Montana',
    'NE': 'Nebraska',
    'NV': 'Nevada',
    'NH': 'New Hampshire',
    'NJ': 'New Jersey',
    'NM': 'New Mexico',
    'NY': 'New York',
    'NU': 'Non-US',
    'NC': 'North Carolina',
    'ND': 'North Dakota',
    'OH': 'Ohio',
    'OK': 'Oklahoma',
    'OR': 'Oregon',
    'PA': 'Pennsylvania',
    'RI': 'Rhode Island',
    'SC': 'South Carolina',
    'SD': 'South Dakota',
    'TN': 'Tennessee',
    'TX': 'Texas',
    'UT': 'Utah',
    'VT': 'Vermont',
    'VA': 'Virginia',
    'WA': 'Washington',
    'WV': 'West Virginia',
    'WI': 'Wisconsin',
    'WY': 'Wyoming'
  },
  'CA': {
    'AB': 'Alberta',
    'BC': 'British Columbia',
    'MB': 'Manitoba',
    'NB': 'New Brunswick',
    'NL': 'Newfoundland and Labrador',
    'NT': 'Northwest Territories',
    'NS': 'Nova Scotia',
    'NU': 'Nunavut',
    'ON': 'Ontario',
    'PE': 'Prince Edward Island',
    'QC': 'Quebec',
    'SK': 'Saskatchewan',
    'YT': 'Yukon'
  },
  'MX': {
    'AG': 'Aguascalientes',
    'BC': 'Baja California',
    'CM': 'Campeche',
    'CS': 'Chiapas',
    'CH': 'Chihuahua',
    'CO': 'Coahuila',
    'CL': 'Colima',
    'DG': 'Durango',
    'FD': 'Federal District',
    'GT': 'Guanajuato',
    'GR': 'Guerrero',
    'HG': 'Hidalgo',
    'JL': 'Jalisco',
    'ME': 'Mexico State',
    'MI': 'Michoac\u00e1n',
    'MO': 'Morelos',
    'NA': 'Nayarit',
    'NL': 'Nuevo Le\u00f3n',
    'OA': 'Oaxaca',
    'PU': 'Puebla',
    'QE': 'Quer\u00e9taro',
    'QR': 'Quintana Roo',
    'SL': 'San Luis Potos\u00ed',
    'SI': 'Sinaloa',
    'SO': 'Sonora',
    'TB': 'Tabasco',
    'TM': 'Tamaulipas',
    'TL': 'Tlaxcala',
    'VE': 'Veracruz',
    'YU': 'Yucat\u00e1n',
    'ZA': 'Zacatecas'
  }
};
;// CONCATENATED MODULE: ./assets/js/src/Constants/TokenLink.ts
/**
 * Please, do NOT change file content. The content was generated automatically by bin/generate/php_to_js_constants.php
 */

const TOKEN_SEPARATOR = '.';
const CACHE_NAMESPACE = 'sso';
const CACHE_FILE = 1;
const cacheTypes = (/* unused pure expression or super */ null && ([1]));
const cacheTypeNames = {
  '1': 'file'
};
;// CONCATENATED MODULE: ./assets/js/src/Constants/Type.ts
/**
 * Please, do NOT change file content. The content was generated automatically by bin/generate/php_to_js_constants.php
 */

const T_BOOL = 'boolean';
const T_INTEGER = 'integer';
const T_FLOAT = 'double';
const T_STRING = 'string';
const T_ARRAY = 'array';
const T_OBJECT = 'object';
const T_RESOURCE = 'resource';
const T_NULL = 'NULL';
const T_UNKNOWN_TYPE = 'unknown type';
const F_DISABLED = 'Disabled';
const F_INT = 'Int';
const F_INT_POSITIVE = 'IntPositive';
const F_INT_POSITIVE_OR_ZERO = 'IntPositiveOrZero';
const F_FLOAT = 'Float';
const F_FLOAT_POSITIVE = 'FloatPositive';
const F_FLOAT_POSITIVE_OR_ZERO = 'FloatPositiveOrZero';
const F_BOOL = 'Bool';
const F_STRING = 'String';
const F_STRING_TRIM = 'StringTrim';
const F_URL = 'Url';
const FILTER_BOOLEANS = (/* unused pure expression or super */ null && (['Bool']));
const FILTER_FLOATS = (/* unused pure expression or super */ null && (['Float', 'FloatPositive', 'FloatPositiveOrZero']));
const FILTER_INTEGERS = (/* unused pure expression or super */ null && (['Int', 'IntPositive', 'IntPositiveOrZero']));
const FILTER_STRINGS = (/* unused pure expression or super */ null && (['String', 'StringTrim', 'Url']));
const TYPES_TO_FILTERS = {
  'boolean': ['Bool'],
  'double': ['Float', 'FloatPositive', 'FloatPositiveOrZero'],
  'integer': ['Int', 'IntPositive', 'IntPositiveOrZero'],
  'string': ['String', 'StringTrim', 'Url']
};
;// CONCATENATED MODULE: ./assets/js/src/Constants/User.ts
/**
 * Please, do NOT change file content. The content was generated automatically by bin/generate/php_to_js_constants.php
 */

const US_ACTIVE = 1;
const US_DELETED = 3;
const USER_STATUSES = (/* unused pure expression or super */ null && ([1, 3]));
const AVAILABLE_USER_STATUSES = (/* unused pure expression or super */ null && ([1]));
const USER_STATUS_NAMES = {
  '1': 'Active',
  '3': 'Deleted'
};
const FLAG_NONE = 0;
const FLAG_BLOCK = 1;
const FLAG_NOAUCTIONAPPROVAL = 2;
const FLAG_DEF = 0;
const FLAGS = (/* unused pure expression or super */ null && ([0, 1, 2]));
const FLAG_ABBRS = (/* unused pure expression or super */ null && (['', 'BLK', 'NAA']));
const FLAG_NAMES = (/* unused pure expression or super */ null && (['Un-flagged', 'Blocked', 'No auction approval']));
const FLAG_SOAP_VALUES = (/* unused pure expression or super */ null && (['UNFLAGGED', 'BLOCKED', 'NAA']));
const FLAG_SEVERITY = {
  '0': 0,
  '2': 1,
  '1': 2
};
const TAX_NONE = 0;
const TAX_HP_BP = 1;
const TAX_HP = 2;
const TAX_BP = 3;
const TAX_SERVICES = 4;
const TAX_APPLICATIONS = (/* unused pure expression or super */ null && ([1, 2, 3, 4]));
const TAX_APPLICATION_NAMES = {
  '1': 'HP\u0026BP',
  '2': 'HP',
  '3': 'BP',
  '4': 'Services'
};
const PT_WORK = 1;
const PT_HOME = 2;
const PT_MOBILE = 3;
const PT_NONE = 0;
const PHONE_TYPES = (/* unused pure expression or super */ null && ([1, 2, 3]));
const PHONE_TYPE_NAMES = {
  '1': 'WORK',
  '2': 'HOME',
  '3': 'MOBILE'
};
const ALL_PHONE_TYPE_NAMES = {
  '1': 'WORK',
  '2': 'HOME',
  '3': 'MOBILE',
  '0': 'NONE'
};
const IDT_DRIVERSLICENSE = 1;
const IDT_PASSPORT = 2;
const IDT_SSN = 3;
const IDT_VAT = 4;
const IDT_OTHER = 5;
const IDT_NONE = 0;
const ENCRYPTED_IDENTIFICATION_TYPES = (/* unused pure expression or super */ null && ([3]));
const IDENTIFICATION_TYPES = (/* unused pure expression or super */ null && ([1, 2, 3, 4, 5]));
const IDENTIFICATION_TYPE_NAMES = {
  '1': 'DRIVERSLICENSE',
  '2': 'PASSPORT',
  '3': 'SSN',
  '4': 'VAT',
  '5': 'OTHER',
  '0': 'NONE'
};
const CT_WORK = 1;
const CT_HOME = 2;
const CT_NONE = 0;
const CONTACT_TYPE_ENUM = {
  '1': 'WORK',
  '2': 'HOME',
  '0': 'NONE'
};
const CONTACT_TYPE_NAMES = {
  '1': 'work',
  '2': 'home'
};
const VC_NOCODE = 'NOCODE';
const RENEW_PASSWORD_OPTION_NAMES = {
  '-1': 'Never',
  '20': '20 days',
  '60': '60 days',
  '90': '90 days',
  '180': '180 days',
  '365': '365 days'
};
;// CONCATENATED MODULE: ./assets/js/src/Constants/UserButtonInfo.ts
/**
 * Please, do NOT change file content. The content was generated automatically by bin/generate/php_to_js_constants.php
 */

const CUSTOMER_NO = 1;
const NAME = 2;
const USERNAME = 3;
const AVAILABLE_INFO = {
  '1': 'Customer no',
  '2': 'Name',
  '3': 'Username'
};
;// CONCATENATED MODULE: ./assets/js/src/Constants/UserCustomField.ts
/**
 * Please, do NOT change file content. The content was generated automatically by bin/generate/php_to_js_constants.php
 */

const PANEL_INFO = 1;
const PANEL_BILLING = 2;
const PANEL_SHIPPING = 3;
const panels = (/* unused pure expression or super */ null && ([1, 2, 3]));
const panelNames = {
  '1': 'Information',
  '2': 'Billing',
  '3': 'Shipping'
};
const availableTypes = (/* unused pure expression or super */ null && ([1, 2, 3, 4, 5, 6, 10, 11, 7, 9]));
const UserCustomField_encryptedTypes = (/* unused pure expression or super */ null && ([3, 6, 7, 11]));
;// CONCATENATED MODULE: ./assets/js/src/Constants/UserImpersonate.ts
/**
 * Please, do NOT change file content. The content was generated automatically by bin/generate/php_to_js_constants.php
 */

const CA_NATIVE = 'native';
const CA_FILE = 'file';
const CA_ARRAY = 'array';
const CACHE_ADAPTERS = (/* unused pure expression or super */ null && (['file', 'native']));
const CACHE_ADAPTER_NAMES = {
  'file': 'Key-value file storage',
  'native': 'Native php session'
};
;// CONCATENATED MODULE: ./assets/js/src/Constants/WatchlistReminder.ts
/**
 * Please, do NOT change file content. The content was generated automatically by bin/generate/php_to_js_constants.php
 */

const INTERVAL_NONE = 0;
const WatchlistReminder_INTERVAL_ONCE_PER_4_HOURS = 4;
const WatchlistReminder_INTERVAL_ONCE_PER_8_HOURS = 8;
const WatchlistReminder_INTERVAL_ONCE_PER_12_HOURS = 12;
const WatchlistReminder_INTERVAL_ONCE_PER_DAY = 24;
const WatchlistReminder_INTERVAL_ONCE_PER_2_DAYS = 48;
const WatchlistReminder_INTERVAL_ONCE_PER_3_DAYS = 72;
const WatchlistReminder_INTERVAL_ONCE_PER_4_DAYS = 96;
const WatchlistReminder_INTERVAL_ONCE_PER_5_DAYS = 120;
const WatchlistReminder_INTERVAL_ONCE_PER_6_DAYS = 144;
const WatchlistReminder_INTERVAL_ONCE_PER_7_DAYS = 168;
const WatchlistReminder_intervalHourNames = {
  '4': 'watchlist.reminder_email_interval.four_hours.option',
  '8': 'watchlist.reminder_email_interval.eight_hours.option',
  '12': 'watchlist.reminder_email_interval.twelve_hours.option',
  '24': 'watchlist.reminder_email_interval.one_day.option',
  '48': 'watchlist.reminder_email_interval.two_days.option',
  '72': 'watchlist.reminder_email_interval.three_days.option',
  '96': 'watchlist.reminder_email_interval.four_days.option',
  '120': 'watchlist.reminder_email_interval.five_days.option',
  '144': 'watchlist.reminder_email_interval.six_days.option',
  '168': 'watchlist.reminder_email_interval.seven_days.option'
};
;// CONCATENATED MODULE: ./assets/js/src/Constants/index.ts
/**
 * Index file for all constants
 * Export file of the package Constant (Barrel file https://angular.io/docs/ts/latest/glossary.html#barrel)
 */




































































































































;// CONCATENATED MODULE: ./assets/js/src/Components/Notify/GeneralNotification.ts
/* provided dependency */ var GeneralNotification_$ = __webpack_require__(98942);



let GeneralNotification_MessageType = /*#__PURE__*/function (MessageType) {
  MessageType[MessageType["Success"] = 1] = "Success";
  MessageType[MessageType["Info"] = 2] = "Info";
  MessageType[MessageType["Warning"] = 3] = "Warning";
  MessageType[MessageType["Error"] = 4] = "Error";
  return MessageType;
}({});

// Should be out of the class to avoid interference between different instance of the class
let timer;

/**
 * Class GeneralNotification
 */
class GeneralNotification {
  /**
   *
   * @param {string} containerClass
   */
  constructor(containerClass = '') {
    _defineProperty(this, "containerClass", void 0);
    _defineProperty(this, "containerId", 'notify-container');
    _defineProperty(this, "messages", void 0);
    this.messages = [];
    this.containerClass = containerClass ? containerClass : 'notify-top-right';
  }

  /**
   * @return {void}
   */
  clear() {
    this.messages = [];
    this.hideMessages();
  }

  /**
   *
   * @return {boolean}
   */
  hasMessages() {
    return this.messages.length > 0;
  }

  /**
   * Show alert message
   * @param {MessageType} type
   * @param {string} message
   * @param {string} title
   * @param {number} ttl
   * @return {void}
   */
  show(type, message, title = '', ttl = 10) {
    this.showMessageInContainer(type, message, title);
    this.startTimeoutToClearContainer(ttl);
  }

  /**
   * Add a message to the queue to show them at once
   * @param {MessageType} type
   * @param {string} message
   * @param {string} title
   * @param {number} ttl
   * @return {void}
   */
  add(type, message, title = '', ttl = 10) {
    const msg = {
      title: title,
      text: message,
      type: type,
      ttl: ttl
    };
    if (message) {
      this.messages.push(msg);
    }
  }

  /**
   *
   * @param {string} message
   * @param {string} title
   * @param {number} ttl
   * @return {void}
   */
  err(message, title = '', ttl = 10) {
    this.show(GeneralNotification_MessageType.Error, message, title, ttl);
  }

  /**
   *
   * @param {string} message
   * @param {string} title
   * @param {number} ttl
   * @return {void}
   */
  warn(message, title = '', ttl = 10) {
    this.show(GeneralNotification_MessageType.Warning, message, title, ttl);
  }

  /**
   *
   * @param {string} message
   * @param {string} title
   * @param {number} ttl
   * @return {void}
   */
  info(message, title = '', ttl = 10) {
    this.show(GeneralNotification_MessageType.Info, message, title, ttl);
  }

  /**
   *
   * @param {string} message
   * @param {string} title
   * @param {number} ttl
   * @return {void}
   */
  success(message, title = '', ttl = 10) {
    this.show(GeneralNotification_MessageType.Success, message, title, ttl);
  }

  /**
   *
   * Show all messages in the queue
   * @return {void}
   */
  showAll() {
    if (this.messages.length <= 0) {
      return;
    }
    this.hideMessages();
    let ttl = 0;
    this.messages.forEach(message => {
      this.showMessageInContainer(message.type, message.text, message.title);
      ttl = message.ttl > ttl ? message.ttl : ttl;
    });
    this.startTimeoutToClearContainer(ttl);
    this.messages = [];
  }

  /**
   *
   * @return {void}
   */
  hideMessages() {
    this.createContainer().remove();
  }

  /**
   *
   * Get Container prepared to work
   * @return {JQuery<HTMLElement>}
   */
  getContainerElement() {
    this.addContainerToDom();
    return this.createContainer();
  }

  /**
   *
   * Add the message to the container
   * @param {MessageType} type
   * @param {string} message
   * @param {string} title
   * @return {void}
   */
  showMessageInContainer(type, message, title) {
    const html = GeneralNotification.renderTemplate(type, message, title);
    this.getContainerElement().append(html);
  }

  /**
   *
   * Start timeout witch will clear all messages
   * @param {number} ttl
   * @return {void}
   */
  startTimeoutToClearContainer(ttl) {
    ttl = GeneralNotification.prepareTtl(ttl);
    clearTimeout(timer);
    if (ttl !== -1) {
      timer = window.setTimeout(() => this.hideMessages(), ttl * 1000);
    }
  }

  /**
   *
   * Make sure that we have adequate ttl value
   * @param {number} ttl
   * @return {number}
   */
  static prepareTtl(ttl) {
    if (ttl !== -1 && (ttl < 0 || ttl > 60)) {
      ttl = 10;
    }
    return ttl;
  }

  /**
   *
   * Check if Container exists in the DOM
   * @return {boolean}
   */
  isContainerExist() {
    return this.createContainer().length !== 0;
  }

  /**
   *
   * Create jQuery Container element
   * @return {JQuery<HTMLElement>}
   */
  createContainer() {
    return GeneralNotification_$('#' + this.containerId);
  }

  /**
   *
   * Adding container to the DOM if the container does not already present
   * @return {void}
   */
  addContainerToDom() {
    if (this.isContainerExist()) {
      return;
    }
    const container = `<div id="${this.containerId}" class="${this.containerClass}"></div>`;
    GeneralNotification_$('body').append(container);
  }

  /**
   *
   * Render the message template
   * @param {MessageType} type
   * @param {string} message
   * @param {string} title
   * @return {string}
   */
  static renderTemplate(type, message, title) {
    return `<div class="notify ${GeneralNotification.typeToClass(type)}">
    <div class="notify-title">${title}</div>
    <div class="notify-message">${message}</div>
    </div>`;
  }

  /**
   *
   * Converting Message Type to a specific css class
   * @param {MessageType} type
   * @return {string}
   */
  static typeToClass(type) {
    switch (type) {
      case GeneralNotification_MessageType.Error:
        return 'notify-error';
      case GeneralNotification_MessageType.Info:
        return 'notify-info';
      case GeneralNotification_MessageType.Warning:
        return 'notify-warning';
      default:
        return 'notify-success';
    }
  }
}
;// CONCATENATED MODULE: ./assets/js/src/Components/SamUtil/ServerData/ResponseMessagesRenderer.ts


/**
 * Class ResponseMessagesRenderer
 */
class ResponseMessagesRenderer {
  /**
   *
   * @param {GeneralNotification} alerts
   */
  constructor(alerts) {
    _defineProperty(this, "_alerts", void 0);
    this._alerts = alerts;
  }

  /**
   *
   * @param{ServerResponseMessagesInterface | ResponseMessageContainer} messages
   * @return {void}
   */
  render(messages) {
    if ('success' in messages && Array.isArray(messages.success)) {
      messages.success.forEach(msg => this._alerts.add(MessageType.Success, msg));
    }
    if ('warn' in messages && Array.isArray(messages.warn)) {
      messages.warn.forEach(msg => this._alerts.add(MessageType.Warning, msg));
    }
    if ('errors' in messages && Array.isArray(messages.errors)) {
      messages.errors.forEach(msg => this._alerts.add(MessageType.Error, msg));
    }
    if ('info' in messages && Array.isArray(messages.info)) {
      messages.info.forEach(msg => this._alerts.add(MessageType.Info, msg));
    }
    this._alerts.showAll();
  }
}
/* harmony default export */ var ServerData_ResponseMessagesRenderer = ((/* unused pure expression or super */ null && (ResponseMessagesRenderer)));
;// CONCATENATED MODULE: ./assets/js/src/Components/SamUtil/Window.js


/**
 * redirect to another url
 * @param url
 * @param target
 */
function redirect(url, target = '_self') {
  if (target === null || target === undefined || target === '') {
    target = '_self';
  }
  switch (target) {
    // Open link in current document
    case '_self':
      document.location = url;
      break;
    // Cancel eventual framesets and open link in current window
    case '_top':
      top.location = url;
      break;
    // Open link in new window
    case '_blank':
      window.open(url);
      break;
    // Open link in parent frame
    case '_parent':
      parent.location = url;
      break;
    // Open link in the specified frame
    default:
      parent.frames[target].location = url;
  }
}

/**
 * reload current page
 * @param {boolean} forceGet
 */
function reload(forceGet = false) {
  window.location.reload(forceGet);
}
function openWindow(url, name, width, height, resize = 'no', scroll = 'no', location = 'no', menu = 'no', tool = 'no', status = 'no') {
  const left = parseInt(screen.availWidth / 2 - width / 2);
  const top = parseInt(screen.availHeight / 2 - height / 2);
  const features = `width=${width},height=${height},left=${left},top=${top},screenX=${left},screenY=${top},resizable=${resize},scrollbars=${scroll},location=${location},menubar=${menu},toolbar=${tool},status=${status}`;
  window.open(url, name, features);
}

/**
 * run cb (callback) when window is focused or visible
 * @param cb
 */
function handleFocusWindowEvent(cb) {
  jquery_exposed_default()(window).on('blur focus', function (e) {
    const prevType = jquery_exposed_default()(e.currentTarget).data('prevType');
    if (prevType !== e.type) {
      //  reduce double fire issues
      if (e.type === 'focus') {
        cb();
      }
    }
    jquery_exposed_default()(e.currentTarget).data('prevType', e.type);
  });
  let hidden = 'hidden';

  // Standards:
  if (hidden in document) {
    document.addEventListener('visibilitychange', onchange);
  } else if ((hidden = 'mozHidden') in document) {
    document.addEventListener('mozvisibilitychange', onchange);
  } else if ((hidden = 'webkitHidden') in document) {
    document.addEventListener('webkitvisibilitychange', onchange);
  } else if ((hidden = 'msHidden') in document) {
    document.addEventListener('msvisibilitychange', onchange);
  } else if ('onfocusin' in document) {
    // IE 9 and lower:
    document.onfocusin = document.onfocusout = onchange;
  } else {
    // All others:
    window.onpageshow = window.onpagehide = window.onfocus = window.onblur = onchange;
  }

  // set the initial state (but only if browser supports the Page Visibility API)
  if (document[hidden] !== undefined) {
    onchange({
      type: document[hidden] ? 'blur' : 'focus'
    });
  }
  function onchange(evt) {
    const v = 'visible';
    const h = 'hidden';
    const evtMap = {
      focus: v,
      focusin: v,
      pageshow: v,
      blur: h,
      focusout: h,
      pagehide: h
    };
    evt = evt || window.event;
    // eslint-disable-next-line no-invalid-this
    const state = evt.type in evtMap ? evtMap[evt.type] : this[hidden] ? 'hidden' : 'visible';
    if (state === 'visible') {
      cb();
    }
  }
}

/**
 * Scroll to a DOM element
 * @param selector
 */
function scrollToElement(selector) {
  const object = jquery_exposed_default()(selector).offset();
  jquery_exposed_default()('html, body').animate({
    scrollTop: object.top,
    duration: 0
  });
}

/**
 * Replacement for jquery $(document).ready(function)
 * as we need it out of the webpack namespace in the QCodo code (php)
 * @param callback
 */
function onPageLoad(callback) {
  if (document.readyState === 'loading') {
    window.addEventListener('DOMContentLoaded', () => callback());
  } else {
    callback();
  }
}
function fixDoubleTapOnMobile() {
  document.addEventListener('touchstart', () => {}, false);
}

;// CONCATENATED MODULE: ./assets/js/src/Constants/Admin/AuctionBidReportFormConstants.ts
/**
 * Please, do NOT change file content. The content was generated automatically by bin/generate/php_to_js_constants.php
 */

const DR_BID = 'BD';
const DR_AUCTION = 'AD';
const dateRanges = (/* unused pure expression or super */ null && (['BD', 'AD']));
const dateRangeNames = {
  'BD': 'Bid date',
  'AD': 'Auction date'
};
;// CONCATENATED MODULE: ./assets/js/src/Constants/Admin/AuctionListFormConstants.ts
/**
 * Please, do NOT change file content. The content was generated automatically by bin/generate/php_to_js_constants.php
 */

const CID_LST_ACCOUNT = 'alf14';
const CID_BTN_CREATE = 'alf2';
const CID_LST_AUCTION_STATUS = 'alf3';
const CID_DTG_AUCTIONS = 'alf4';
const CID_LST_AUCTION_TYPE = 'alf8';
const CID_LST_PUBLISHED = 'alf9';
const CID_BTN_DOWNLOAD_BIDS = 'alf10';
const CID_DLG_AUCTION_LIST = 'alf11';
const CID_TXT_SEARCH_SALE_NO = 'alf12';
const CID_BTN_SEARCH_SALE_NO = 'alf13';
const CID_TXT_SEARCH_KEYWORD = 'alf15';
const CID_BTN_SEARCH_KEYWORD = 'alf16';
const CID_BTN_DELETE_TPL = 'btnD%s';
const CID_BTN_ARCHIVE_TPL = 'btnA%s';
const CID_BTN_UPDATE_TPL = 'btnU%s';
const CID_BTN_RESET_TPL = 'btnR%s';
const CID_BTN_REOPEN_TPL = 'btnRO%s';
const CID_PNL_AUCTIONS_REPORTS = 'alfPnlAuctionsReports';
const CID_BLK_SECTION_REPORTS = 'section_reports';
const CID_BLK_REPORTS = 'reports';
const CID_PNL_AUCTIONS_SEARCH = 'alfPnlAuctionsSearch';
const CID_BTN_SECTION_SEARCH = 'section_search1';
const CID_BLK_SECTION_SEARCH = 'section_search1_div';
const CID_AUCTION_LIST_FORM = 'AuctionListForm';
const CID_BLK_AUCTION_LIST_CONTAINER = 'auction-list-container';
const CID_DIALOG_MESSAGE = 'dialog-message';
const SAS_ACTIVE = 'active';
const SAS_CLOSED = 'closed';
const SAS_ARCHIVED = 'archived';
const SAS_ALL = 'all';
const SAS_DEFAULT = 'active';
const PF_ALL = 1;
const PF_PUBLISHED = 2;
const PF_UNPUBLISHED = 3;
const PF_DEFAULT = 1;
const CSS_CLASS_DTG_AUCTIONS_COL_CUSTOM_FIELDS_PREFIX = 'a-cf-';
const CSS_CLASS_DTG_AUCTIONS_COL_START_DATE = 'a-start-date';
const CSS_CLASS_DTG_AUCTIONS_COL_END_DATE = 'a-end-date';
const CSS_CLASS_DTG_AUCTIONS_COL_LOTS = 'a-total-lots';
const CSS_CLASS_DTG_AUCTIONS_COL_SALE_NUM = 'a-sale-num';
const CSS_CLASS_DTG_AUCTIONS_COL_NAME = 'a-name';
const CSS_CLASS_DTG_AUCTIONS_COL_STATUS = 'a-status';
const CSS_CLASS_DTG_AUCTIONS_COL_TYPE = 'a-type';
const CSS_CLASS_DTG_AUCTIONS_COL_PUBLISHED = 'a-published';
const CSS_CLASS_DTG_AUCTIONS_COL_ACCOUNT_NAME = 'a-account-name';
const CSS_CLASS_DTG_AUCTIONS_COL_ACTIONS = 'a-actions';
const CLASS_LNK_RESET = 'resetlink';
const showAuctionStatuses = (/* unused pure expression or super */ null && (['active', 'closed', 'archived', 'all']));
const showAuctionStatusNames = {
  'active': 'Active',
  'closed': 'Closed',
  'archived': 'Archived',
  'all': 'All'
};
const publishedFilters = (/* unused pure expression or super */ null && ([1, 2, 3]));
const publishedFilterNames = {
  '1': 'All',
  '2': 'Published only',
  '3': 'Unpublished only'
};
;// CONCATENATED MODULE: ./assets/js/src/Constants/Admin/LotImageBucketFormConstants.ts
/**
 * Please, do NOT change file content. The content was generated automatically by bin/generate/php_to_js_constants.php
 */

const CID_LST_ASSOCIATE_BY = 'libf2';
const CID_IMG_FILE_ICON_ARRAY = 'libf2';
const CID_TXT_LOT = 'libf4';
const CID_CHK_IMAGE_AUTO_ORIENT = 'libf5';
const CID_CHK_IMAGE_OPTIMIZE = 'libf6';
const CID_CHK_REMOVE_ASSIGNED_IMAGES = 'libf7';
const CID_ICO_IMAGE_FILE_TPL = '%sid%s';
const CID_HID_LOT_ITEM = 'hdnlid';
const CID_BLK_IMAGE_CONTAINER = 'image-container';
const CID_BLK_LOT_IMAGE_CONTAINER = 'lot_image_container';
const CID_BLK_WAITING_ICON_BELOW_BUCKET = 'waiting-icon-below-bucket';
const CID_BLK_DRAG_HERE = 'drag_here';
const CID_LBL_INSERT_STRATEGY = 'insert_strategy_span';
const CID_LST_INSERT_STRATEGY = 'insert_strategy';
const CID_BTN_MANUALLY = 'manually-btn';
const CID_BLK_SELECT_LOT = 'select_lot';
const CID_BTN_SAVE_ORDER_LOT = 'save-order-lot';
const CID_BTN_PREV = 'prev_btn';
const CID_BTN_NEXT = 'next_btn';
const CID_BTN_ASSOC_RESULT = 'assoc-result';
const CID_BTN_ASSOC_ERRORS = 'assoc-errors';
const CID_BTN_SAVE_ORDER = 'save-order-btn';
const CID_BLK_IMAGE_TPL = '_image%s';
const CID_BLK_UPLOAD_SERVER_ERRORS = 'server-errors';
const CID_BLK_LOT_IMAGE_TPL = 'lot_image_%s';
const CID_BTN_DELETE_IMAGE_TPL = 'delImg_%s';
const CID_BTN_DELETE_LOT_IMAGE_TPL = 'delLotImg_%s';
const CID_BTN_DELETE_ALL = 'delAll';
const CID_BTN_ASSOCIATE = 'associate-btn';
const CID_BTN_ORDER_BY_FILENAME = 'order-by-filename-btn';
const CID_LOT_IMAGE_BUCKET_FORM = 'LotImageBucketForm';
const CID_SUB_CONTENT = 'sub-content';
const CID_BLK_TEMPLATE_UPLOAD = 'template-upload';
const STRAT_APPEND = 'ap';
const STRAT_PREPEND = 'pr';
const STRAT_REPLACE = 're';
const DEF_STRATEGY = 'pr';
const CLASS_BLK_ASSOCIATING_INDICATOR = 'associating-indicator';
const CLASS_BLK_IMAGE_BOX = 'image-box';
const CLASS_BLK_IMAGE_CONTAINER = 'image-container';
const CLASS_BLK_LIST_BOX = 'listbox';
const CLASS_BLK_NEXT_PREV_BTN = 'next_prev_btn';
const CLASS_BLK_NEW = 'new';
const CLASS_BLK_RIGHT_CONT = 'right_cont';
const CLASS_BLK_UI_AUTO_COMPLETE_LOADING = 'ui-autocomplete-loading';
const CLASS_BLK_UI_SELECTED = 'ui-selected';
const CLASS_BLK_UPLOAD_NOTICE = 'uploadNotice';
const CLASS_BTN_CANCEL = 'cancel';
const CLASS_BTN_DELETE_IMAGE = 'delImg';
const insertStrategies = {
  'ap': 'Append Images',
  'pr': 'Prepend Images',
  're': 'Replace Images'
};
;// CONCATENATED MODULE: ./assets/js/src/Constants/Admin/NotificationConstants.ts
/**
 * Please, do NOT change file content. The content was generated automatically by bin/generate/php_to_js_constants.php
 */

const CID_BLK_FLASH_NOTIFICATION = 'flash-notification';
const CID_CTN_MESSAGE_TOP = 'message-top';
const CID_CTN_MESSAGE_BOTTOM = 'message-bottom';
const CID_CTN_ALERT_MESSAGES = 'alert_messages';
const CLASS_BLK_ON = 'on';
const CLASS_BLK_SB_HOLDER = 'sbHolder';
const CLASS_BLK_SUB_TITLES = 'sub-titles';
const CLASS_BLK_TITLE = 'title';
const CLASS_BLK_VALIDATION_ERROR_CHECKBOX = 'validation-error-checkbox';
const CLASS_BLK_VALIDATION_ERROR = 'validation-error';
const CLASS_BLK_VALIDATION_ERROR_LIST_BOX = 'validation-error-listbox';
const CLASS_BTN_ACCORDION = 'accordionButton';
;// CONCATENATED MODULE: ./assets/js/src/Constants/Admin/SaleStaffReportFormConstants.ts
/**
 * Please, do NOT change file content. The content was generated automatically by bin/generate/php_to_js_constants.php
 */

const SaleStaffReportFormConstants_CID_LST_ACCOUNT = 'ssf13';
const CID_CAL_DATE_FROM = 'ssf1';
const CID_CAL_DATE_TO = 'ssf2';
const CID_RAD_DATE_RANGE_TYPE = 'ssf4';
const CID_LST_APPLY_PAYOUT_TO = 'ssf5';
const CID_LST_APPLY_PAYOUT_IF = 'ssf6';
const CID_BTN_CONSOLIDATE = 'ssf7';
const CID_DTG_LOT_ITEMS = 'ssf9';
const CID_BTN_GENERATE = 'ssf10';
const CID_BTN_LOCATION = 'ssf11';
const CID_BTN_SHOW_ALL = 'ssf12';
const CID_TXT_AUTOCOMPLETE_SALES_STAFF = 'ssf14';
const CID_HID_AUTOCOMPLETE_SALES_STAFF = 'ssf15';
const SaleStaffReportFormConstants_CT_NONE = 0;
const CT_SALE_STAFF = 1;
const CT_LOCATION_OFFICE = 2;
const DR_DATE_SOLD = 'DS';
const DR_INVOICE_DATE = 'ID';
const DR_PAYMENT_DATE = 'PD';
const PAT_HP = 'HP';
const PAT_HPBP = 'HPBP';
const PAT_TTL = 'TTL';
const PAIS_SHIPPED = 'SH';
const PAIS_PAID_OR_SHIPPED = 'PDSH';
const PAIS_ANY = 'AY';
const ORD_SALE_STAFF = 'saleStaff';
const ORD_OFFICE_LOCATION = 'officeLocation';
const ORD_CONSIGNOR_USER = 'consignorUser';
const ORD_CONSIGNOR_COMPANY = 'consignorCompany';
const ORD_BUYER_USER = 'buyerUser';
const ORD_BUYER_COMPANY = 'buyerCompany';
const ORD_ITEM_NO = 'itemNo';
const ORD_AUCTION_NAME = 'auctionName';
const ORD_LOT_NO = 'lotNo';
const ORD_LOT_NAME = 'lotName';
const ORD_INVOICE_STATUS = 'invoiceStatus';
const ORD_HAMMER_PRICE = 'hammerPrice';
const ORD_BUYERS_PREMIUM = 'buyersPremium';
const ORD_SALE_TAX = 'saleTax';
const ORD_TOTAL = 'total';
const ORD_PAYOUT = 'payout';
const ORD_DATE_SOLD = 'dateSold';
const ORD_INVOICE_DATE = 'invoiceDate';
const ORD_PAYMENT_DATE = 'paymentDate';
const ORD_REFERRER = 'referrer';
const ORD_REFERRER_HOST = 'referrerHost';
const consolidationTypes = (/* unused pure expression or super */ null && ([0, 1, 2]));
const dateRangeTypes = (/* unused pure expression or super */ null && (['DS', 'ID', 'PD']));
const dateRangeOptionNames = {
  'DS': 'Use date sold',
  'ID': 'Use invoice date',
  'PD': 'Use payment date'
};
const payoutApplicationTypeNames = {
  'HP': 'Hammer price only',
  'HPBP': 'Hammer price plus BP',
  'TTL': 'Total'
};
const payoutApplicationOnInvoiceStatusNames = {
  'AY': 'Any',
  'SH': 'Shipped',
  'PDSH': 'Paid or Shipped'
};
const orderKeysToColumns = {
  'saleStaff': ['ucon.added_by'],
  'officeLocation': ['l.address'],
  'consignorUser': ['ucon.username'],
  'consignorCompany': ['uicon.company_name'],
  'buyerUser': ['ubid.username'],
  'buyerCompany': ['uibid.company_name'],
  'itemNo': ['li.item_num'],
  'auctionName': ['a.name'],
  'lotNo': ['ali.lot_num'],
  'lotName': ['li.name'],
  'invoiceStatus': ['inv_status_name'],
  'hammerPrice': ['ii.hammer_price'],
  'buyersPremium': ['buyers_premium'],
  'saleTax': ['sales_tax'],
  'total': ['total'],
  'dateSold': ['li.date_sold'],
  'invoiceDate': ['i.created_on'],
  'paymentDate': ['payment_date'],
  'referrer': ['uibid.referrer'],
  'referrerHost': ['uibid.referrer_host']
};
;// CONCATENATED MODULE: ./assets/js/src/Constants/Admin/SettlementListFormConstants.ts
/**
 * Please, do NOT change file content. The content was generated automatically by bin/generate/php_to_js_constants.php
 */

const CID_ICO_WAIT = 'slf1';
const CID_LST_STATUS_FILTER = 'slf2';
const SettlementListFormConstants_CID_BTN_GENERATE = 'slf3';
const CID_DTG_SETTLEMENTS = 'slf5';
const CID_CHK_CHOOSE_ALL = 'slf8';
const CID_BTN_EXPORT = 'slf10';
const CID_CHK_UNPAID_LOTS = 'slf12';
const CID_LST_CONSIGNOR = 'slf16';
const CID_BTN_LINE_ITEM_EXPORT = 'slf17';
const CID_AUTOCOMPLETE_FILTER_AUCTION = 'slf18';
const CID_DLG_SETTLEMENT_LINE_ITEM = 'slf19';
const CID_LST_ACTION = 'slf20';
const CID_BTN_ACTION_GO = 'slf21';
const CID_HID_CONFIRM_DELETE = 'slf22';
const CID_LST_ACCOUNT_FILTER = 'slf23';
const CID_LST_ACCOUNT_GENERATE = 'slf28';
const CID_TXT_CONSIGNOR = 'slf24';
const CID_HID_CONSIGNOR = 'slf25';
const CID_AUTOCOMPLETE_GENERATE_AUCTION = 'slf26';
const CID_BTN_SEARCH = 'slf27';
const CID_BTN_SEARCH_RESET = 'slf29';
const CID_CHK_SETTLEMENT_TPL = '%scSet%s';
const SettlementListFormConstants_CID_BTN_DELETE_TPL = '%sbdel%s';
const CID_BTN_PAID_TPL = '%sbpaid%s';
const CID_BLK_GENERATE_AUCTION_LIST_CONTAINER = 'auction-list-container';
const CID_BLK_FILTER_AUCTION_LIST_CONTAINER = 'auction-list-container-sec';
const CID_SETTLEMENT_LIST_FORM = 'SettlementListForm';
const CID_BTN_ALL_CHECKS = 'btnAllChecks';
const LA_NONE = 0;
const LA_EMAIL = 1;
const LA_PRINT = 2;
const LA_DELETE = 3;
const LA_MERGE = 4;
const LA_CHARGE_AUTH_NET = 5;
const LA_CHARGE_PAY_TRACE = 7;
const LA_CHARGE_NMI = 8;
const LA_CHARGE_OPAYO = 9;
const LA_WORK_WITH_CHECKS = 10;
const LA_CREATE_CHECKS = 11;
const SELECT_ACTION = 0;
const CHARGE_AUTH_NET = 1;
const CHARGE_PAY_TRACE = 4;
const CHARGE_EWAY = 5;
const CHARGE_NMI = 6;
const CHARGE_OPAYO = 7;
const CLASS_CHK_SETTLEMENT = 'settlement';
const listActionNames = {
  '0': 'go_action.list_box.prompt',
  '1': 'go_action.selector.email.option',
  '2': 'go_action.selector.print.option',
  '3': 'go_action.selector.delete.option',
  '4': 'go_action.selector.merge.option',
  '5': 'go_action.selector.charge_authorize_net.option',
  '7': 'go_action.selector.charge_pay_trace.option',
  '8': 'go_action.selector.charge_nmi.option',
  '9': 'go_action.selector.charge_opayo.option',
  '10': 'go_action.selector.work_with_checks.option',
  '11': 'go_action.selector.create_checks.option'
};
const chargeActionNames = {
  '1': 'go_action.selector.charge_authorize_net.option',
  '4': 'go_action.selector.charge_pay_trace.option',
  '5': 'go_action.selector.charge_eway.option',
  '6': 'go_action.selector.charge_nmi.option',
  '7': 'go_action.selector.charge_opayo.option'
};
;// CONCATENATED MODULE: ./assets/js/src/Constants/Admin/StackedTaxInvoiceListFormConstants.ts
/**
 * Please, do NOT change file content. The content was generated automatically by bin/generate/php_to_js_constants.php
 */

const IS_ALL = 0;
const StackedTaxInvoiceListFormConstants_LA_NONE = 0;
const StackedTaxInvoiceListFormConstants_LA_EMAIL = 1;
const StackedTaxInvoiceListFormConstants_LA_PRINT = 2;
const StackedTaxInvoiceListFormConstants_LA_DELETE = 3;
const StackedTaxInvoiceListFormConstants_LA_MERGE = 4;
const StackedTaxInvoiceListFormConstants_LA_CHARGE_AUTH_NET = 5;
const StackedTaxInvoiceListFormConstants_LA_CHARGE_PAY_TRACE = 8;
const StackedTaxInvoiceListFormConstants_LA_CHARGE_NMI = 9;
const StackedTaxInvoiceListFormConstants_LA_CHARGE_OPAYO = 10;
const LA_CHARGE_EWAY = 11;
const CID_INVOICE_LIST_FORM = 'StackedTaxInvoiceListForm';
const StackedTaxInvoiceListFormConstants_CID_BLK_AUCTION_LIST_CONTAINER = 'auction-list-container';
const CID_ICO_DTG_WAIT = 'stilf1';
const CID_ICON_REFRESH = 'stilf1b';
const StackedTaxInvoiceListFormConstants_CID_LST_ACCOUNT = 'stilf36';
const StackedTaxInvoiceListFormConstants_CID_LST_STATUS_FILTER = 'stilf2';
const CID_CHK_INCLUDE_SOLD_UNDER_CONDITION = 'stilf53';
const CID_CHK_SOLD_DATE = 'stilf47';
const CID_CAL_START_DATE = 'stilf37';
const CID_LST_START_HOUR = 'staip38';
const CID_LST_START_MINUTE = 'staip39';
const CID_LST_START_MERIDIEM = 'staip40';
const CID_CAL_END_DATE = 'stilf41';
const CID_LST_END_HOUR = 'stilf42';
const CID_LST_END_MINUTE = 'stilf43';
const CID_LST_END_MERIDIEM = 'stilf44';
const CID_LST_WINNING_AUCTION = 'stilf45';
const CID_BTN_REFRESH_WINNING_BIDDERS_LIST = 'stilf3b';
const CID_LST_ITEM_PER_PAGE = 'stilf13';
const CID_DTG_INVOICES = 'stilf5';
const CID_DTG_INVOICES_PER_PAGE_SELECTOR = 'stilfDtgPerPageSelector';
const CID_TXT_SEARCH_KEY = 'stilf6';
const CID_HID_SOURCE_PAGE = 'stilf12';
const CID_TXT_INVOICE_NO = 'stilf38';
const CID_HID_AUCTION_FILTER = 'stilf25';
const CID_TXT_BIDDER_FILTER = 'stilf39';
const CID_HID_BIDDER_FILTER = 'stilf46';
const StackedTaxInvoiceListFormConstants_CID_BTN_SEARCH = 'stilf7';
const CID_BTN_RESET_SEARCH = 'stilf50';
const CID_CHK_CHECK_ALL = 'stilf9';
const CID_LST_PRIMARY_SORT = 'stilf16';
const CID_LST_SECONDARY_SORT = 'stilf17';
const CID_LST_WINNING_USER = 'stilf18';
const StackedTaxInvoiceListFormConstants_CID_LST_ACTION = 'stilf29';
const StackedTaxInvoiceListFormConstants_CID_BTN_ACTION_GO = 'stilf30';
const CID_BTN_SORT = 'stilf19';
const StackedTaxInvoiceListFormConstants_CID_BTN_GENERATE = 'stilf3';
const CID_TXT_GENERATE = 'stilf3m';
const CID_BTN_ITEM_SOLD = 'stilf23';
const CID_DLG_INVOICE_ITEMS_SOLD = 'stilf24';
const CID_DLG_CONFIRM_UNSOLD_REMOVE_INVOICES = 'stilf31';
const CID_LST_CURRENCY_FILTER = 'stilf28';
const StackedTaxInvoiceListFormConstants_CID_HID_CONFIRM_DELETE = 'stilf35';
const CID_TXT_BIDDER_NUMBER = 'stilf48';
const CID_TXT_CUSTOMER_NUMBER = 'stilf49';
const CID_RAD_TAX_DETERMINATION = 'stilf51';
const CID_LST_TAX_DETERMINATION_BY_ADDRESS = 'stilf52';
const CID_PNL_INVOICES = 'stilfPnlInvoices';
const CID_PNL_INVOICES_REPORTS = 'stilfPnlInvoicesReports';
const CID_CHK_INVOICE_TPL = '%scInv%s';
const StackedTaxInvoiceListFormConstants_CID_BTN_DELETE_TPL = '%sbdel%s';
const StackedTaxInvoiceListFormConstants_CID_BTN_PAID_TPL = '%sbpaid%s';
const CID_FOCUS_TPL = 'stilf5row%s';
const CLASS_BLK_CLOSE_ALL = 'closeall';
const CLASS_BLK_SEARCH_SECTION = 'searchSection';
const CLASS_BLK_USER_BULK_UPLOAD = 'user-bulk-upload';
const CLASS_CHK_INVOICE = 'invoice';
const CLASS_LNK_ITEMS = 'items';
const CLASS_LNK_Q_IMPORT = 'qimport';
const CLASS_LNK_REPORT = 'report';
const CLASS_LNK_SEARCH = 'search';
const CLASS_TBL_REPORT = 'tablereport';
const CLASS_TAX_DETERMINATION_BY_ADDRESS = 'tax-determination-by-address-container';
const StackedTaxInvoiceListFormConstants_listActionNames = {
  '0': 'go_action.list_box.prompt',
  '1': 'go_action.selector.email.option',
  '2': 'go_action.selector.print.option',
  '3': 'go_action.selector.delete.option',
  '4': 'go_action.selector.merge.option',
  '5': 'go_action.selector.charge_authorize_net.option',
  '8': 'go_action.selector.charge_pay_trace.option',
  '9': 'go_action.selector.charge_nmi.option',
  '10': 'go_action.selector.charge_opayo.option',
  '11': 'go_action.selector.charge_eway.option'
};
;// CONCATENATED MODULE: ./assets/js/src/Constants/Admin/SystemParameterAdminOptionAuctionLotsPagePanelConstants.ts
/**
 * Please, do NOT change file content. The content was generated automatically by bin/generate/php_to_js_constants.php
 */

const CID_LST_LOT_STATUS = 'aof27';
const PANEL_TO_PROPERTY_MAP = {
  'aof27': 'LotStatus'
};
;// CONCATENATED MODULE: ./assets/js/src/Constants/Admin/SystemParameterAdminOptionDateTimezonePanelConstants.ts
/**
 * Please, do NOT change file content. The content was generated automatically by bin/generate/php_to_js_constants.php
 */

const CID_TXT_TIMEZONE = 'aof2';
const CID_LST_DEFAULT_COUNTRY = 'aof3';
const CID_LST_ADMIN_DATE_FORMAT = 'aof28';
const CID_LST_LOCALE = 'aof5';
const CID_LST_ADMIN_LANGUAGE = 'aof6';
const SystemParameterAdminOptionDateTimezonePanelConstants_PANEL_TO_PROPERTY_MAP = {
  'aof2': 'TimezoneId',
  'aof3': 'DefaultCountry',
  'aof28': 'AdminDateFormat',
  'aof5': 'Locale',
  'aof6': 'AdminLanguage'
};
;// CONCATENATED MODULE: ./assets/js/src/Constants/Admin/SystemParameterAdminOptionImagesPanelConstants.ts
/**
 * Please, do NOT change file content. The content was generated automatically by bin/generate/php_to_js_constants.php
 */

const SystemParameterAdminOptionImagesPanelConstants_CID_CHK_IMAGE_OPTIMIZE = 'aof31';
const SystemParameterAdminOptionImagesPanelConstants_CID_CHK_IMAGE_AUTO_ORIENT = 'aof30';
const SystemParameterAdminOptionImagesPanelConstants_PANEL_TO_PROPERTY_MAP = {
  'aof31': 'ImageOptimize',
  'aof30': 'ImageAutoOrient'
};
;// CONCATENATED MODULE: ./assets/js/src/Constants/Admin/SystemParameterAdminOptionInventoryPagePanelConstants.ts
/**
 * Please, do NOT change file content. The content was generated automatically by bin/generate/php_to_js_constants.php
 */

const CID_HID_LOT_FIELD_ORDER = 'aof22';
const CID_LNK_LOT_DEFAULT_ORDER = 'aof23';
const CID_DTG_LOT_FIELD_CONFIG = 'aof24';
const CID_CHK_ITEM_NUM_LOCK = 'aoip1';
const CID_CHK_VISIBLE_TPL = '%schk%s';
const CID_HID_CONFIG_TPL = '%shid%s';
const CID_CHK_REQUIRED_TPL = '%schkReq%s';
const SystemParameterAdminOptionInventoryPagePanelConstants_PANEL_TO_PROPERTY_MAP = {
  'aoip1': 'ItemNumLock'
};
;// CONCATENATED MODULE: ./assets/js/src/Constants/Admin/SystemParameterAdminOptionUserInfoPanelConstants.ts
/**
 * Please, do NOT change file content. The content was generated automatically by bin/generate/php_to_js_constants.php
 */

const CID_LST_SHARE_USER_INFO = 'aof25';
const CID_CHK_SHARE_USER_STATS = 'aof26';
const CID_CHK_ALLOW_ADD_FLOOR_BIDDER = 'chkAllowAddFloorBidder';
const CID_CHK_ALLOW_MAKE_BIDDER_PREFERRED = 'chkAllowMakeBidderPreferred';
const CID_BLK_ALLOW_MAKE_BIDDER_PREFERRED = 'blkAllowMakeBidderPreferred';
const SystemParameterAdminOptionUserInfoPanelConstants_PANEL_TO_PROPERTY_MAP = {
  'aof25': 'ShareUserInfo',
  'aof26': 'ShareUserStats',
  'chkAllowAddFloorBidder': 'AllowAccountAdminAddFloorBidder',
  'chkAllowMakeBidderPreferred': 'AllowAccountAdminMakeBidderPreferred'
};
;// CONCATENATED MODULE: ./assets/js/src/Constants/Admin/SystemParameterAuctionCatalogPanelConstants.ts
/**
 * Please, do NOT change file content. The content was generated automatically by bin/generate/php_to_js_constants.php
 */

const CID_CHK_DISPLAY_QUANTITY = 'scf45';
const CID_LST_ITEMS_PER_PAGE = 'scf39';
const CID_CHK_HAMMER_BP = 'uof46';
const CID_CHK_LST_AUCTION_STATUSES = 'spbf3';
const CID_LST_AUCTION_LINK_DESTINATION = 'spbf71';
const CID_CHK_USE_ALTERNATE_PDF_CATALOG = 'scf88';
const CID_CHK_ADD_DESCRIPTION_IN_LOT_NUM = 'scf102';
const CID_CHK_SHOW_WINNER_IN_CATALOG = 'scf68';
const CID_CHK_RESERVE_NOT_MET_NOTICE = 'uof123';
const CID_CHK_RESERVE_MET_NOTICE = 'uof124';
const CID_TXT_QUANTITY_DIGITS = 'uof125';
const SystemParameterAuctionCatalogPanelConstants_PANEL_TO_PROPERTY_MAP = {
  'scf45': 'DisplayQuantity',
  'uof125': 'QuantityDigits',
  'scf39': 'ItemsPerPage',
  'uof46': 'HammerPriceBp',
  'spbf3': 'VisibleAuctionStatuses',
  'spbf71': 'AuctionLinksTo',
  'scf88': 'UseAlternatePdfCatalog',
  'scf102': 'AddDescriptionInLotNameColumn',
  'scf68': 'ShowWinnerInCatalog',
  'uof123': 'ReserveNotMetNotice',
  'uof124': 'ReserveMetNotice'
};
;// CONCATENATED MODULE: ./assets/js/src/Constants/Admin/SystemParameterAuctionGeneralPanelConstants.ts
/**
 * Please, do NOT change file content. The content was generated automatically by bin/generate/php_to_js_constants.php
 */

const CID_CHK_ONLY_ONE_REG_EMAIL = 'scf109';
const CID_CHK_SHOW_LOW_ESTIMATE = 'scf36';
const CID_CHK_SHOW_HIGH_ESTIMATE = 'scf37';
const CID_CHK_SHOW_COUNTDOWN_SECONDS = 'scf44';
const CID_CHK_CONFIRM_TIMED_BID = 'aof7';
const CID_TXT_CONFIRM_TIMED_BID_TEXT = 'aof8';
const CID_TXT_BID_TRACK_CODE = 'aof14';
const CID_CHK_GA_BID_TRACK = 'aof17';
const CID_CHK_PLACE_BID_REQUIRE_CC = 'aof52';
const CID_LST_ON_AUCTION_REGISTRATION = 'aof63';
const CID_TXT_ON_AUCTION_REGISTRATION_AMOUNT = 'aof64';
const CID_TXT_ON_AUCTION_REGISTRATION_EXPIRES = 'aof65';
const CID_CHK_ALLOW_MULTIBIDS = 'aof108';
const CID_CHK_CONFIRM_MULTIBIDS = 'aof70';
const CID_TXT_CONFIRM_MULTIBIDS = 'aof71';
const CID_CHK_REQUIRE_ON_INC_BIDS = 'scf104';
const CID_CHK_INLINE_BID_CONFIRM = 'scf106';
const CID_CHK_DISPLAY_ITEM_NUM = 'spbf70';
const CID_RAD_BIDDER_INFO = 'scf47';
const CID_CHK_ALL_USER_REQUIRE_CC_AUTH = 'scf66';
const CID_TXT_BLACKLIST_PHRASE = 'scf99';
const CID_RAD_AUCTION_DOMAIN_MODE = 'aof72';
const CID_CHK_FORCE_MAIN_ACCOUNT_DOMAIN_MODE = 'uof122';
const CID_RAD_EXECUTE_MODE = 'c6';
const CID_CHK_REQUIRE_REENTER_CC = 'c7';
const CID_CHK_ENABLE_SECOND_CHANCE = 'aof10';
const SystemParameterAuctionGeneralPanelConstants_PANEL_TO_PROPERTY_MAP = {
  'scf109': 'OnlyOneRegEmail',
  'scf36': 'ShowLowEst',
  'scf37': 'ShowHighEst',
  'scf44': 'ShowCountdownSeconds',
  'aof7': 'ConfirmTimedBid',
  'aof8': 'ConfirmTimedBidText',
  'aof14': 'BidTrackingCode',
  'aof17': 'GaBidTracking',
  'aof52': 'PlaceBidRequireCc',
  'aof63': 'OnAuctionRegistration',
  'aof64': 'OnAuctionRegistrationAmount',
  'aof65': 'OnAuctionRegistrationExpires',
  'aof108': 'AllowMultibids',
  'aof70': 'ConfirmMultibids',
  'aof71': 'ConfirmMultibidsText',
  'scf104': 'RequireOnIncBids',
  'scf106': 'InlineBidConfirm',
  'spbf70': 'DisplayItemNum',
  'scf47': 'DisplayBidderInfo',
  'scf66': 'AllUserRequireCcAuth',
  'scf99': 'BlacklistPhrase',
  'aof72': 'AuctionDomainMode',
  'uof122': 'ForceMainAccountDomainMode',
  'c6': 'OnAuctionRegistrationAuto',
  'c7': 'RequireReenterCc',
  'aof10': 'EnableSecondChance'
};
const CLASS_BLK_CHECKBOX = 'checkBox';
const CLASS_BLK_CHECKMARK = 'checkmark';
const CLASS_BLK_CONFIRM_TIMED = 'confirm-timed';
const CLASS_BLK_MULTI_BIDS = 'multi-bids';
const CLASS_BLK_ON_AUCTION_REGISTRATION = 'on-auction-registration';
const CLASS_CHK_EDIT_LINK = 'editlink';
;// CONCATENATED MODULE: ./assets/js/src/Constants/Admin/SystemParameterAuctionLotAssignmentPanelConstants.ts
/**
 * Please, do NOT change file content. The content was generated automatically by bin/generate/php_to_js_constants.php
 */

const CID_CHK_HIDE_MOVE_TO_SALE = 'scf84';
const CID_RAD_ASSIGNED_LOTS_RESTRICTION = 'scf85';
const CID_CHK_BLOCK_SOLD_LOTS = 'scf87';
const SystemParameterAuctionLotAssignmentPanelConstants_PANEL_TO_PROPERTY_MAP = {
  'scf84': 'HideMovetosale',
  'scf85': 'AssignedLotsRestriction',
  'scf87': 'BlockSoldLots'
};
;// CONCATENATED MODULE: ./assets/js/src/Constants/Admin/SystemParameterAuctionLotDetailPanelConstants.ts
/**
 * Please, do NOT change file content. The content was generated automatically by bin/generate/php_to_js_constants.php
 */

const CID_LST_SHIPPING_INFO_BOX = 'scf38';
const CID_CHK_ABSENTEE_BID_NOTIFY = 'scf67';
const SystemParameterAuctionLotDetailPanelConstants_PANEL_TO_PROPERTY_MAP = {
  'scf38': 'ShippingInfoBox',
  'scf67': 'AbsenteeBidLotNotification'
};
;// CONCATENATED MODULE: ./assets/js/src/Constants/Admin/SystemParameterAuctionPermissionsPanelConstants.ts
/**
 * Please, do NOT change file content. The content was generated automatically by bin/generate/php_to_js_constants.php
 */

const CID_LST_AUCTION_VISIBILITY_ACCESS = 'scf69';
const CID_LST_AUCTION_INFO_ACCESS = 'scf70';
const CID_LST_AUCTION_CATALOG_ACCESS = 'scf71';
const CID_LST_LIVE_VIEW_ACCESS = 'scf72';
const CID_LST_LOT_DETAILS_ACCESS = 'scf73';
const CID_LST_LOT_BIDDING_HISTORY_ACCESS = 'scf74';
const CID_LST_LOT_BIDDING_INFO_ACCESS = 'scf76';
const CID_LST_LOT_WINNING_BID_ACCESS = 'scf101';
const CID_LST_LOT_STARTING_BID_ACCESS = 'scf105';
const CID_CHK_HIDE_UNSOLD_LOTS = 'scf111';
const SystemParameterAuctionPermissionsPanelConstants_PANEL_TO_PROPERTY_MAP = {
  'scf69': 'AuctionVisibilityAccess',
  'scf70': 'AuctionInfoAccess',
  'scf71': 'AuctionCatalogAccess',
  'scf72': 'LiveViewAccess',
  'scf73': 'LotDetailsAccess',
  'scf74': 'LotBiddingHistoryAccess',
  'scf76': 'LotBiddingInfoAccess',
  'scf101': 'LotWinningBidAccess',
  'scf105': 'LotStartingBidAccess',
  'scf111': 'HideUnsoldLots'
};
;// CONCATENATED MODULE: ./assets/js/src/Constants/Admin/SystemParameterAuctionRegistrationPanelConstants.ts
/**
 * Please, do NOT change file content. The content was generated automatically by bin/generate/php_to_js_constants.php
 */

const CID_CHK_ALLOW_MANUAL_BIDDER_FOR_FLAGGED_BIDDERS = 'scf110';
const CID_CHK_HIDE_BIDDER_NUMBER = 'scf81';
const CID_CHK_REG_USE_HIGH_BIDDER = 'scf82';
const CID_CHK_REG_CONFIRM_AUTO_APPROVE = 'scf83';
const CID_LST_REG_REMINDER_EMAIL = 'scf103';
const CID_CHK_REG_CONFIRM_PAGE = 'scf108';
const CID_CHK_CONFIRM_ADDRESS_SALE = 'uof120';
const CID_CHK_CONFIRM_TERMS_AND_CONDITIONS_SALE = 'uof121';
const SystemParameterAuctionRegistrationPanelConstants_PANEL_TO_PROPERTY_MAP = {
  'scf110': 'AllowManualBidderForFlaggedBidders',
  'scf81': 'HideBidderNumber',
  'scf82': 'RegUseHighBidder',
  'scf83': 'RegConfirmAutoApprove',
  'scf103': 'RegReminderEmail',
  'scf108': 'RegConfirmPage',
  'uof120': 'ConfirmAddressSale',
  'uof121': 'ConfirmTermsAndConditionsSale'
};
;// CONCATENATED MODULE: ./assets/js/src/Constants/Admin/SystemParameterAuctionTextMessagesPanelConstants.ts
/**
 * Please, do NOT change file content. The content was generated automatically by bin/generate/php_to_js_constants.php
 */

const CID_CHK_UPCOMING_LOTS_NOTIFICATION_ENABLED = 'c8';
const CID_CHK_OUTBID_NOTIFICATION_ENABLED = 'c9';
const CID_TXT_UPCOMING_LOTS_SHORT_NOTIFICATION_TEMPLATE = 'c10';
const CID_TXT_OUTBID_SHORT_NOTIFICATION_TEMPLATE = 'c11';
const SystemParameterAuctionTextMessagesPanelConstants_PANEL_TO_PROPERTY_MAP = {
  'c8': 'UpcomingLotsNotificationEnabled',
  'c9': 'OutbidNotificationEnabled',
  'c10': 'UpcomingLotsShortNotificationTemplate',
  'c11': 'OutbidShortNotificationTemplate'
};
;// CONCATENATED MODULE: ./assets/js/src/Constants/Admin/SystemParameterHybridAuctionOptionsPanelConstants.ts
/**
 * Please, do NOT change file content. The content was generated automatically by bin/generate/php_to_js_constants.php
 */

const CID_TXT_GAP_TIME = 'sphaGapTime';
const CID_TXT_EXTEND_TIME = 'spha3';
const CID_TXT_FAIR_WARNINGS = 'spha4';
const CID_TXT_PENDING_ACTION_TIMEOUT = 'spha5';
const CID_CHK_RESET_TIMER_ON_UNDO = 'spha7';
const CID_CHK_ALLOW_BIDDING_DURING_START_GAP_HYBRID = 'spha8';
const CID_TXT_EXP_SECT = 'spha6';
const SystemParameterHybridAuctionOptionsPanelConstants_PANEL_TO_PROPERTY_MAP = {
  'sphaGapTime': 'LotStartGapTimeHybrid',
  'spha3': 'ExtendTimeHybrid',
  'spha4': 'FairWarningsHybrid',
  'spha5': 'PendingActionTimeoutHybrid',
  'spha7': 'ResetTimerOnUndoHybrid',
  'spha8': 'AllowBiddingDuringStartGapHybrid'
};
;// CONCATENATED MODULE: ./assets/js/src/Constants/Admin/SystemParameterInvoicingAuctionIncShippingCalculatorPanelConstants.ts
/**
 * Please, do NOT change file content. The content was generated automatically by bin/generate/php_to_js_constants.php
 */

const CID_TXT_AUC_INC_ACCOUNT_ID = 'ipf113';
const CID_LBL_AUC_INC_ACCOUNT_ID = 'ipflbl113';
const CID_TXT_AUC_INC_BUSINESS_ID = 'ipf135';
const CID_LBL_AUC_INC_BUSINESS_ID = 'ipflbl135';
const CID_BTN_AUC_INC_EDIT = 'ipfbtn135';
const CID_RAD_AUC_INC_METHOD = 'ipf114';
const CID_CHK_AUC_INC_CARRIER_PICKUP = 'ipf142';
const CID_CHK_AUC_INC_CARRIER_UPS = 'ipf130';
const CID_CHK_AUC_INC_CARRIER_DHL = 'ipf131';
const CID_CHK_AUC_INC_CARRIER_FEDEX = 'ipf143';
const CID_CHK_AUC_INC_CARRIER_USPS = 'ipf132';
const CID_TXT_AUC_INC_DHL_ACCESS_KEY = 'ipf133';
const CID_TXT_AUC_INC_DHL_POSTAL_CODE = 'ipf134';
const CID_LST_AUC_INC_WEIGHT_CUST_FILD = 'ipf136';
const CID_LST_AUC_INC_WIDTH_CUST_FILD = 'ipf137';
const CID_LST_AUC_INC_HEIGHT_CUST_FILD = 'ipf138';
const CID_LST_AUC_INC_LENGTH_CUST_FILD = 'ipf139';
const CID_LST_AUC_INC_WEIGHT_TYPE = 'ipf140';
const CID_LST_AUC_INC_DIMENSION_TYPE = 'ipf141';
const SystemParameterInvoicingAuctionIncShippingCalculatorPanelConstants_PANEL_TO_PROPERTY_MAP = {
  'ipf113': 'AucIncAccountId',
  'ipf135': 'AucIncBusinessId',
  'ipf114': 'AucIncMethod',
  'ipf142': 'AucIncPickup',
  'ipf130': 'AucIncUps',
  'ipf131': 'AucIncDhl',
  'ipf143': 'AucIncFedex',
  'ipf132': 'AucIncUsps',
  'ipf133': 'AucIncDhlAccessKey',
  'ipf134': 'AucIncDhlPostalCode',
  'ipf136': 'AucIncWeightCustFieldId',
  'ipf137': 'AucIncWidthCustFieldId',
  'ipf138': 'AucIncHeightCustFieldId',
  'ipf139': 'AucIncLengthCustFieldId',
  'ipf140': 'AucIncWeightType',
  'ipf141': 'AucIncDimensionType'
};
;// CONCATENATED MODULE: ./assets/js/src/Constants/Admin/SystemParameterInvoicingCommissionsAndChargesPanelConstants.ts
/**
 * Please, do NOT change file content. The content was generated automatically by bin/generate/php_to_js_constants.php
 */

const CID_TXT_CASH_DISCOUNT = 'ipf4';
const CID_TXT_DEFAULT_POST_AUC_IMPORT_PREMIUM = 'ipf124';
const CID_CHK_APPLY_CASH_DISCOUNTS_ONLY_ON_TOTAL_HP = 'ipf38';
const CID_CHK_CHARGE_CONSIGN_COM = 'ipf37';
const CID_TXT_SHIPPING_CHARGE = 'ipf5';
const CID_TXT_PROCESSING_CHARGE = 'ipf6';
const CID_CHK_AUTO_INVOICE = 'ipf8';
const SystemParameterInvoicingCommissionsAndChargesPanelConstants_PANEL_TO_PROPERTY_MAP = {
  'ipf4': 'CashDiscount',
  'ipf124': 'DefaultPostAucImportPremium',
  'ipf38': 'ApplyCashDiscountsOnlyOnTotalHp',
  'ipf37': 'ChargeConsignorCommission',
  'ipf5': 'ShippingCharge',
  'ipf6': 'ProcessingCharge',
  'ipf8': 'AutoInvoice'
};
;// CONCATENATED MODULE: ./assets/js/src/Constants/Admin/SystemParameterInvoicingInvoiceGenerationPanelConstants.ts
/**
 * Please, do NOT change file content. The content was generated automatically by bin/generate/php_to_js_constants.php
 */

const CID_CHK_DISPLAY_CATEGORY = 'ipf45';
const CID_CHK_ONE_SALE_GROUPED = 'ipf126';
const CID_CHK_MULTIPLE_SALE = 'ipf53';
const CID_CHK_QUANTITY_IN_INVOICE = 'ipf54';
const CID_CHK_INCLUDE_IDENTIFICATION = 'ipf101';
const CID_CHK_INV_ITEM_DESC = 'ipf65';
const CID_CHK_INV_ITEM_TAX = 'ipf66';
const CID_CHK_INV_ITEM_GO_SE = 'ipf166';
const CID_CHK_LOT_ITEM_CUSTOM_FIELDS_RENDER_IN_SEPARATE_ROW = 'ipf102';
const CID_CHK_IS_SOLD_UNDER_CONDITION = 'ipf55';
const CID_RAD_TAX_DESIGNATION_STRATEGY = 'ipf46';
const SystemParameterInvoicingInvoiceGenerationPanelConstants_PANEL_TO_PROPERTY_MAP = {
  'ipf45': 'CategoryInInvoice',
  'ipf126': 'OneSaleGroupedInvoice',
  'ipf53': 'MultipleSaleInvoice',
  'ipf54': 'QuantityInInvoice',
  'ipf101': 'InvoiceIdentification',
  'ipf65': 'InvoiceItemDescription',
  'ipf66': 'InvoiceItemSalesTax',
  'ipf166': 'InvoiceItemSeparateTax',
  'ipf102': 'RenderLotCustomFieldsInSeparateRowForInvoice',
  'ipf55': 'IsSoldUnderCondition',
  'ipf46': 'InvoiceTaxDesignationStrategy'
};
const CLASS_BLK_SEP_TAX = 'sep_tax';
;// CONCATENATED MODULE: ./assets/js/src/Constants/Admin/SystemParameterInvoicingSettlementCheckPanelConstants.ts
/**
 * Please, do NOT change file content. The content was generated automatically by bin/generate/php_to_js_constants.php
 */

const CID_CHK_STLM_CHECK_FEATURE_ENABLED = 'chkStlmCheckFeatureEnabled';
const CID_FLA_CHECK_FILE = 'ipf167';
const CID_TXT_NAME_COORDINATES_LEFT = 'ipf168';
const CID_TXT_NAME_COORDINATES_TOP = 'ipf169';
const CID_TXT_AMOUNT_COORDINATES_LEFT = 'ipf170';
const CID_TXT_AMOUNT_COORDINATES_TOP = 'ipf171';
const CID_TXT_DATE_COORDINATES_LEFT = 'ipf172';
const CID_TXT_DATE_COORDINATES_TOP = 'ipf173';
const CID_TXT_AMOUNT_SPELLING_COORDINATES_LEFT = 'ipc3';
const CID_TXT_AMOUNT_SPELLING_COORDINATES_TOP = 'ipc4';
const CID_TXT_MEMO_COORDINATES_LEFT = 'ipc5';
const CID_TXT_MEMO_COORDINATES_TOP = 'ipc6';
const CID_TXT_ADDRESS_COORDINATES_LEFT = 'ipc7';
const CID_TXT_ADDRESS_COORDINATES_TOP = 'ipc8';
const CID_TXT_HEIGHT = 'ipc9';
const CID_TXT_PER_PAGE = 'ipc10';
const CID_TXT_REPEAT_COUNT = 'ipc11';
const CID_TXT_CHECK_ADDRESS_TEMPLATE = 'ipf128';
const CID_TXT_CHECK_PAYEE_TEMPLATE = 'ipf129';
const CID_TXT_CHECK_MEMO_TEMPLATE = 'ipf125';
const CID_BTN_APPLY_SAMPLE_CHECK_ADDRESS_TEMPLATE = 'apply-sample-check-address-tpl';
const CID_BTN_RESTORE_CONTENT_CHECK_ADDRESS_TEMPLATE = 'restore-default-check-address-tpl';
const CID_BTN_APPLY_SAMPLE_CHECK_PAYEE_TEMPLATE = 'apply-sample-check-payee-tpl';
const CID_BTN_RESTORE_CONTENT_CHECK_PAYEE_TEMPLATE = 'restore-default-check-payee-tpl';
const CID_BTN_APPLY_SAMPLE_CHECK_MEMO_TEMPLATE = 'apply-sample-check-memo-tpl';
const CID_BTN_RESTORE_CONTENT_CHECK_MEMO_TEMPLATE = 'restore-default-check-memo-tpl';
const CID_BLK_SETTLEMENT_CHECK = 'settlement-check';
const CSS_CLASS_FOR_FEATURE_ENABLED = 'for-feature-enabled';
const SystemParameterInvoicingSettlementCheckPanelConstants_PANEL_TO_PROPERTY_MAP = {
  'chkStlmCheckFeatureEnabled': 'StlmCheckEnabled',
  'ipf167': 'StlmCheckFile',
  'ipf168': 'StlmCheckNameCoordX',
  'ipf169': 'StlmCheckNameCoordY',
  'ipf170': 'StlmCheckAmountCoordX',
  'ipf171': 'StlmCheckAmountCoordY',
  'ipc3': 'StlmCheckAmountSpellingCoordX',
  'ipc4': 'StlmCheckAmountSpellingCoordY',
  'ipf172': 'StlmCheckDateCoordX',
  'ipf173': 'StlmCheckDateCoordY',
  'ipc5': 'StlmCheckMemoCoordX',
  'ipc6': 'StlmCheckMemoCoordY',
  'ipc7': 'StlmCheckAddressCoordX',
  'ipc8': 'StlmCheckAddressCoordY',
  'ipc9': 'StlmCheckHeight',
  'ipc10': 'StlmCheckPerPage',
  'ipc11': 'StlmCheckRepeatCount',
  'ipf128': 'StlmCheckAddressTemplate',
  'ipf129': 'StlmCheckPayeeTemplate',
  'ipf125': 'StlmCheckMemoTemplate'
};
const PANEL_TO_PROPERTY_MAP_IF_DISABLED = {
  'chkStlmCheckFeatureEnabled': 'StlmCheckEnabled'
};
;// CONCATENATED MODULE: ./assets/js/src/Constants/Admin/SystemParameterInvoicingSettlementGenerationPanelConstants.ts
/**
 * Please, do NOT change file content. The content was generated automatically by bin/generate/php_to_js_constants.php
 */

const CID_CHK_DISPLAY_SETTLEMENT_QTY = 'ipf63';
const CID_CHK_SETT_GENERATE_PER_USER = 'ipf127';
const SystemParameterInvoicingSettlementGenerationPanelConstants_CID_CHK_LOT_ITEM_CUSTOM_FIELDS_RENDER_IN_SEPARATE_ROW = 'ipf103';
const SystemParameterInvoicingSettlementGenerationPanelConstants_PANEL_TO_PROPERTY_MAP = {
  'ipf63': 'QuantityInSettlement',
  'ipf127': 'MultipleSaleSettlement',
  'ipf103': 'RenderLotCustomFieldsInSeparateRowForSettlement'
};
;// CONCATENATED MODULE: ./assets/js/src/Constants/Admin/SystemParameterInvoicingTaxesPanelConstants.ts
/**
 * Please, do NOT change file content. The content was generated automatically by bin/generate/php_to_js_constants.php
 */

const CID_ICO_WAIT_TAX_STATE = 'ipf119';
const CID_CHK_TAX_SERVICES = 'ipf117';
const CID_LST_TAX_SERVICES_COUNTRY = 'ipf118';
const CID_PNL_TAX_STATE = 'ipf120';
const CID_BTN_ADD_TAX_STATE = 'ipf121';
const CID_TXT_SALES_TAX = 'ipf3';
const CID_CHK_DEFAULT_LOT_NO_OOS = 'ipf144';
const CID_CHK_SALES_TAX_SERVICES = 'ipf145';
const CID_TAX_COUNTRY_STATE_TPL = 'lstcs%s';
const CID_BTN_RM_TAX_STATE_TPL = 'btnrcs%s';
const CID_PNL_REMOVE_TAX_STATE_TPL = 'pnlbrcs%s';
const CID_RAD_TAX_APPLICATION = 'ipf67';
const SystemParameterInvoicingTaxesPanelConstants_CID_RAD_TAX_DETERMINATION = 'ipf68';
const CID_LST_HP_TAX_SCHEMA = 'ipf-hp-tax-schema';
const CID_LST_BP_TAX_SCHEMA = 'ipf-bp-tax-schema';
const CID_LST_SERVICES_TAX_SCHEMA = 'ipf-services-tax-schema';
const SystemParameterInvoicingTaxesPanelConstants_CID_LST_TAX_DETERMINATION_BY_ADDRESS = 'ipf-tax-determination-by-address';
const SystemParameterInvoicingTaxesPanelConstants_PANEL_TO_PROPERTY_MAP = {
  'ipf117': 'SamTax',
  'ipf118': 'SamTaxDefaultCountry',
  'ipf3': 'SalesTax',
  'ipf144': 'DefaultLotItemNoTaxOos',
  'ipf145': 'SalesTaxServices',
  'ipf67': 'InvoiceItemSalesTaxApplication',
  'ipf-hp-tax-schema': 'InvoiceHpTaxSchemaId',
  'ipf-bp-tax-schema': 'InvoiceBpTaxSchemaId',
  'ipf-services-tax-schema': 'InvoiceServicesTaxSchemaId',
  'ipf68': 'InvoiceItemSalesTaxDetermination'
};
const CLASS_BLK_TAX_COUNTRY_STATE = 'tax-country-state';
const SystemParameterInvoicingTaxesPanelConstants_CLASS_TAX_DETERMINATION_BY_ADDRESS = 'tax-determination-by-address-container';
;// CONCATENATED MODULE: ./assets/js/src/Constants/Admin/SystemParameterLayoutAndSiteCustomizationFormConstants.ts
/**
 * Please, do NOT change file content. The content was generated automatically by bin/generate/php_to_js_constants.php
 */

const CID_BTN_SAVE_CHANGES = 'scf1';
const CID_BTN_CANCEL_CHANGES = 'scf46';
const CID_TXT_LOT_ITEM_TEMPLATE = 'scf48';
const CID_TXT_RTB_TEMPLATE = 'scf49';
const SystemParameterLayoutAndSiteCustomizationFormConstants_CID_TXT_EXP_SECT = 'scf55';
const CID_PNL_SYSTEM_PARAMETER_LAYOUT_AND_SITE_CUSTOMIZATION_LOOK_AND_FEEL = 'pnlSystemParameterLayoutAndSiteCustomizationLookAndFeel';
const CID_PNL_SYSTEM_PARAMETER_LAYOUT_AND_SITE_CUSTOMIZATION_SEO_SETTINGS = 'pnlSystemParameterLayoutAndSiteCustomizationSeoSettings';
const CID_PNL_SYSTEM_PARAMETER_LAYOUT_AND_SITE_CUSTOMIZATION_LETTER_HEADS = 'pnlSystemParameterLayoutAndSiteCustomizationLetterHeads';
const CID_PNL_SYSTEM_PARAMETER_LAYOUT_AND_SITE_CUSTOMIZATION_PUBLIC_MAIN_MENU = 'pnlSystemParameterLayoutAndSiteCustomizationPublicMainMenu';
const CID_PNL_SYSTEM_PARAMETER_LAYOUT_AND_SITE_CUSTOMIZATION_NUMBER_FORMATTING = 'pnlSystemParameterLayoutAndSiteCustomizationNumberFormatting';
const CID_PNL_SYSTEM_PARAMETER_LAYOUT_AND_SITE_CUSTOMIZATION_PUBLIC_PAGE_ROUTING_CONTROL = 'pnlSystemParameterLayoutAndSiteCustomizationPublicPageRoutingControl';
const FORM_TO_PROPERTY_MAP = {
  'scf48': 'LotItemDetailTemplate',
  'scf49': 'RtbDetailTemplate'
};
const CLASS_BLK_LEG_ALL = 'legall';
const CLASS_BLK_LEGEND = 'legend_div';
const CLASS_LNK_CLOSE = 'close';
const CLASS_LNK_OPEN = 'open';
;// CONCATENATED MODULE: ./assets/js/src/Constants/Admin/SystemParameterLayoutAndSiteCustomizationLetterHeadsPanelConstants.ts
/**
 * Please, do NOT change file content. The content was generated automatically by bin/generate/php_to_js_constants.php
 */

const CID_FLA_INVOICE_LOGO = 'scf32';
const CID_FLA_SETTLEMENT_LOGO = 'scf33';
const SystemParameterLayoutAndSiteCustomizationLetterHeadsPanelConstants_PANEL_TO_PROPERTY_MAP = {
  'scf32': 'InvoiceLogo',
  'scf33': 'SettlementLogo'
};
;// CONCATENATED MODULE: ./assets/js/src/Constants/Admin/SystemParameterLayoutAndSiteCustomizationLookAndFeelPanelConstants.ts
/**
 * Please, do NOT change file content. The content was generated automatically by bin/generate/php_to_js_constants.php
 */

const CID_TXT_PAGE_HEADER = 'scf2';
const CID_FLA_PAGE_HEADER = 'scf3';
const CID_RAD_PAGE_HEADER = 'scf4';
const CID_TXT_LOGO_LINK = 'scf5';
const CID_TXT_PAGE_FOOTER_RESPONSIVE = 'sc59';
const CID_TXT_RESPONSIVE_HEADER_ADDRESS = 'scf6b';
const CID_TXT_RESPONSIVE_HTML_HEAD_CODE = 'head-code';
const CID_TXT_RESPONSIVE_CSS_OVERRIDE = 'scf7b';
const CID_TXT_ADMIN_CSS_OVERRIDE = 'scf8';
const CID_TXT_ADMIN_CUSTOM_JS_URL = 'admin-custom-js-url';
const CID_TXT_EXTERNAL_JS = 'scf9';
const CID_TXT_MAIN_MENU_AUCTION_TARGET = 'scf61';
const CID_LST_SEARCH_RESULTS_FORMAT = 'scf13';
const CID_TXT_PAGE_REDIRECT = 'scf18';
const CID_CHK_AUCTION_DATE_IN_SEARCH = 'scf59';
const CID_RAD_LANDING_PAGE = 'scf47';
const CID_TXT_LANDING_PAGE_URL = 'scf57';
const CID_CHK_SHOW_MEMBER_MENU_ITEMS = 'scf50';
const CID_BLK_LOOK_FEEL = 'look-feel';
const SystemParameterLayoutAndSiteCustomizationLookAndFeelPanelConstants_PANEL_TO_PROPERTY_MAP = {
  'scf2': 'PageHeader',
  'scf4': 'PageHeaderType',
  'scf5': 'LogoLink',
  'scf6b': 'ResponsiveHeaderAddress',
  'head-code': 'ResponsiveHtmlHeadCode',
  'scf7b': 'ResponsiveCssFile',
  'scf8': 'AdminCssFile',
  'admin-custom-js-url': 'AdminCustomJsUrl',
  'scf9': 'ExternalJavascript',
  'scf61': 'MainMenuAuctionTarget',
  'scf13': 'SearchResultsFormat',
  'scf18': 'PageRedirection',
  'scf59': 'AuctionDateInSearch',
  'scf47': 'LandingPage',
  'scf57': 'LandingPageUrl',
  'scf50': 'ShowMemberMenuItems'
};
const CLASS_BLK_LANDING_PAGE_URL = 'landing-page-url';
const CLASS_BLK_LOGO = 'logo';
const CLASS_BLK_PAGE_LOGO = 'plogo';
const CLASS_BLK_PAGE_TEXT = 'ptext';
;// CONCATENATED MODULE: ./assets/js/src/Constants/Admin/SystemParameterLayoutAndSiteCustomizationNumberFormattingPanelConstants.ts
/**
 * Please, do NOT change file content. The content was generated automatically by bin/generate/php_to_js_constants.php
 */

const CID_CHK_US_NUM_FORMATTING = 'scf35';
const CID_CHK_KEEP_DECIMAL = 'scf58';
const SystemParameterLayoutAndSiteCustomizationNumberFormattingPanelConstants_PANEL_TO_PROPERTY_MAP = {
  'scf35': 'UsNumberFormatting',
  'scf58': 'KeepDecimalInvoice'
};
;// CONCATENATED MODULE: ./assets/js/src/Constants/Admin/SystemParameterLayoutAndSiteCustomizationPublicPageRoutingControlPanelConstants.ts
/**
 * Please, do NOT change file content. The content was generated automatically by bin/generate/php_to_js_constants.php
 */

const CID_PPRC_CHK_ALLOW_CONTROL_TPL = '%sAlwCtrl%s';
const CID_PPRC_CHK_RENDER_AS_LINK_TPL = '%sChkRndrLnk%s';
const CID_PPRC_DTG_EACH_ACCOUNT_CAN_MODIFY_PUBLIC_ROUTING = 'eacmpr120';
const CID_PPRC_DTG_ROUTING_CONFIG = 'scf120';
const CID_PPRC_HID_INDEX_TPL = '%sHidStng%s';
const CID_PPRC_RAD_DENY_ACCESS_TPL = '%sRdoDnyAcc%s';
const CID_PPRC_RAD_RESTRICT_ACCESS_USRE_TPL = '%sRdoRstrAccU%s';
const CID_PPRC_RAD_RESTRICT_ACCESS_ADMIN_TPL = '%sRdoRstrAccA%s';
const CID_PPRC_RAD_MODE_TPL = '%sRdoMdStng%s';
const CID_PPRC_RAD_REDIRECT_TPL = '%sRdoRdrct%s';
const CID_PPRC_RAD_SHOW_PAGE_TPL = '%sRdoShwPg%s';
const CID_PPRC_STYLE_CLASS_GROUP_ROUTE_TPL = 'pprc-group-route';
const CID_PPRC_STYLE_CLASS_RAD_MODE_TPL = 'pprc-rad-mode';
const CID_PPRC_STYLE_CLASS_REDIRECT_CELL_TPL = 'pprc-redirect-cell';
const CID_PPRC_STYLE_CLASS_ROUTE_TPL = 'pprc-route';
const CID_PPRC_STYLE_CLASS_SUB_ROUTE_TPL = 'pprc-sub-route';
const CID_PPRC_STYLE_CLASS_RDO_SELECTED_CELL = 'pprc-selected';
const CID_PPRC_STYLE_CLASS_ROUTE_ALIASES = 'pprc-route-aliases';
const CID_PPRC_STYLE_CLASS_TABLE = 'pprc-table';
const CID_TXT_REDIRECT_TPL = '%sTxtRdrct%s';
const CLASS_PPRC_RAD_RESTRICT_ACCESS = 'prc-rad-restrict-access';
const SystemParameterLayoutAndSiteCustomizationPublicPageRoutingControlPanelConstants_PANEL_TO_PROPERTY_MAP = {
  'eacmpr120': 'PublicRoutingForEachAccount'
};
;// CONCATENATED MODULE: ./assets/js/src/Constants/Admin/SystemParameterLayoutAndSiteCustomizationSeoSettingsPanelConstants.ts
/**
 * Please, do NOT change file content. The content was generated automatically by bin/generate/php_to_js_constants.php
 */

const CID_TXT_AUC_PAGE_TITLE = 'scf36';
const CID_TXT_AUC_PAGE_DESC = 'scf37';
const CID_TXT_AUC_PAGE_KEYWORD = 'scf38';
const CID_TXT_LOT_PAGE_TITLE = 'scf39';
const CID_TXT_LOT_PAGE_DESC = 'scf40';
const CID_TXT_LOT_PAGE_KEYWORD = 'scf41';
const CID_TXT_AUC_LISTING_PAGE_TITLE = 'scf20';
const CID_TXT_AUC_LISTING_PAGE_DESC = 'scf21';
const CID_TXT_AUC_LISTING_PAGE_KEYWORD = 'scf22';
const CID_TXT_SEARCH_RESULTS_PAGE_TITLE = 'scf23';
const CID_TXT_SEARCH_RESULTS_PAGE_DESC = 'scf24';
const CID_TXT_SEARCH_RESULTS_PAGE_KEYWORD = 'scf25';
const CID_TXT_SIGNUP_TITLE = 'scf26';
const CID_TXT_SIGNUP_DESC = 'scf27';
const CID_TXT_SIGNUP_KEYWORD = 'scf28';
const CID_TXT_LOGIN_TITLE = 'scf29';
const CID_TXT_LOGIN_DESC = 'scf30';
const CID_TXT_LOGIN_KEYWORD = 'scf31';
const CID_TXT_AUCTION_SEO_URL_TEMPLATE = 'scf42';
const CID_TXT_LOT_SEO_URL_TEMPLATE = 'scf43';
const SystemParameterLayoutAndSiteCustomizationSeoSettingsPanelConstants_PANEL_TO_PROPERTY_MAP = {
  'scf36': 'AuctionPageTitle',
  'scf37': 'AuctionPageDesc',
  'scf38': 'AuctionPageKeyword',
  'scf39': 'LotPageTitle',
  'scf40': 'LotPageDesc',
  'scf41': 'LotPageKeyword',
  'scf20': 'AuctionListingPageTitle',
  'scf21': 'AuctionListingPageDesc',
  'scf22': 'AuctionListingPageKeyword',
  'scf23': 'SearchResultsPageTitle',
  'scf24': 'SearchResultsPageDesc',
  'scf25': 'SearchResultsPageKeyword',
  'scf26': 'SignupTitle',
  'scf27': 'SignupDesc',
  'scf28': 'SignupKeyword',
  'scf29': 'LoginTitle',
  'scf30': 'LoginDesc',
  'scf31': 'LoginKeyword',
  'scf42': 'AuctionSeoUrlTemplate',
  'scf43': 'LotSeoUrlTemplate'
};
;// CONCATENATED MODULE: ./assets/js/src/Constants/Admin/SystemParameterLiveHybridAuctionAbsenteeBiddingPanelConstants.ts
/**
 * Please, do NOT change file content. The content was generated automatically by bin/generate/php_to_js_constants.php
 */

const CID_RAD_LIVE_ABSENTEE_BID = 'scf42';
const CID_CHK_ABOVE_STARTING_BID = 'uof50';
const CID_CHK_ABOVE_RESERVE = 'uof44';
const CID_CHK_NOTIFY_ABSENTEE_BIDDERS = 'uof21';
const CID_CHK_SUGGESTED_STARTING_BID = 'apf124';
const CID_CHK_NO_LOWER_MAX_BID = 'apf123';
const SystemParameterLiveHybridAuctionAbsenteeBiddingPanelConstants_PANEL_TO_PROPERTY_MAP = {
  'scf42': 'AbsenteeBidsDisplay',
  'uof50': 'AboveStartingBid',
  'uof44': 'AboveReserve',
  'uof21': 'NotifyAbsenteeBidders',
  'apf124': 'SuggestedStartingBid',
  'apf123': 'NoLowerMaxbid'
};
;// CONCATENATED MODULE: ./assets/js/src/Constants/Admin/SystemParameterLiveHybridAuctionBiddingUiPanelConstants.ts
/**
 * Please, do NOT change file content. The content was generated automatically by bin/generate/php_to_js_constants.php
 */

const CID_TXT_SWITCH_FRAME_SECONDS = 'scf41';
const CID_CHK_SLIDESHOW_PROJECTOR_ONLY = 'scf127';
const CID_LST_DEFAULT_IMAGE_PREVIEW = 'scf128';
const CID_CHK_ACTIVATE_BIDDING_BUTTON = 'scf131';
const SystemParameterLiveHybridAuctionBiddingUiPanelConstants_PANEL_TO_PROPERTY_MAP = {
  'scf41': 'SwitchFrameSeconds',
  'scf127': 'SlideshowProjectorOnly',
  'scf128': 'DefaultImagePreview',
  'scf131': 'ActivateBiddingButton'
};
const imagePreviewOptions = (/* unused pure expression or super */ null && (['bidding_ui.default_image_preview_in_catalog.option.no_image_preview', 'bidding_ui.default_image_preview_in_catalog.option.default_image_preview', 'bidding_ui.default_image_preview_in_catalog.option.thumbnails_for_bidders', 'bidding_ui.default_image_preview_in_catalog.option.thumbnails_for_viewers']));
;// CONCATENATED MODULE: ./assets/js/src/Constants/Admin/SystemParameterLiveHybridAuctionBuyNowPanelConstants.ts
/**
 * Please, do NOT change file content. The content was generated automatically by bin/generate/php_to_js_constants.php
 */

const CID_RAD_BUY_NOW_RESTRICTION = 'apf121';
const CID_CHK_BUY_NOW_UNSOLD = 'apf122';
const SystemParameterLiveHybridAuctionBuyNowPanelConstants_PANEL_TO_PROPERTY_MAP = {
  'apf121': 'BuyNowRestriction',
  'apf122': 'BuyNowUnsold'
};
;// CONCATENATED MODULE: ./assets/js/src/Constants/Admin/SystemParameterLiveHybridAuctionClerkingUiPanelConstants.ts
/**
 * Please, do NOT change file content. The content was generated automatically by bin/generate/php_to_js_constants.php
 */

const CID_TXT_LIVE_BIDDING_COUNTDOWN = 'scf129';
const CID_LST_ONLINE_BID_BUTTON_INFO = 'aof15';
const CID_CHK_AUTO_CREATE_FLOOR_RECORD = 'aof9';
const CID_CHK_FLOOR_BIDDER_DROP_DOWN = 'apf120';
const CID_CHK_CONDITIONAL_SALES = 'apf126';
const SystemParameterLiveHybridAuctionClerkingUiPanelConstants_PANEL_TO_PROPERTY_MAP = {
  'scf129': 'LiveBiddingCountdown',
  'aof15': 'OnlinebidButtonInfo',
  'aof9': 'AutoCreateFloorBidderRecord',
  'apf120': 'FloorBiddersFromDropdown',
  'apf126': 'ConditionalSales'
};
;// CONCATENATED MODULE: ./assets/js/src/Constants/Admin/SystemParameterLiveHybridAuctionLiveAuctionChatPanelConstants.ts
/**
 * Please, do NOT change file content. The content was generated automatically by bin/generate/php_to_js_constants.php
 */

const CID_CHK_LIVE_CHAT = 'uof48';
const CID_CHK_LIVE_CHAT_VIEW_ALL = 'uof49';
const SystemParameterLiveHybridAuctionLiveAuctionChatPanelConstants_PANEL_TO_PROPERTY_MAP = {
  'uof48': 'LiveChat',
  'uof49': 'LiveChatViewAll'
};
;// CONCATENATED MODULE: ./assets/js/src/Constants/Admin/SystemParameterLiveHybridAuctionMessageCenterPanelConstants.ts
/**
 * Please, do NOT change file content. The content was generated automatically by bin/generate/php_to_js_constants.php
 */

const CID_CHK_CLEAR_MSG_CENTER = 'apf114';
const CID_CHK_TWENTY_MESSAGES_MAX = 'apf115';
const CID_CHK_CLEAR_MESSAGE_CENTER_LOG = 'apf116';
const CID_DTG_MESSAGES = 'apf129';
const CID_HID_MESSAGES_ORDER = 'apf130';
const CID_BTN_MESSAGE_CENTER_ADD = 'apf131';
const CID_BTN_MESSAGE_CENTER_SAVE = 'apf132';
const CID_BTN_MESSAGE_CENTER_CANCEL = 'apf133';
const CID_TXT_MESSAGE_CENTER_TITLE = 'apf134';
const CID_TXT_MESSAGE_CENTER_TEXT = 'apf135';
const CID_BTN_MESSAGE_CENTER_EDIT_TPL = '%sbMcEd%s';
const CID_BTN_MESSAGE_CENTER_DELETE_TPL = '%sbMcDel%s';
const CID_HID_MESSAGE_CENTER_ORDER_TPL = '%shid%s';
const CID_FLA_MESSAGE_CENTER_SOUND_TPL = '%sfla%s';
const SystemParameterLiveHybridAuctionMessageCenterPanelConstants_PANEL_TO_PROPERTY_MAP = {
  'apf114': 'ClearMessageCenter',
  'apf115': 'TwentyMessagesMax',
  'apf116': 'ClearMessageCenterLog'
};
const CLASS_BTN_EDIT_LINK = 'editlink';
const SystemParameterLiveHybridAuctionMessageCenterPanelConstants_CLASS_BLK_CHECKBOX = 'checkBox';
const SystemParameterLiveHybridAuctionMessageCenterPanelConstants_CLASS_BLK_CHECKMARK = 'checkmark';
;// CONCATENATED MODULE: ./assets/js/src/Constants/Admin/SystemParameterLiveHybridAuctionOtherPanelConstants.ts
/**
 * Please, do NOT change file content. The content was generated automatically by bin/generate/php_to_js_constants.php
 */

const CID_CHK_SHOW_PORT_NOTICE = 'scf11';
const CID_RAD_GROUPED_LOTS_HAMMER_PRICE_CALCULATION = 'scf13';
const CID_TXT_SIGNUP_TRACK_CODE = 'scf12';
const CID_TXT_DELAY_AFTER_BID_ACCEPTED = 'scf130';
const CID_TXT_DELAY_SOLD_ITEM = 'apf117';
const CID_TXT_DELAY_BLOCK_SELL = 'apf118';
const SystemParameterLiveHybridAuctionOtherPanelConstants_PANEL_TO_PROPERTY_MAP = {
  'scf11': 'ShowPortNotice',
  'scf13': 'GroupedLotsHammerPriceCalculation',
  'scf12': 'SignupTrackingCode',
  'scf130': 'DelayAfterBidAccepted',
  'apf117': 'DelaySoldItem',
  'apf118': 'DelayBlockSell'
};
;// CONCATENATED MODULE: ./assets/js/src/Constants/Admin/SystemParameterLiveHybridAuctionSoundSettingsPanelConstants.ts
/**
 * Please, do NOT change file content. The content was generated automatically by bin/generate/php_to_js_constants.php
 */

const CID_FLA_PLACE_BID_SOUND = 'apf107';
const CID_FLA_BID_ACCEPTED_SOUND = 'apf108';
const CID_FLA_OUT_BID_SOUND = 'apf109';
const CID_FLA_SOLD_WON_SOUND = 'apf110';
const CID_FLA_SOLD_NOT_WON_SOUND = 'apf111';
const CID_FLA_PASSED_SOUND = 'apf112';
const CID_FLA_FAIR_WARNING_SOUND = 'apf113';
const CID_FLA_ONLINE_BID_INCOMING_ON_ADMIN_SOUND = 'apf127';
const CID_FLA_BID_SOUND = 'apf128';
const SystemParameterLiveHybridAuctionSoundSettingsPanelConstants_PANEL_TO_PROPERTY_MAP = {
  'apf107': 'PlaceBidSound',
  'apf108': 'BidAcceptedSound',
  'apf109': 'OutBidSound',
  'apf110': 'SoldWonSound',
  'apf111': 'SoldNotWonSound',
  'apf112': 'PassedSound',
  'apf113': 'FairWarningSound',
  'apf127': 'OnlineBidIncomingOnAdminSound',
  'apf128': 'BidSound'
};
;// CONCATENATED MODULE: ./assets/js/src/Constants/Admin/SystemParameterPaymentAuthNetPanelConstants.ts
/**
 * Please, do NOT change file content. The content was generated automatically by bin/generate/php_to_js_constants.php
 */

const CID_TXT_AUTH_NET_LOGIN = 'ipf32';
const CID_TXT_AUTH_NET_TRAN_KEY = 'ipf33';
const CID_TXT_AUTH_NET_CLIENT_KEY = 'ipf39';
const CID_RAD_AUTH_NET_MODE = 'ipf34';
const CID_CHK_CC_PAYMENT = 'ipf38';
const CID_BTN_AUTH_NET_EDIT = 'ipf55';
const CID_LBL_AUTH_NET_LOGIN = 'ipf56';
const CID_LBL_AUTH_NET_TRAN_KEY = 'ipf57';
const CID_LBL_AUTH_NET_CLIENT_KEY = 'ipf201';
const CID_CHK_NET_AUTH_USE = 'ipf73';
const CID_CHK_NO_AUTO_AUTH_TRANSACTION_AUTH = 'ipf200';
const SystemParameterPaymentAuthNetPanelConstants_PANEL_TO_PROPERTY_MAP = {
  'ipf38': 'CcPaymentAuthNet',
  'ipf32': 'AuthNetLogin',
  'ipf33': 'AuthNetTrankey',
  'ipf39': 'AuthNetClientKey',
  'ipf34': 'AuthNetMode'
};
;// CONCATENATED MODULE: ./assets/js/src/Constants/Admin/SystemParameterPaymentCurrenciesPanelConstants.ts
/**
 * Please, do NOT change file content. The content was generated automatically by bin/generate/php_to_js_constants.php
 */

const CID_DTG_CURRENCIES = 'ipf11';
const CID_BTN_CURRENCY_ADD = 'ipf12';
const CID_TXT_CURRENCY_NAME = 'ipf13';
const CID_TXT_CURRENCY_SIGN = 'ipf14';
const CID_TXT_CURRENCY_EX_RATE = 'ipf15';
const CID_TXT_CURRENCY_CODE = 'ipf102';
const CID_BTN_CURRENCY_SAVE = 'ipf16';
const CID_BTN_CURRENCY_CANCEL = 'ipf17';
const CID_CHK_MULTI_CURRENCY = 'ipf64';
const CID_CURRENCY_BTN_E_TPL = '%sbCurre%s';
const CID_CURRENCY_BTN_D_TPL = '%sbCurrd%s';
const CID_CURRENCY_BTN_M_TPL = '%sbCurrm%s';
const SystemParameterPaymentCurrenciesPanelConstants_PANEL_TO_PROPERTY_MAP = {
  'ipf64': 'MultiCurrency'
};
const SystemParameterPaymentCurrenciesPanelConstants_CLASS_BTN_EDIT_LINK = 'editlink';
const SystemParameterPaymentCurrenciesPanelConstants_CLASS_BLK_CHECKBOX = 'checkBox';
const SystemParameterPaymentCurrenciesPanelConstants_CLASS_BLK_CHECKMARK = 'checkmark';
;// CONCATENATED MODULE: ./assets/js/src/Constants/Admin/SystemParameterPaymentEwayPanelConstants.ts
/**
 * Please, do NOT change file content. The content was generated automatically by bin/generate/php_to_js_constants.php
 */

const CID_TXT_E_WAY_API_KEY = 'ipf157';
const CID_TXT_E_WAY_PASSWORD = 'ipf158';
const CID_RAD_E_WAY_ACCOUNT_TYPE = 'ipf159';
const CID_CHK_E_WAY_AUTH_USE = 'ipf161';
const CID_CHK_CC_PAYMENT_E_WAY = 'ipf162';
const CID_BTN_E_WAY_EDIT = 'ipf163';
const CID_LBL_E_WAY_API_KEY = 'ipf164';
const CID_LBL_E_WAY_PASSWORD = 'ipf165';
const CID_LBL_E_WAY_ENCRYPTION_KEY = 'ipflbl197';
const CID_TXT_E_WAY_ENCRYPTION_KEY = 'ipf197';
const CID_CHK_NO_AUTO_AUTH_TRANSACTION_E_WAY = 'ipf204';
const SystemParameterPaymentEwayPanelConstants_PANEL_TO_PROPERTY_MAP = {
  'ipf157': 'EwayApiKey',
  'ipf158': 'EwayPassword',
  'ipf159': 'EwayAccountType',
  'ipf162': 'CcPaymentEway',
  'ipf197': 'EwayEncryptionKey'
};
;// CONCATENATED MODULE: ./assets/js/src/Constants/Admin/SystemParameterPaymentFormConstants.ts
/**
 * Please, do NOT change file content. The content was generated automatically by bin/generate/php_to_js_constants.php
 */

const CID_PNL_SYSTEM_PARAMETER_PAYMENT_PAY_PAL = 'spPaymentPayPal';
const CID_PNL_SYSTEM_PARAMETER_PAYMENT_AUTH_NET = 'spPaymentAuthNet';
const CID_PNL_SYSTEM_PARAMETER_PAYMENT_PAY_TRACE = 'spPaymentPayTrace';
const CID_PNL_SYSTEM_PARAMETER_PAYMENT_EWAY = 'spPaymentEway';
const CID_PNL_SYSTEM_PARAMETER_PAYMENT_SMART_PAY = 'spPaymentSmartPay';
const CID_PNL_SYSTEM_PARAMETER_PAYMENT_NMI_CURRENCY_PAY = 'spPaymentNmiCurrencyPay';
const CID_PNL_SYSTEM_PARAMETER_PAYMENT_OPAYO = 'spPaymentOpayo';
const CID_PNL_SYSTEM_PARAMETER_PAYMENT_TRACKING = 'spPaymentTracking';
const CID_PNL_SYSTEM_PARAMETER_PAYMENT_CURRENCIES = 'spPaymentCurrencies';
const CID_PNL_SYSTEM_PARAMETER_PAYMENT_CREDIT_CARDS = 'spPaymentCreditCards';
const SystemParameterPaymentFormConstants_CID_BTN_SAVE_CHANGES = 'pf1';
const SystemParameterPaymentFormConstants_CID_BTN_CANCEL_CHANGES = 'pf62';
const CID_AUTHORIZATION_USE = 'CID_AUTHORIZATION_USE';
const CID_NO_AUTO_AUTHORIZATION = 'NO_AUTO_AUTHORIZATION';
const CID_PAYMENT_FORM = 'SystemParameterPaymentForm';
const SystemParameterPaymentFormConstants_FORM_TO_PROPERTY_MAP = {
  'NO_AUTO_AUTHORIZATION': 'NoAutoAuthorization',
  'CID_AUTHORIZATION_USE': 'AuthorizationUse'
};
const SystemParameterPaymentFormConstants_CLASS_BLK_LEG_ALL = 'legall';
const SystemParameterPaymentFormConstants_CLASS_BLK_LEGEND = 'legend_div';
const SystemParameterPaymentFormConstants_CLASS_LNK_CLOSE = 'close';
const SystemParameterPaymentFormConstants_CLASS_LNK_OPEN = 'open';
;// CONCATENATED MODULE: ./assets/js/src/Constants/Admin/SystemParameterPaymentNmiCurrencyPayPanelConstants.ts
/**
 * Please, do NOT change file content. The content was generated automatically by bin/generate/php_to_js_constants.php
 */

const CID_TXT_NMI_PUBLIC_KEY = 'ipf209';
const CID_TXT_NMI_SECURITY_KEY = 'ipf211';
const CID_RAD_NMI_MODE = 'ipf177';
const CID_CHK_NMI_AUTH_USE = 'ipf179';
const CID_CHK_CC_PAYMENT_NMI = 'ipf180';
const CID_BTN_NMI_EDIT = 'ipf182';
const CID_LBL_NMI_PUBLIC_KEY = 'ipf210';
const CID_LBL_NMI_SECURITY_KEY = 'ipf212';
const CID_CHK_NO_AUTO_AUTH_TRANSACTION_NMI = 'ipf205';
const SystemParameterPaymentNmiCurrencyPayPanelConstants_PANEL_TO_PROPERTY_MAP = {
  'ipf209': 'NmiPublicKey',
  'ipf211': 'NmiSecurityKey',
  'ipf177': 'NmiMode',
  'ipf180': 'CcPaymentNmi'
};
;// CONCATENATED MODULE: ./assets/js/src/Constants/Admin/SystemParameterPaymentOpayoPanelConstants.ts
/**
 * Please, do NOT change file content. The content was generated automatically by bin/generate/php_to_js_constants.php
 */

const CID_TXT_OPAYO_VENDOR_NAME = 'ipf186';
const CID_LBL_OPAYO_VENDOR_NAME = 'ipflbl186';
const CID_BTN_OPAYO_EDIT = 'ipfbtn187';
const CID_LST_OPAYO_AVSCV2 = 'ipf188';
const CID_LST_OPAYO_3D_SECURE = 'ipf189';
const CID_RAD_OPAYO_MODE = 'ipf190';
const CID_LST_OPAYO_SEND_EMAIL = 'ipf191';
const CID_CHK_CC_PAYMENT_OPAYO = 'ipf192';
const CID_CHK_ACH_PAYMENT_OPAYO = 'ipf193';
const CID_CHK_OPAYO_TOKEN = 'ipf194';
const CID_CHK_OPAYO_AUTH_USE = 'ipf195';
const CID_TXT_OPAYO_CURRENCY = 'ipf196';
const CID_CHK_NO_AUTO_AUTH_TRANSACTION_OPAYO = 'ipf206';
const CID_LST_OPAYO_AUTH_TRANSACTION_TYPE = 'ipf207';
const SystemParameterPaymentOpayoPanelConstants_PANEL_TO_PROPERTY_MAP = {
  'ipf186': 'OpayoVendorName',
  'ipf188': 'OpayoAvscv2',
  'ipf189': 'Opayo3dsecure',
  'ipf190': 'OpayoMode',
  'ipf191': 'OpayoSendEmail',
  'ipf192': 'CcPaymentOpayo',
  'ipf193': 'AchPaymentOpayo',
  'ipf194': 'OpayoToken',
  'ipf196': 'OpayoCurrency',
  'ipf207': 'OpayoAuthTransactionType'
};
;// CONCATENATED MODULE: ./assets/js/src/Constants/Admin/SystemParameterPaymentPayPalPanelConstants.ts
/**
 * Please, do NOT change file content. The content was generated automatically by bin/generate/php_to_js_constants.php
 */

const CID_CHK_PAY_PAL_PAYMENTS = 'ipf30';
const CID_TXT_PAY_PAL_EMAIL = 'ipf31';
const CID_LBL_PAY_PAL_EMAIL = 'ipflbl31';
const CID_TXT_PAY_PAL_TOKEN = 'ipf68';
const CID_LBL_PAY_PAL_TOKEN = 'ipflbl68';
const CID_BTN_PAY_PAL_EDIT = 'ipfbtn68';
const CID_TXT_PAY_PAL_NOTE = 'ipf69';
const CID_RAD_PAY_PAL_TYPE = 'ipf72';
const CID_TXT_PAY_PAL_BN_CODE = 'ipf174';
const SystemParameterPaymentPayPalPanelConstants_PANEL_TO_PROPERTY_MAP = {
  'ipf30': 'EnablePaypalPayments',
  'ipf31': 'PaypalEmail',
  'ipf68': 'PaypalIdentityToken',
  'ipf72': 'PaypalAccountType',
  'ipf174': 'PaypalBnCode'
};
const CLASS_BLK_ENABLE_PAYPAL = 'enable-paypal';
;// CONCATENATED MODULE: ./assets/js/src/Constants/Admin/SystemParameterPaymentPayTracePanelConstants.ts
/**
 * Please, do NOT change file content. The content was generated automatically by bin/generate/php_to_js_constants.php
 */

const CID_TXT_PAY_TRACE_USERNAME = 'ipf146';
const CID_TXT_PAY_TRACE_PASSWORD = 'ipf147';
const CID_RAD_PAY_TRACE_MODE = 'ipf148';
const CID_CHK_PAY_TRACE_CIM = 'ipf149';
const CID_CHK_PAY_TRACE_AUTH_USE = 'ipf150';
const CID_CHK_CC_PAYMENT_PAY_TRACE = 'ipf151';
const CID_BTN_PAY_TRACE_EDIT = 'ipf153';
const CID_LBL_PAY_TRACE_USERNAME = 'ipf154';
const CID_LBL_PAY_TRACE_PASSWORD = 'ipf155';
const CID_CHK_NO_AUTO_AUTH_TRANSACTION_PAY_TRACE = 'ipf203';
const SystemParameterPaymentPayTracePanelConstants_PANEL_TO_PROPERTY_MAP = {
  'ipf146': 'PayTraceUsername',
  'ipf147': 'PayTracePassword',
  'ipf148': 'PayTraceMode',
  'ipf149': 'PayTraceCim',
  'ipf151': 'CcPaymentPayTrace'
};
;// CONCATENATED MODULE: ./assets/js/src/Constants/Admin/SystemParameterPaymentSmartPayPanelConstants.ts
/**
 * Please, do NOT change file content. The content was generated automatically by bin/generate/php_to_js_constants.php
 */

const CID_RAD_SMART_TYPE = 'ipf103';
const CID_RAD_SMART_MERCHANT_MODE = 'ipf116';
const CID_TXT_SMART_SKIN_CODE = 'ipf104';
const CID_RAD_SMART_MODE = 'ipf105';
const CID_LBL_SMART_LOGIN = 'ipf107';
const CID_CHK_SMART_PAYMENTS = 'ipf115';
const CID_TXT_SMART_MERCHANT_ACCOUNT = 'ipf108';
const CID_TXT_SMART_SHARED_SECRET = 'ipf109';
const CID_LBL_SMART_MERCHANT_ACCOUNT = 'ipflbl108';
const CID_LBL_SMART_SHARED_SECRET = 'ipflbl109';
const CID_BTN_SMART_EDIT = 'ipfbtn109';
const SystemParameterPaymentSmartPayPanelConstants_PANEL_TO_PROPERTY_MAP = {
  'ipf103': 'SmartPayAccountType',
  'ipf116': 'SmartPayMerchantMode',
  'ipf104': 'SmartPaySkinCode',
  'ipf105': 'SmartPayMode',
  'ipf115': 'EnableSmartPayments',
  'ipf108': 'SmartPayMerchantAccount',
  'ipf109': 'SmartPaySharedSecret'
};
;// CONCATENATED MODULE: ./assets/js/src/Constants/Admin/SystemParameterPaymentTrackingPanelConstants.ts
/**
 * Please, do NOT change file content. The content was generated automatically by bin/generate/php_to_js_constants.php
 */

const CID_TXT_PAYMENT_TRACK_CODE = 'ipf44';
const SystemParameterPaymentTrackingPanelConstants_PANEL_TO_PROPERTY_MAP = {
  'ipf44': 'PaymentTrackingCode'
};
;// CONCATENATED MODULE: ./assets/js/src/Constants/Admin/SystemParameterSystemImportExportPanelConstants.ts
/**
 * Please, do NOT change file content. The content was generated automatically by bin/generate/php_to_js_constants.php
 */

const CID_LST_DEFAULT_IMPORT_ENCODING = 'scf24';
const CID_LST_DEFAULT_EXPORT_ENCODING = 'scf25';
const SystemParameterSystemImportExportPanelConstants_PANEL_TO_PROPERTY_MAP = {
  'scf24': 'DefaultImportEncoding',
  'scf25': 'DefaultExportEncoding'
};
;// CONCATENATED MODULE: ./assets/js/src/Constants/Admin/SystemParameterSystemSecurityPanelConstants.ts
/**
 * Please, do NOT change file content. The content was generated automatically by bin/generate/php_to_js_constants.php
 */

const CID_TXT_GRAPH_QL_CORS_ALLOWED_ORIGINS = 'spssp_graphql_cors_allowed_origins';
const SystemParameterSystemSecurityPanelConstants_PANEL_TO_PROPERTY_MAP = {
  'spssp_graphql_cors_allowed_origins': 'GraphqlCorsAllowedOrigins'
};
;// CONCATENATED MODULE: ./assets/js/src/Constants/Admin/SystemParameterSystemSmtpSettingsPanelConstants.ts
/**
 * Please, do NOT change file content. The content was generated automatically by bin/generate/php_to_js_constants.php
 */

const CID_TXT_SMTP_SERVER = 'scf5';
const CID_TXT_SMTP_PORT = 'scf6';
const CID_TXT_SMTP_USERNAME = 'scf7';
const CID_TXT_SMTP_PASSWORD = 'scf8';
const CID_BTN_SMTP_PASSWORD_EDIT = 'scf10';
const CID_LBL_SMTP_PASSWORD = 'scf11';
const CID_CHK_SMTP_AUTH = 'scf9';
const CID_LST_SMTP_SSL_TYPE = 'scf27';
const SystemParameterSystemSmtpSettingsPanelConstants_PANEL_TO_PROPERTY_MAP = {
  'scf5': 'SmtpServer',
  'scf6': 'SmtpPort',
  'scf7': 'SmtpUsername',
  'scf8': 'SmtpPassword',
  'scf9': 'SmtpAuth',
  'scf27': 'SmtpSslType'
};
;// CONCATENATED MODULE: ./assets/js/src/Constants/Admin/SystemParameterSystemSystemEmailAddressPanelConstants.ts
/**
 * Please, do NOT change file content. The content was generated automatically by bin/generate/php_to_js_constants.php
 */

const CID_TXT_SUPPORT_EMAIL = 'scf2';
const SystemParameterSystemSystemEmailAddressPanelConstants_PANEL_TO_PROPERTY_MAP = {
  'scf2': 'SupportEmail'
};
;// CONCATENATED MODULE: ./assets/js/src/Constants/Admin/SystemParameterSystemSystemEmailFormatPanelConstants.ts
/**
 * Please, do NOT change file content. The content was generated automatically by bin/generate/php_to_js_constants.php
 */

const CID_RAD_EMAIL_FORMAT = 'scf19';
const SystemParameterSystemSystemEmailFormatPanelConstants_PANEL_TO_PROPERTY_MAP = {
  'scf19': 'EmailFormat'
};
;// CONCATENATED MODULE: ./assets/js/src/Constants/Admin/SystemParameterTimedOnlineAuctionOptionsPanelConstants.ts
/**
 * Please, do NOT change file content. The content was generated automatically by bin/generate/php_to_js_constants.php
 */

const CID_CHK_NEXT_BID = 'sptoa3';
const CID_CHK_SHOW_AUCTION_START_ENCODING = 'aof11';
const SystemParameterTimedOnlineAuctionOptionsPanelConstants_CID_TXT_EXTEND_TIME = 'aof13';
const CID_CHK_TIMED_ABOVE_STARTING_BID = 'aof15';
const CID_CHK_TIMED_ABOVE_RESERVE = 'aof16';
const CID_CHK_ALLOW_FORCE_BID = 'aof17';
const CID_CHK_TAKE_MAX_BIDS_UNDER_RESERVE = 'aof18';
const SystemParameterTimedOnlineAuctionOptionsPanelConstants_CID_TXT_EXP_SECT = 'aof14';
const SystemParameterTimedOnlineAuctionOptionsPanelConstants_PANEL_TO_PROPERTY_MAP = {
  'sptoa3': 'NextBidButton',
  'aof11': 'ShowAuctionStartsEnding',
  'aof13': 'ExtendTimeTimed',
  'aof15': 'TimedAboveStartingBid',
  'aof16': 'TimedAboveReserve',
  'aof17': 'AllowForceBid',
  'aof18': 'TakeMaxBidsUnderReserve'
};
;// CONCATENATED MODULE: ./assets/js/src/Constants/Admin/SystemParameterUserOptionAdditionalConfirmationsPanelConstants.ts
/**
 * Please, do NOT change file content. The content was generated automatically by bin/generate/php_to_js_constants.php
 */

const CID_BTN_SIGNUP_CONFIRMATION_ADD = 'uof39';
const CID_DTG_SIGNUP_CONFIRMATIONS = 'uof43';
const CID_TXT_SIGNUP_CONFIRMATION_CONTENT = 'uof40';
const CID_BTN_SIGNUP_CONFIRMATION_SAVE = 'uof41';
const CID_BTN_SIGNUP_CONFIRMATION_CANCEL = 'uof42';
const CID_CHK_NEWS_LETTER = 'uof50';
const SystemParameterUserOptionAdditionalConfirmationsPanelConstants_PANEL_TO_PROPERTY_MAP = {
  'uof40': 'RegConfirmPageContent',
  'uof50': 'NewsletterOption'
};
;// CONCATENATED MODULE: ./assets/js/src/Constants/Admin/SystemParameterUserOptionMyItemsPanelConstants.ts
/**
 * Please, do NOT change file content. The content was generated automatically by bin/generate/php_to_js_constants.php
 */

const CID_CHK_ADD_BIDS_TO_WATCHLIST = 'uof28';
const CID_CHK_CONSIGNOR_DELETE_ITEM = 'uof55';
const CID_LST_WATCHLIST_REMINDER_EMAIL = 'uof56';
const SystemParameterUserOptionMyItemsPanelConstants_PANEL_TO_PROPERTY_MAP = {
  'uof28': 'AddBidsToWatchlist',
  'uof55': 'AllowConsignorDeleteItem',
  'uof56': 'WatchlistReminderEmail'
};
;// CONCATENATED MODULE: ./assets/js/src/Constants/Admin/SystemParameterUserOptionPasswordSecurityPanelConstants.ts
/**
 * Please, do NOT change file content. The content was generated automatically by bin/generate/php_to_js_constants.php
 */

const CID_TXT_MINIMUM_LENGTH = 'uof82';
const CID_TXT_MIN_LETTERS = 'uof83';
const CID_TXT_MIN_NUMBERS = 'uof84';
const CID_TXT_MIN_SPECIAL_CHARACTERS = 'uof85';
const CID_CHK_REQUIRE_MIXED_CASE = 'uof88';
const CID_TXT_MAX_SEQUENTIAL_LETTERS = 'uof89';
const CID_TXT_MAX_CONSECUTIVE_LETTERS = 'uof90';
const CID_TXT_MAX_SEQUENTIAL_NUMBERS = 'uof91';
const CID_TXT_MAX_CONSECUTIVE_NUMBERS = 'uof92';
const CID_LST_RENEW_PASSWORD = 'uof93';
const CID_LST_HISTORY_REPEAT = 'uof94';
const CID_TXT_TMP_TIMEOUT = 'uof95';
const CID_TXT_ATT_LOCKOUT_TIMEOUT = 'uof96';
const CID_TXT_ATTS_TIME_INCREMENT = 'uof97';
const SystemParameterUserOptionPasswordSecurityPanelConstants_PANEL_TO_PROPERTY_MAP = {
  'uof82': 'PwMinLen',
  'uof83': 'PwMinLetter',
  'uof84': 'PwMinNum',
  'uof85': 'PwMinSpecial',
  'uof88': 'PwReqMixedCase',
  'uof89': 'PwMaxSeqLetter',
  'uof90': 'PwMaxConseqLetter',
  'uof91': 'PwMaxSeqNum',
  'uof92': 'PwMaxConseqNum',
  'uof93': 'PwRenew',
  'uof94': 'PwHistoryRepeat',
  'uof95': 'PwTmpTimeout',
  'uof96': 'FailedLoginAttemptLockoutTimeout',
  'uof97': 'FailedLoginAttemptTimeIncrement'
};
const CLASS_BLK_INDICATOR = 'indicator';
const CLASS_BLK_INDICATOR_TEXT = 'indicator-text';
const CLASS_BLK_PASSWORD_INDICATOR = 'password-security';
;// CONCATENATED MODULE: ./assets/js/src/Constants/Admin/SystemParameterUserOptionRegistrationSettingsPanelConstants.ts
/**
 * Please, do NOT change file content. The content was generated automatically by bin/generate/php_to_js_constants.php
 */

const CID_CHK_STAY_ON_ACCOUNT_DOMAIN = 'uof87';
const CID_CHK_SIMPLE_SIGNUP = 'uof2';
const CID_CHK_VERIFY_EMAIL = 'uof10';
const CID_CHK_SEND_CONFIRMATION_LINK = 'uof72';
const CID_CHK_REGISTRATION_REQUIRE_CC = 'uof11';
const CID_CHK_ENABLE_RESELLER_REG = 'uof13';
const CID_CHK_SAVE_RESELLER_CERT_IN_PROFILE = 'uof86';
const CID_CHK_DONT_MAKE_USER_BIDDER = 'uof13a';
const CID_CHK_AUTO_PREFERRED = 'uof14';
const CID_CHK_CONSIGNOR_PAYMENT_INFO = 'uof16';
const CID_CHK_BILLING_OPTIONAL = 'uof17';
const CID_CHK_SHIPPING_OPTIONAL = 'uof18';
const CID_CHK_AUTO_INCREMENT_CUSTOMER_NUM = 'uof70';
const CID_CHK_MAKE_PERMANENT_BIDDER_NUM = 'uof71';
const CID_CHK_AUTO_ASSIGN_ACCOUNT_ADMIN_PRIVILEGES = 'uof76';
const CID_LST_DEFAULT_COUNTRY_CODE = 'uof77';
const CID_CHK_HIDE_COUNTRY_CODE_SELECTION = 'uof78';
const CID_CHK_INCLUDE_BASIC_INFO = 'uof31';
const CID_CHK_MANDATORY_BASIC_INFO = 'uof32';
const CID_CHK_INCLUDE_BILLING_INFO = 'uof33';
const CID_CHK_MANDATORY_BILLING_INFO = 'uof34';
const CID_CHK_INCLUDE_CC_INFO = 'uof35';
const CID_CHK_MANDATORY_CC_INFO = 'uof36';
const CID_CHK_INCLUDE_ACH_INFO = 'uof37';
const CID_CHK_MANDATORY_ACH_INFO = 'uof38';
const CID_LST_ON_REGISTRATION = 'uof63';
const CID_TXT_ON_REGISTRATION_AMOUNT = 'uof64';
const CID_TXT_ON_REGISTRATION_EXPIRES = 'uof65';
const CID_CHK_AUTO_PREFERRED_CC = 'uof51';
const CID_CHK_REVOKE_PREFERRED_PRIVILEGE = 'uof53';
const CID_CHK_INCLUDE_USER_PREF = 'uof66';
const CID_CHK_ENABLE_USER_COMPANY = 'uof59';
const CID_CHK_MANDATORY_USER_PREF = 'uof79';
const CID_CHK_REQUIRE_IDENTIFICATION = 'uof67';
const CID_CHK_ENABLE_CONSIGNOR_COMPANY_CLERK = 'uof69';
const CID_CHK_AUTO_CONSIGNOR_PRIVILEGES = 'uof75';
const SystemParameterUserOptionRegistrationSettingsPanelConstants_PANEL_TO_PROPERTY_MAP = {
  'uof87': 'StayOnAccountDomain',
  'uof2': 'SimplifiedSignup',
  'uof10': 'VerifyEmail',
  'uof72': 'SendConfirmationLink',
  'uof11': 'RegistrationRequireCc',
  'uof13': 'EnableResellerReg',
  'uof86': 'SaveResellerCertInProfile',
  'uof13a': 'DontMakeUserBidder',
  'uof14': 'AutoPreferred',
  'uof16': 'EnableConsignorPaymentInfo',
  'uof17': 'ProfileBillingOptional',
  'uof18': 'ProfileShippingOptional',
  'uof70': 'AutoIncrementCustomerNum',
  'uof71': 'MakePermanentBidderNum',
  'uof76': 'AutoAssignAccountAdminPrivileges',
  'uof77': 'DefaultCountryCode',
  'uof78': 'HideCountryCodeSelection',
  'uof31': 'IncludeBasicInfo',
  'uof32': 'MandatoryBasicInfo',
  'uof33': 'IncludeBillingInfo',
  'uof34': 'MandatoryBillingInfo',
  'uof35': 'IncludeCcInfo',
  'uof36': 'MandatoryCcInfo',
  'uof37': 'IncludeAchInfo',
  'uof38': 'MandatoryAchInfo',
  'uof63': 'OnRegistration',
  'uof64': 'OnRegistrationAmount',
  'uof65': 'OnRegistrationExpires',
  'uof51': 'AutoPreferredCreditCard',
  'uof53': 'RevokePreferredBidder',
  'uof59': 'EnableUserCompany',
  'uof66': 'IncludeUserPreferences',
  'uof79': 'MandatoryUserPreferences',
  'uof67': 'RequireIdentification',
  'uof69': 'EnableConsignorCompanyClerking',
  'uof75': 'AutoConsignorPrivileges'
};
const CLASS_BLK_MAKE_PARAMETER_BIDDER_NUM = 'mpbn';
const CLASS_BLK_ON_REGISTRATION = 'on_registration';
const CLASS_BLK_OPTIONAL = 'optional';
const CLASS_BLK_RESELLER_OPTION = 'resellerOption';
const CLASS_BLK_SEND_CONFIRMATION = 'send_confirmation';
const CLASS_BLK_SIMPLIFIED = 'simplified';
const CLASS_BLK_USER_PREFERENCES = 'user-preferences';
;// CONCATENATED MODULE: ./assets/js/src/Constants/Admin/SystemParameterUserOptionStoredSearchesPanelConstants.ts
/**
 * Please, do NOT change file content. The content was generated automatically by bin/generate/php_to_js_constants.php
 */

const CID_TXT_MAX_STORED_SEARCHES = 'uof26';
const CID_CHK_SEND_RESULTS_ONCE = 'uof27';
const SystemParameterUserOptionStoredSearchesPanelConstants_PANEL_TO_PROPERTY_MAP = {
  'uof26': 'MaxStoredSearches',
  'uof27': 'SendResultsOnce'
};
;// CONCATENATED MODULE: ./assets/js/src/Constants/Admin/SystemParameterUserOptionTellAFriendPanelConstants.ts
/**
 * Please, do NOT change file content. The content was generated automatically by bin/generate/php_to_js_constants.php
 */

const CID_CHK_TELL_A_FRIDAY = 'uof22';
const CID_CHK_ANYONE_TELL_A_FRIEND = 'uof23';
const SystemParameterUserOptionTellAFriendPanelConstants_PANEL_TO_PROPERTY_MAP = {
  'uof22': 'TellAFriend',
  'uof23': 'AllowAnyoneToTellAFriend'
};
;// CONCATENATED MODULE: ./assets/js/src/Constants/Admin/SystemParameterUserOptionUserResumePanelConstants.ts
/**
 * Please, do NOT change file content. The content was generated automatically by bin/generate/php_to_js_constants.php
 */

const CID_CHK_USER_RESUME = 'uof24';
const CID_LST_SHOW_USER_RESUME = 'uof25';
const SystemParameterUserOptionUserResumePanelConstants_PANEL_TO_PROPERTY_MAP = {
  'uof24': 'EnableUserResume',
  'uof25': 'ShowUserResume'
};
const CLASS_BLK_ENABLE_RESUME = 'enable-resume';
;// CONCATENATED MODULE: ./assets/js/src/Constants/Admin/TaxReportFormConstants.ts
/**
 * Please, do NOT change file content. The content was generated automatically by bin/generate/php_to_js_constants.php
 */

const TaxReportFormConstants_CID_LST_ACCOUNT = 'trf14';
const CID_LST_LOCATION = 'trf05';
const TaxReportFormConstants_CID_LST_ITEM_PER_PAGE = 'trf10';
const CID_LST_CURRENCY = 'trf13';
const CID_TXT_USER_ID = 'trf01c';
const CID_CHK_FILTER_DATE = 'trf02';
const TaxReportFormConstants_CID_BTN_GENERATE = 'trf07';
const CID_DTG_INVOICE_ITEM = 'trf09';
const TaxReportFormConstants_CID_CAL_DATE_FROM = 'trf11';
const TaxReportFormConstants_CID_CAL_DATE_TO = 'trf12';
const CID_AUTOCOMPLETE_AUCTION = 'trf01';
const CID_TXT_USERS_LIST = 'users-list';
const ORD_CREATED_ON = 'createdOn';
const ORD_USERNAME = 'username';
const ORD_BIDDER_NUM = 'bidderNum';
const ORD_SALE_NO = 'saleNo';
const TaxReportFormConstants_ORD_LOT_NO = 'lotNo';
const ORD_INVOICE_NO = 'invoiceNo';
const ORD_NAME = 'name';
const ORD_SALES_TAX = 'salesTax';
const TaxReportFormConstants_ORD_HAMMER_PRICE = 'hammerPrice';
const TaxReportFormConstants_ORD_BUYERS_PREMIUM = 'buyersPremium';
const ORD_SUB_TOTAL = 'subTotal';
const ORD_TAX = 'tax';
const TaxReportFormConstants_ORD_TOTAL = 'total';
const TaxReportFormConstants_CID_BLK_AUCTION_LIST_CONTAINER = 'auction-list-container';
const TaxReportFormConstants_orderKeysToColumns = {
  'createdOn': ['i.created_on'],
  'username': ['u.username'],
  'bidderNum': ['ab.bidder_num'],
  'saleNo': ['a.sale_num'],
  'lotNo': ['ali.lot_num'],
  'invoiceNo': ['i.invoice_no'],
  'name': ['li.name'],
  'salesTax': ['sales_tax'],
  'hammerPrice': ['ii.hammer_price'],
  'buyersPremium': ['ii.buyers_premium'],
  'subTotal': ['sub_total'],
  'tax': ['tax'],
  'total': ['total']
};
;// CONCATENATED MODULE: ./assets/js/src/Constants/Admin/TaxSchemaListBoxConstants.ts
/**
 * Please, do NOT change file content. The content was generated automatically by bin/generate/php_to_js_constants.php
 */

const SCHEMA_TARGET_DATA_ATTRIBUTE = 'schema-target';
const SCHEMA_AMOUNT_SOURCE_DATA_ATTRIBUTE = 'schema-amount-source';
const TaxSchemaListBoxConstants_ST_HAMMER_PRICE = 'HP';
const TaxSchemaListBoxConstants_ST_BUYERS_PREMIUM = 'BP';
const TaxSchemaListBoxConstants_ST_SERVICES = 'SERVICES';
const TaxSchemaListBoxConstants_SCHEMA_TARGET_TO_AMOUNT_SOURCE_MAP = {
  'HP': [1, 4],
  'BP': [2, 4],
  'SERVICES': [3]
};
;// CONCATENATED MODULE: ./assets/js/src/Constants/Admin/UnsoldLotFieldDialogConstants.ts
/**
 * Please, do NOT change file content. The content was generated automatically by bin/generate/php_to_js_constants.php
 */

const CID_ICO_CONFIRM_WAIT = 'unslfd0';
const CID_CHK_LST_LOT_FIELDS = 'unslfd3';
const CID_BTN_HTML = 'unslfd1';
const CID_BTN_CANCEL = 'unslfd2';
const CID_BTN_CSV = 'unslfd4';
const F_CONSIGNOR = 'Consignor';
const F_COST = 'Cost';
const F_DESCRIPTION = 'Description';
const F_FAMILY = 'FamilyId';
const F_GENERAL_NOTE = 'GeneralNote';
const F_HIGH_ESTIMATE = 'HighEstimate';
const F_ITEM_NUM = 'ItemNum';
const F_LOT_NUM = 'LotNum';
const F_LOW_ESTIMATE = 'LowEstimate';
const F_NAME = 'Name';
const F_NOTE_TO_CLERK = 'NoteToClerk';
const F_QUANTITY = 'Quantity';
const F_REPLACEMENT_PRICE = 'ReplacementPrice';
const F_RESERVE_PRICE = 'ReservePrice';
const F_SALES_TAX = 'SalesTax';
const F_STARTING_BID = 'StartingBid';
const UNSOLD_LOT_FIELDS = {
  'LotNum': {
    'selected': true
  },
  'Quantity': {
    'selected': true
  },
  'Name': {
    'selected': true
  },
  'ReservePrice': {
    'selected': true
  },
  'LowEstimate': {
    'selected': true
  },
  'HighEstimate': {
    'selected': true
  },
  'Consignor': {
    'selected': true
  },
  'ItemNum': {
    'selected': false
  },
  'Description': {
    'selected': false
  },
  'FamilyId': {
    'selected': false
  },
  'StartingBid': {
    'selected': false
  },
  'Cost': {
    'selected': false
  },
  'ReplacementPrice': {
    'selected': false
  },
  'SalesTax': {
    'selected': false
  },
  'GeneralNote': {
    'selected': false
  },
  'NoteToClerk': {
    'selected': false
  }
};
;// CONCATENATED MODULE: ./assets/js/src/Constants/Admin/index.ts
/**
 * Index file for all constants
 * Export file of the package Constant (Barrel file https://angular.io/docs/ts/latest/glossary.html#barrel)
 */



























































































































































































































































































;// CONCATENATED MODULE: ./assets/js/src/Components/Notify/AdminAlerts.ts
/* provided dependency */ var AdminAlerts_$ = __webpack_require__(98942);

/**
 * Module for alert messages.
 * This class provide a simples way to notify a user.
 */



const messagesRenderContainer = (/* unused pure expression or super */ null && (`#${NotificationConstants.CID_CTN_ALERT_MESSAGES}`));

/**
 * Class AdminAlerts
 */
class AdminAlerts {
  /**
   *
   * @return {void}
   */
  constructor() {
    _defineProperty(this, "messages", void 0);
    this.messages = [];
  }

  /**
   *
   * @return {void}
   */
  clear() {
    this.messages = [];
    hideMessages();
  }

  /**
   *
   * @return {boolean}
   */
  hasMessages() {
    return this.messages.length > 0;
  }

  /**
   *
   * @param {string} message
   * @param {string} title
   * @param {number} type
   * @param {number} ttl
   * @return {void}
   */
  show(message, title = Constants.Message.TITLE_INFO, type = Constants.Message.INFO, ttl = 10) {
    const msgClass = typeToClass(type);
    const template = `<p class="${msgClass}"><b>${title}!</b> ${message}</p>`;
    AdminAlerts_$(messagesRenderContainer).append(template);
    if (ttl > 0) {
      window.setTimeout(() => hideMessages(), ttl * 1000);
    }
  }

  /**
   *
   * @param {string} message
   * @param {string} title
   * @param {MessageType} type
   * @param {number} ttl
   * @return {void}
   */
  add(message, title = Constants.Message.TITLE_INFO, type = Constants.Message.INFO, ttl = 10) {
    if (message) {
      this.messages.push({
        title: title,
        text: message,
        type: type,
        ttl: ttl
      });
    }
  }

  /**
   *
   * @param {string} message
   * @param {number} ttl
   * @return {void}
   */
  err(message, ttl = 10) {
    this.show(message, Constants.Message.TITLE_ERROR, Constants.Message.ERROR, ttl);
  }

  /**
   *
   * @param {string} message
   * @param {number} ttl
   * @return {void}
   */
  warn(message, ttl = 10) {
    this.show(message, Constants.Message.TITLE_WARNING, Constants.Message.WARNING, ttl);
  }

  /**
   *
   * @param {string} message
   * @param {number} ttl
   * @return {void}
   */
  info(message, ttl = 10) {
    this.show(message, Constants.Message.TITLE_INFO, Constants.Message.INFO, ttl);
  }

  /**
   *
   * @param {string} message
   * @param {number} ttl
   * @return {void}
   */
  success(message, ttl = 10) {
    this.show(message, Constants.Message.TITLE_SUCCESS, Constants.Message.SUCCESS, ttl);
  }

  /**
   *
   * @return {void}
   */
  showAll() {
    if (this.messages.length > 0) {
      this.messages.forEach(msg => this.show(msg.text, msg.title, msg.type, msg.ttl));
      this.messages = [];
    }
  }

  /**
   *
   * @return {void}
   */
  scrollToMessage() {
    const object = AdminAlerts_$(messagesRenderContainer).offset();
    if (!object) {
      return;
    }
    let top = object.top - 50;
    top = top < 0 ? 0 : top;
    AdminAlerts_$('html, body').animate({
      scrollTop: top,
      duration: 0
    });
  }
}

/**
 *
 * @return {void}
 */
function hideMessages() {
  AdminAlerts_$(messagesRenderContainer).empty();
}

/**
 *
 * @param {MessageType} type
 * @return {string}
 */
function typeToClass(type) {
  let classMsg;
  switch (type) {
    case Constants.Message.WARNING:
      classMsg = 'alert';
      break;
    case Constants.Message.SUCCESS:
      classMsg = 'alert alert-success';
      break;
    case Constants.Message.ERROR:
      classMsg = 'alert alert-error';
      break;
    case Constants.Message.INFO:
      classMsg = 'alert alert-info';
      break;
    default:
      classMsg = 'alert alert-info';
      break;
  }
  return classMsg;
}
/* harmony default export */ var Notify_AdminAlerts = ((/* unused pure expression or super */ null && (AdminAlerts)));
;// CONCATENATED MODULE: ./assets/js/src/Components/Notify/Alerts.js
/**
 * Module for alert messages.
 * This class provide a simples way to notify a user.
 */

class Alerts_Alerts {
  constructor() {
    this.messages = [];
  }
  hasMessages() {
    return this.messages.length > 0;
  }
  clear() {
    this.messages = [];
  }
  show(message) {
    window.alert(message);
  }
  add(message) {
    if (message) {
      this.messages.push(message);
    }
  }
  set(newMessages) {
    if (Array.isArray(newMessages)) {
      this.messages = newMessages;
    }
  }
  showAll() {
    if (this.messages.length > 0) {
      this.show(this.messages.join('\n'));
      this.messages = [];
    }
  }
}
/* harmony default export */ var Notify_Alerts = (Alerts_Alerts);
;// CONCATENATED MODULE: ./assets/js/src/Components/Notify/ConfirmationOfPageChanges.js
/* provided dependency */ var ConfirmationOfPageChanges_$ = __webpack_require__(98942);

let isNeedNotify = false;
const alerts = new Notify_Alerts();
function init(formSelector) {
  setHandlerIfAnyInputChangedOnForm(formSelector);
  setHandlerOnAllLinks();
}
function setHandlerIfAnyInputChangedOnForm(formSelector) {
  ConfirmationOfPageChanges_$(formSelector).on('change', 'select', () => isNeedNotify = true);
  ConfirmationOfPageChanges_$(formSelector).on('change', 'input', () => isNeedNotify = true);
}
function setHandlerOnAllLinks() {
  ConfirmationOfPageChanges_$('a').not('.quickImport *').on('click', event => {
    if (isNeedNotify && confirm('Save changes before leaving?')) {
      event.preventDefault();
      alerts.show('Please click the save button to commit your changes.');
    }
  });
}
function dropNotify() {
  isNeedNotify = false;
}
function notify() {
  isNeedNotify = true;
}

;// CONCATENATED MODULE: ./assets/js/src/Components/Notify/WebPublic/FormErrors.js


const DEFAULT_CONTAINER_SELECTOR = `#${CID_BLK_FLASH_NOTIFICATION}`;
function clear(generalDisplayElement = null) {
  jquery_exposed_default()(`.${CLASS_BLK_VALIDATION_ERROR}`).removeClass(CLASS_BLK_VALIDATION_ERROR);
  jquery_exposed_default()(`.${CLASS_BLK_VALIDATION_ERROR_LIST_BOX}`).removeClass(CLASS_BLK_VALIDATION_ERROR_LIST_BOX);
  jquery_exposed_default()(`.${CLASS_BLK_VALIDATION_ERROR_CHECKBOX}`).removeClass(CLASS_BLK_VALIDATION_ERROR_CHECKBOX);
  generalDisplayElement = generalDisplayElement === null ? DEFAULT_CONTAINER_SELECTOR : generalDisplayElement;
  jquery_exposed_default()(generalDisplayElement).html('');
  jquery_exposed_default()(generalDisplayElement).fadeOut();
}

/**
 * Show form errors on top of the form
 * @param {array} messages Expecting format [[idSelector0, message0, label0],... [idSelectorN, messageN, labelN]]
 * @param {string|null} title
 * @param {string|null} containerSelector
 */
function showAll(messages, title = null, containerSelector = null) {
  showErrors(messages, title, containerSelector, errors => {
    const errorsHtml = [];
    errors.forEach(error => errorsHtml.push(`<span class="${NotificationConstants.CLASS_BLK_SUB_TITLES}">
    ${error}
    </span>`));
    return errorsHtml;
  });
}

/**
 * Show form error on top of the form and highlight form's elements with errors
 * @param {array} messages Expecting format [[idSelector0, message0, label0],... [idSelectorN, messageN, labelN]]
 * @param {string|null} title
 * @param {string|null} containerSelector
 */
function showAllWithElementHighlight(messages, title = null, containerSelector = null) {
  showErrors(messages, title, containerSelector, errors => {
    const errorsHtml = [];
    errors.forEach(error => {
      highlightElement(error[0]);
      if (error[1] !== undefined) {
        const label = error[2] ? error[2] + ':' : '';
        errorsHtml.push(`<span class="${CLASS_BLK_SUB_TITLES}">${label}${error[1]}</span>`);
      }
    });
    return errorsHtml;
  });
}

/**
 * General Template function to show form error messages
 * @param {array} messages
 * @param {string|null} title
 * @param {string|null} containerSelector
 * @callback requestCallback
 * @param {requestCallback} messagesHandlerCallback
 */
function showErrors(messages, title, containerSelector, messagesHandlerCallback) {
  if ((messages === null || messages.length === 0) && title === null) {
    return;
  }
  const container = containerSelector == null ? jquery_exposed_default()(DEFAULT_CONTAINER_SELECTOR) : jquery_exposed_default()(containerSelector);
  if (!container.length) {
    console.error(`Can't find container element to show form errors`);
    return;
  }
  title = title === null ? 'Please correct highlighted fields below' : title.trim();
  const sentences = title.split('.');
  sentences[0] = `<span class="error_red">${sentences[0]}. &nbsp;</span>`;
  let followingErrorMessages = '';
  if (sentences.length > 1) {
    followingErrorMessages = `<span class='followig_error_message'>${sentences.slice(1, sentences.length).join('.')}</span>`;
  }
  console.log('followingErrorMessages - ', followingErrorMessages);
  title = `${sentences[0]}${followingErrorMessages}`;
  let html = `<span class="${CLASS_BLK_TITLE}">${title}</span>`;
  if (messages !== null && messages.length) {
    html += messagesHandlerCallback(messages).join('\n');
  }
  container.html(html);
  container.addClass(CLASS_BLK_VALIDATION_ERROR);
  container.fadeIn();
  // go back to the top
  jquery_exposed_default()('html, body').animate({
    scrollTop: container.offset().top
  }, 'fast');
}

/**
 * Modify dom to highlight form's element with error
 * @param {HTMLElement} selector
 */
function highlightElement(selector = null) {
  if (selector === null || selector === '') {
    return;
  }
  const completeSelector = selector[0] === '.' || selector[0] === '#' ? selector : '#' + selector;
  const el = jquery_exposed_default()(completeSelector);
  if (el.length === 0) {
    console.error(`Can't find an error element by the selector "${selector}" to highlight it`);
    return;
  }
  el.addClass(CLASS_BLK_VALIDATION_ERROR);
  // check for sbholder
  if (typeof el.siblings(`.${CLASS_BLK_SB_HOLDER}`)[0] !== 'undefined') {
    el.siblings(`.${CLASS_BLK_SB_HOLDER}`).addClass(CLASS_BLK_VALIDATION_ERROR_LIST_BOX);
  }
  // check for checkbox label
  if (typeof el.siblings('label')[0] !== 'undefined') {
    el.siblings('label').addClass(CLASS_BLK_VALIDATION_ERROR_CHECKBOX);
  }
}

;// CONCATENATED MODULE: ./assets/js/src/Components/Notify/WebPublic/index.js
/**
 * Index file for all tyoes of Notifications
 * Created by namax on 14/03/17.
 */



;// CONCATENATED MODULE: ./assets/js/src/Components/Notify/index.js
/**
 * Index file for all tyoes of Notifications
 * Created by namax on 14/03/17.
 */







;// CONCATENATED MODULE: ./assets/js/src/Components/SamUtil/Checkbox.js
/* provided dependency */ var Checkbox_$ = __webpack_require__(98942);


/**
 * Check\uncheck checkboxes
 * @param {string} formSelector - Form selector, where checkboxes are located.
 * @param {string} checkAllSelector - The main check box, if you click it, then all others checkboxes check\uncheck
 * @param {string} checkboxesSelector - a selector (usually a class) of all others checkboxes that we need check\uncheck simultaneously
 */
function toggleAllCheckboxes(formSelector, checkAllSelector, checkboxesSelector) {
  const form = Checkbox_$(formSelector);
  form.on('click', checkAllSelector, event => {
    const isChecked = event.currentTarget.checked;
    Checkbox_$(checkboxesSelector).each((idx, el) => {
      el.checked = isChecked;
    });
  });

  // This check selectAll Checkbox in case we manually checked\unchecked the all others
  form.on('click', checkboxesSelector, () => {
    const isChecked = Checkbox_$(`${checkboxesSelector}:checked`).length === Checkbox_$(checkboxesSelector).length;
    return Checkbox_$(checkAllSelector).prop('checked', isChecked);
  });
}

/**
 * Verification for before processing
 * @param {string} checkboxesSelector
 * @param {string} noneCheckedMessage
 * @returns {boolean}
 */
function hasCheckedOrAlert(checkboxesSelector, noneCheckedMessage) {
  let atLeastOneChecked = Checkbox_$(`${checkboxesSelector}:checked`).length > 0;
  if (!atLeastOneChecked) {
    let message = slashSingleQuotes(noneCheckedMessage);
    new Alerts().show(message);
    return false;
  }
  return true;
}

/**
 * @param {string} str
 * @returns {string}
 */
function slashSingleQuotes(str) {
  return str.split("'").join("\\'");
}

;// CONCATENATED MODULE: ./assets/js/src/Components/SamUtil/Time.js
const minutesQuarters = {
  '00': 0,
  '15': 15,
  '30': 30,
  '45': 45
};
const meridiem = {
  AM: 'am',
  PM: 'pm'
};
const staggerClosingOpt = {
  '1min': 1,
  '2min': 2,
  '3min': 3,
  '4min': 4,
  '5min': 5,
  '10min': 10,
  '15min': 15,
  '20min': 20,
  '25min': 25,
  '30min': 30,
  '35min': 35,
  '40min': 40,
  '45min': 45,
  '50min': 50,
  '55min': 55,
  '60min': 60
};
const timezones = (/* unused pure expression or super */ null && (['EST', 'CST', 'MST', 'PST', 'EDT', 'CDT', 'MDT', 'PDT', 'CET', 'CEST', 'HST', 'GMT', 'GMT+1', 'AKST', 'SAST', 'AKST', 'SAST', 'WIB', 'AWST', 'ACST', 'AEST', 'AWDT', 'ACDT', 'AEDT']));
function generateMinutes(n = 60) {
  return [...Array(n)].map((e, i) => i);
}
function generateHours(n = 12) {
  return [...Array(n)].map((e, i) => ++i).reverse();
}

;// CONCATENATED MODULE: ./assets/js/src/Components/SamUtil/BrowserDetect.js
const dataBrowser = [{
  string: navigator.userAgent,
  subString: 'Chrome',
  identity: 'Chrome'
}, {
  string: navigator.userAgent,
  subString: 'OmniWeb',
  versionSearch: 'OmniWeb/',
  identity: 'OmniWeb'
}, {
  string: navigator.vendor,
  subString: 'Apple',
  identity: 'Safari',
  versionSearch: 'Version'
}, {
  prop: window.opera,
  identity: 'Opera',
  versionSearch: 'Version'
}, {
  string: navigator.vendor,
  subString: 'iCab',
  identity: 'iCab'
}, {
  string: navigator.vendor,
  subString: 'KDE',
  identity: 'Konqueror'
}, {
  string: navigator.userAgent,
  subString: 'Firefox',
  identity: 'Firefox'
}, {
  string: navigator.vendor,
  subString: 'Camino',
  identity: 'Camino'
}, {
  // for newer Netscapes (6+)
  string: navigator.userAgent,
  subString: 'Netscape',
  identity: 'Netscape'
}, {
  string: navigator.userAgent,
  subString: 'MSIE',
  identity: 'Explorer',
  versionSearch: 'MSIE'
}, {
  string: navigator.userAgent,
  subString: 'Gecko',
  identity: 'Mozilla',
  versionSearch: 'rv'
}, {
  // for older Netscapes (4-)
  string: navigator.userAgent,
  subString: 'Mozilla',
  identity: 'Netscape',
  versionSearch: 'Mozilla'
}];
const dataOS = [{
  string: navigator.platform,
  subString: 'Win',
  identity: 'Windows'
}, {
  string: navigator.platform,
  subString: 'Mac',
  identity: 'Mac'
}, {
  string: navigator.userAgent,
  subString: 'iPhone',
  identity: 'iPhone/iPod'
}, {
  string: navigator.platform,
  subString: 'Linux',
  identity: 'Linux'
}];
let browser = null;
let version = null;
let os = null;
let versionSearchString = null;
function BrowserDetect_init() {
  browser = searchString(dataBrowser) || 'An unknown browser';
  version = searchVersion(navigator.userAgent) || searchVersion(navigator.appVersion) || 'an unknown version';
  os = searchString(dataOS) || 'an unknown OS';
}
function searchString(data) {
  for (let i = 0; i < data.length; i++) {
    const dataString = data[i].string;
    const dataProp = data[i].prop;
    versionSearchString = data[i].versionSearch || data[i].identity;
    if (dataString) {
      if (dataString.indexOf(data[i].subString) !== -1) {
        return data[i].identity;
      }
    } else if (dataProp) {
      return data[i].identity;
    }
  }
}
function searchVersion(dataString) {
  const index = dataString.indexOf(versionSearchString);
  if (index === -1) {
    return;
  }
  return parseFloat(dataString.substring(index + versionSearchString.length + 1));
}
function getBrowser() {
  if (browser === null) {
    BrowserDetect_init();
  }
  return browser;
}
function getVersion() {
  if (version === null) {
    BrowserDetect_init();
  }
  return version;
}
function getOs() {
  if (os === null) {
    BrowserDetect_init();
  }
  return os;
}

;// CONCATENATED MODULE: ./assets/js/src/Components/SamUtil/Print.js
/**
 * Refactored module wwwroot/assets/js/vendor/jquery/jquery.sprintf.js
 * We need this more simple module as npm module throw an exception if we pass such pattern
 * http://bidpath.local/lot-details/index/catalog/%s/lot/%s/%s?url=%2Fauctions%2Flive-sale%2Fid%2F4145%3Fx%3D1
 */

const formats = {
  '%': val => '%',
  b: val => parseInt(val, 10).toString(2),
  c: val => String.fromCharCode(parseInt(val, 10)),
  d: val => parseInt(val, 10) ? parseInt(val, 10) : 0,
  u: val => Math.abs(val),
  f: (val, p) => p > -1 ? Math.round(parseFloat(val) * Math.pow(10, p)) / Math.pow(10, p) : parseFloat(val),
  o: val => parseInt(val, 10).toString(8),
  s: val => val,
  x: val => ('' + parseInt(val, 10).toString(16)).toLowerCase(),
  X: val => ('' + parseInt(val, 10).toString(16)).toUpperCase()
};
const re = /%(?:(\d+)?(?:\.(\d+))?|\(([^)]+)\))([%bcdufosxX])/g;

/**
 *
 * @param data
 * @returns {*}
 */
function dispatch(data) {
  if (data.length === 1 && typeof data[0] === 'object') {
    data = data[0];
    return (match, w, p, lbl, fmt, offset, str) => formats[fmt](data[lbl]);
  } else {
    let idx = 0;
    return (match, w, p, lbl, fmt, offset, str) => formats[fmt](data[idx++], p);
  }
}

/**
 *
 * @param format
 * @param args
 */
function sprintf(format, ...args) {
  return format.replace(re, dispatch(args));
}

/**
 *
 * @param format
 * @param args
 */
function vsprintf(format, ...args) {
  return format.replace(re, dispatch(args));
}

;// CONCATENATED MODULE: ./assets/js/src/Components/SamUtil/Csrf.js
/* provided dependency */ var Csrf_$ = __webpack_require__(98942);
/**
 * Add CSRF-token for each ajax POST request
 */

function addCsrfToken() {
  Csrf_$.ajaxPrefilter(function (options, originalOptions) {
    if (options.type !== 'POST' || originalOptions.data.constructor.name === 'FormData') {
      return;
    }
    const csrfTokenName = Csrf_$(`#${FORM_CSRF_TOKEN_NAME}`).val();
    if (Csrf_$('#' + csrfTokenName).length) {
      options.data = Csrf_$.param(Csrf_$.extend(originalOptions.data || {}, {
        csrf_token: Csrf_$('#' + csrfTokenName).val()
      }));
    }
  });
}

// EXTERNAL MODULE: ./node_modules/@babel/runtime-corejs3/regenerator/index.js
var regenerator = __webpack_require__(30222);
;// CONCATENATED MODULE: ./assets/js/src/Components/SamUtil/ProtobufRequest.ts




/**
 * Class ProtobufRequest
 */
class ProtobufRequest {
  /**
   *
   * @param {string} url
   * @param {boolean} isBinaryMode
   * @param {RequestMethod} method
   */
  constructor(url, isBinaryMode = false, method = 'POST') {
    _defineProperty(this, "isBinaryMode", void 0);
    _defineProperty(this, "url", void 0);
    _defineProperty(this, "method", void 0);
    _defineProperty(this, "requestMessageEncoder", void 0);
    _defineProperty(this, "responseMessageDecoder", void 0);
    this.url = url;
    this.method = method;
    this.isBinaryMode = isBinaryMode;
  }

  /**
   *
   * @param {ProtobufMessageEncoderInterface<Request>} encoder
   * @return {void}
   */
  setRequestMessageEncoder(encoder) {
    this.requestMessageEncoder = encoder;
  }

  /**
   *
   * @param {ProtobufMessageDecoderInterface<Response>} decoder
   * @return {void}
   */
  setResponseMessageDecoder(decoder) {
    this.responseMessageDecoder = decoder;
  }

  /**
   *
   * @param {Request} data
   * @return {Promise<Response>}
   */
  send(data) {
    var _this = this;
    return _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee() {
      var encodedData, settings, responseData;
      return _regeneratorRuntime.wrap(function _callee$(_context) {
        while (1) switch (_context.prev = _context.next) {
          case 0:
            encodedData = _this.encodeRequestData(data);
            settings = {
              method: _this.method,
              url: _this.url,
              data: encodedData
            };
            if (_this.isBinaryMode && _this.responseMessageDecoder) {
              settings.xhr = () => {
                const xhrOverride = new XMLHttpRequest();
                xhrOverride.responseType = 'arraybuffer';
                return xhrOverride;
              };
            }
            if (encodedData instanceof ArrayBuffer) {
              settings.processData = false;
              settings.contentType = 'application/x-protobuf';
            }
            _context.next = 6;
            return $.ajax(settings);
          case 6:
            responseData = _context.sent;
            return _context.abrupt("return", _this.decodeResponseData(responseData));
          case 8:
          case "end":
            return _context.stop();
        }
      }, _callee);
    }))();
  }

  /**
   *
   * @param {Request} data
   * @return {Request | ArrayBuffer}
   */
  encodeRequestData(data) {
    if (this.requestMessageEncoder) {
      const encodedRequest = this.requestMessageEncoder.encode(data).finish();
      const offset = encodedRequest.byteOffset;
      const length = encodedRequest.byteLength;
      return encodedRequest.buffer.slice(offset, offset + length);
    }
    return data;
  }

  /**
   *
   * @param {Record<string, any>} data
   * @return {Response}
   */
  decodeResponseData(data) {
    let decodedResponse;
    if (data instanceof ArrayBuffer) {
      if (!this.responseMessageDecoder) {
        throw new Error('Invalid response message decoder');
      }
      decodedResponse = this.responseMessageDecoder.decode(new Uint8Array(data));
    } else if (this.responseMessageDecoder) {
      decodedResponse = this.responseMessageDecoder.fromJSON(data);
    } else {
      decodedResponse = data;
    }
    return decodedResponse;
  }
}
;// CONCATENATED MODULE: ./assets/js/src/Components/SamUtil/index.ts
/**
 * Index file for all Util classes
 * Created by namax on 14/03/17.
 */
















;// CONCATENATED MODULE: ./assets/js/src/Pages/Responsive/Login/Index/ServerContext.ts

/**
 * Class to provide context of server variable.
 */

/**
 * Class ServerContext
 */
class ServerContext {
  /**
   *
   * @param {ServerData} serverData
   */
  constructor(serverData) {
    defineProperty_defineProperty(this, "serverData", void 0);
    this.serverData = serverData;
  }

  /**
   *
   * @return {string}
   */
  getTrackingCode() {
    return this.serverData.get('trackingCode');
  }

  /**
   *
   * @return {string}
   */
  getUsernameIsRequired() {
    return this.serverData.get('usernameIsRequired');
  }

  /**
   *
   * @return {string}
   */
  getPasswordIsRequired() {
    return this.serverData.get('passwordIsRequired');
  }

  /**
   *
   * @return {string}
   */
  getBackUrl() {
    return this.serverData.get('backUrl');
  }

  /**
   *
   * @return {string}
   */
  getLoginAjaxUrl() {
    return this.serverData.get('loginAjaxUrl');
  }
}
;// CONCATENATED MODULE: ./assets/js/src/Constants/Responsive/LoginFormConstants.ts
/**
 * Please, do NOT change file content. The content was generated automatically by bin/generate/php_to_js_constants.php
 */

const CID_TXT_USERNAME = 'usr';
const CID_TXT_PASSWORD = 'pas';
const CID_BTN_LOGIN = 'lgn';
const CID_BTN_LOGIN_OPENID = 'lgnoid';
const CID_BTN_REGISTER_OPENID = 'rgstroid';
const CID_BTN_LOGIN_OPENID_TIMED_REDIRECT = 'display-countdown-time';
const CID_BLK_FLASH_NOTIFICATIONS = 'flash-notifications';
const CID_CHK_KEEP_SIGNED = 'keep-signed';
const CLASS_BTN_ORNG = 'orng';
const CLASS_BTN_DRKBLU = 'drkblu';
const LoginFormConstants_CLASS_BLK_VALIDATION_ERROR = 'validation-error';
;// CONCATENATED MODULE: ./assets/js/src/Pages/Responsive/Login/Index/Login.ts




let sc;
function Login_init(serverContext) {
  sc = serverContext;
  bindEvents();
  login();
}
function bindEvents() {
  if (sc.getTrackingCode()) {
    jquery_exposed_default()(`.${CLASS_BTN_ORNG}`).on('click', function () {
      ga('send', 'event', {
        eventCategory: 'LogintoBS',
        eventAction: 'LogintoBS',
        eventLabel: 'LogintoBS'
      });
    });
  }
  const userNameSelector = jquery_exposed_default()('#' + CID_TXT_USERNAME);
  userNameSelector.on('focus', () => {
    userNameSelector.removeClass(LoginFormConstants_CLASS_BLK_VALIDATION_ERROR);
  });
  const passwordSelector = jquery_exposed_default()('#' + CID_TXT_PASSWORD);
  passwordSelector.on('focus', () => {
    passwordSelector.removeClass(LoginFormConstants_CLASS_BLK_VALIDATION_ERROR);
  });
}
function validateLogin() {
  const errors = [];
  const usernameElement = jquery_exposed_default()('#' + CID_TXT_USERNAME);
  const passwordElement = jquery_exposed_default()('#' + CID_TXT_PASSWORD);
  if (usernameElement.val() && !String(usernameElement.val()).length) {
    errors.push([CID_TXT_USERNAME, sc.getUsernameIsRequired()]);
  }
  if (usernameElement.val() && !String(passwordElement.val()).length) {
    errors.push([CID_TXT_PASSWORD, sc.getPasswordIsRequired()]);
  }
  if (errors.length > 0) {
    showAllWithElementHighlight(errors);
    return false;
  }
  clear();
  return true;
}
function login() {
  jquery_exposed_default()('#' + CID_BTN_LOGIN).on('click', () => {
    clear();
    if (!validateLogin()) {
      enableLoginButton(true);
      return;
    }
    const usr = jquery_exposed_default()('#' + CID_TXT_USERNAME).val();
    const pass = jquery_exposed_default()('#' + CID_TXT_PASSWORD).val();
    const shouldKeepSigned = jquery_exposed_default()('#' + CID_CHK_KEEP_SIGNED).prop('checked');
    jquery_exposed_default().ajax({
      dataType: 'json',
      method: 'POST',
      url: sc.getLoginAjaxUrl(),
      data: {
        [CID_TXT_USERNAME]: usr,
        [CID_TXT_PASSWORD]: pass,
        [CID_CHK_KEEP_SIGNED]: shouldKeepSigned,
        backUrl: sc.getBackUrl()
      },
      success: handleLoginResponse
    });
  });
}
function handleLoginResponse(response) {
  if (response.success && response.payload) {
    redirect(response.payload.redirectUrl);
    return;
  }
  response.msg.errors.forEach(error => {
    showAllWithElementHighlight(error.fields, `${error.translate.loginFailed}.${error.messages}`);
  });
  enableLoginButton(true);
}
function enableLoginButton(enable) {
  jquery_exposed_default()('#' + CID_BTN_LOGIN).prop('disabled', !enable);
}

;// CONCATENATED MODULE: ./assets/js/src/Pages/Responsive/Login/Index/_EntryPoint.ts





const integrator = new ServerData_ServerDataIntegrator();
jquery_exposed_default()(() => {
  'use strict';

  addCsrfToken();
  const sc = new ServerContext(integrator.serverData());
  Login_init(sc);
});
integrator.createProp('redirect', redirect);
}();
/******/ })()
;