(function(factory){"use strict";if(typeof define==="function"&&define.amd){define(["jquery"],function(jQuery){return factory(jQuery,window);});}else if(typeof module==="object"&&module.exports){module.exports=factory(require("jquery"),window);}else{factory(jQuery,window);}})(function(jQuery,window){"use strict";jQuery.migrateVersion="3.4.1";function compareVersions(v1,v2){var i,rVersionParts=/^(\d+)\.(\d+)\.(\d+)/,v1p=rVersionParts.exec(v1)||[],v2p=rVersionParts.exec(v2)||[];for(i=1;i<=3;i++){if(+v1p[i]>+v2p[i]){return 1;}
if(+v1p[i]<+v2p[i]){return-1;}}
return 0;}
function jQueryVersionSince(version){return compareVersions(jQuery.fn.jquery,version)>=0;}
var disabledPatches=Object.create(null);jQuery.migrateDisablePatches=function(){var i;for(i=0;i<arguments.length;i++){disabledPatches[arguments[i]]=true;}};jQuery.migrateEnablePatches=function(){var i;for(i=0;i<arguments.length;i++){delete disabledPatches[arguments[i]];}};jQuery.migrateIsPatchEnabled=function(patchCode){return!disabledPatches[patchCode];};(function(){if(!window.console||!window.console.log){return;}
if(!jQuery||!jQueryVersionSince("3.0.0")||jQueryVersionSince("5.0.0")){window.console.log("JQMIGRATE: jQuery 3.x-4.x REQUIRED");}
if(jQuery.migrateWarnings){window.console.log("JQMIGRATE: Migrate plugin loaded multiple times");}
window.console.log("JQMIGRATE: Migrate is installed"+
(jQuery.migrateMute?"":" with logging active")+", version "+jQuery.migrateVersion);})();var warnedAbout={};jQuery.migrateDeduplicateWarnings=true;jQuery.migrateWarnings=[];if(jQuery.migrateTrace===undefined){jQuery.migrateTrace=true;}
jQuery.migrateReset=function(){warnedAbout={};jQuery.migrateWarnings.length=0;};function migrateWarn(code,msg){var console=window.console;if(jQuery.migrateIsPatchEnabled(code)&&(!jQuery.migrateDeduplicateWarnings||!warnedAbout[msg])){warnedAbout[msg]=true;jQuery.migrateWarnings.push(msg+" ["+code+"]");if(console&&console.warn&&!jQuery.migrateMute){console.warn("JQMIGRATE: "+msg);if(jQuery.migrateTrace&&console.trace){console.trace();}}}}
function migrateWarnProp(obj,prop,value,code,msg){Object.defineProperty(obj,prop,{configurable:true,enumerable:true,get:function(){migrateWarn(code,msg);return value;},set:function(newValue){migrateWarn(code,msg);value=newValue;}});}
function migrateWarnFuncInternal(obj,prop,newFunc,code,msg){var finalFunc,origFunc=obj[prop];obj[prop]=function(){if(msg){migrateWarn(code,msg);}
finalFunc=jQuery.migrateIsPatchEnabled(code)?newFunc:(origFunc||jQuery.noop);return finalFunc.apply(this,arguments);};}
function migratePatchAndWarnFunc(obj,prop,newFunc,code,msg){if(!msg){throw new Error("No warning message provided");}
return migrateWarnFuncInternal(obj,prop,newFunc,code,msg);}
function migratePatchFunc(obj,prop,newFunc,code){return migrateWarnFuncInternal(obj,prop,newFunc,code);}
if(window.document.compatMode==="BackCompat"){migrateWarn("quirks","jQuery is not compatible with Quirks Mode");}
var findProp,class2type={},oldInit=jQuery.fn.init,oldFind=jQuery.find,rattrHashTest=/\[(\s*[-\w]+\s*)([~|^$*]?=)\s*([-\w#]*?#[-\w#]*)\s*\]/,rattrHashGlob=/\[(\s*[-\w]+\s*)([~|^$*]?=)\s*([-\w#]*?#[-\w#]*)\s*\]/g,rtrim=/^[\s\uFEFF\xA0]+|([^\s\uFEFF\xA0])[\s\uFEFF\xA0]+$/g;migratePatchFunc(jQuery.fn,"init",function(arg1){var args=Array.prototype.slice.call(arguments);if(jQuery.migrateIsPatchEnabled("selector-empty-id")&&typeof arg1==="string"&&arg1==="#"){migrateWarn("selector-empty-id","jQuery( '#' ) is not a valid selector");args[0]=[];}
return oldInit.apply(this,args);},"selector-empty-id");jQuery.fn.init.prototype=jQuery.fn;migratePatchFunc(jQuery,"find",function(selector){var args=Array.prototype.slice.call(arguments);if(typeof selector==="string"&&rattrHashTest.test(selector)){try{window.document.querySelector(selector);}catch(err1){selector=selector.replace(rattrHashGlob,function(_,attr,op,value){return"["+attr+op+"\""+value+"\"]";});try{window.document.querySelector(selector);migrateWarn("selector-hash","Attribute selector with '#' must be quoted: "+args[0]);args[0]=selector;}catch(err2){migrateWarn("selector-hash","Attribute selector with '#' was not fixed: "+args[0]);}}}
return oldFind.apply(this,args);},"selector-hash");for(findProp in oldFind){if(Object.prototype.hasOwnProperty.call(oldFind,findProp)){jQuery.find[findProp]=oldFind[findProp];}}
migratePatchAndWarnFunc(jQuery.fn,"size",function(){return this.length;},"size","jQuery.fn.size() is deprecated and removed; use the .length property");migratePatchAndWarnFunc(jQuery,"parseJSON",function(){return JSON.parse.apply(null,arguments);},"parseJSON","jQuery.parseJSON is deprecated; use JSON.parse");migratePatchAndWarnFunc(jQuery,"holdReady",jQuery.holdReady,"holdReady","jQuery.holdReady is deprecated");migratePatchAndWarnFunc(jQuery,"unique",jQuery.uniqueSort,"unique","jQuery.unique is deprecated; use jQuery.uniqueSort");migrateWarnProp(jQuery.expr,"filters",jQuery.expr.pseudos,"expr-pre-pseudos","jQuery.expr.filters is deprecated; use jQuery.expr.pseudos");migrateWarnProp(jQuery.expr,":",jQuery.expr.pseudos,"expr-pre-pseudos","jQuery.expr[':'] is deprecated; use jQuery.expr.pseudos");if(jQueryVersionSince("3.1.1")){migratePatchAndWarnFunc(jQuery,"trim",function(text){return text==null?"":(text+"").replace(rtrim,"$1");},"trim","jQuery.trim is deprecated; use String.prototype.trim");}
if(jQueryVersionSince("3.2.0")){migratePatchAndWarnFunc(jQuery,"nodeName",function(elem,name){return elem.nodeName&&elem.nodeName.toLowerCase()===name.toLowerCase();},"nodeName","jQuery.nodeName is deprecated");migratePatchAndWarnFunc(jQuery,"isArray",Array.isArray,"isArray","jQuery.isArray is deprecated; use Array.isArray");}
if(jQueryVersionSince("3.3.0")){migratePatchAndWarnFunc(jQuery,"isNumeric",function(obj){var type=typeof obj;return(type==="number"||type==="string")&&!isNaN(obj-parseFloat(obj));},"isNumeric","jQuery.isNumeric() is deprecated");jQuery.each("Boolean Number String Function Array Date RegExp Object Error Symbol".split(" "),function(_,name){class2type["[object "+name+"]"]=name.toLowerCase();});migratePatchAndWarnFunc(jQuery,"type",function(obj){if(obj==null){return obj+"";}
return typeof obj==="object"||typeof obj==="function"?class2type[Object.prototype.toString.call(obj)]||"object":typeof obj;},"type","jQuery.type is deprecated");migratePatchAndWarnFunc(jQuery,"isFunction",function(obj){return typeof obj==="function";},"isFunction","jQuery.isFunction() is deprecated");migratePatchAndWarnFunc(jQuery,"isWindow",function(obj){return obj!=null&&obj===obj.window;},"isWindow","jQuery.isWindow() is deprecated");}
if(jQuery.ajax){var oldAjax=jQuery.ajax,rjsonp=/(=)\?(?=&|$)|\?\?/;migratePatchFunc(jQuery,"ajax",function(){var jQXHR=oldAjax.apply(this,arguments);if(jQXHR.promise){migratePatchAndWarnFunc(jQXHR,"success",jQXHR.done,"jqXHR-methods","jQXHR.success is deprecated and removed");migratePatchAndWarnFunc(jQXHR,"error",jQXHR.fail,"jqXHR-methods","jQXHR.error is deprecated and removed");migratePatchAndWarnFunc(jQXHR,"complete",jQXHR.always,"jqXHR-methods","jQXHR.complete is deprecated and removed");}
return jQXHR;},"jqXHR-methods");if(!jQueryVersionSince("4.0.0")){jQuery.ajaxPrefilter("+json",function(s){if(s.jsonp!==false&&(rjsonp.test(s.url)||typeof s.data==="string"&&(s.contentType||"").indexOf("application/x-www-form-urlencoded")===0&&rjsonp.test(s.data))){migrateWarn("jsonp-promotion","JSON-to-JSONP auto-promotion is deprecated");}});}}
var oldRemoveAttr=jQuery.fn.removeAttr,oldToggleClass=jQuery.fn.toggleClass,rmatchNonSpace=/\S+/g;migratePatchFunc(jQuery.fn,"removeAttr",function(name){var self=this,patchNeeded=false;jQuery.each(name.match(rmatchNonSpace),function(_i,attr){if(jQuery.expr.match.bool.test(attr)){self.each(function(){if(jQuery(this).prop(attr)!==false){patchNeeded=true;return false;}});}
if(patchNeeded){migrateWarn("removeAttr-bool","jQuery.fn.removeAttr no longer sets boolean properties: "+attr);self.prop(attr,false);}});return oldRemoveAttr.apply(this,arguments);},"removeAttr-bool");migratePatchFunc(jQuery.fn,"toggleClass",function(state){if(state!==undefined&&typeof state!=="boolean"){return oldToggleClass.apply(this,arguments);}
migrateWarn("toggleClass-bool","jQuery.fn.toggleClass( boolean ) is deprecated");return this.each(function(){var className=this.getAttribute&&this.getAttribute("class")||"";if(className){jQuery.data(this,"__className__",className);}
if(this.setAttribute){this.setAttribute("class",className||state===false?"":jQuery.data(this,"__className__")||"");}});},"toggleClass-bool");function camelCase(string){return string.replace(/-([a-z])/g,function(_,letter){return letter.toUpperCase();});}
var origFnCss,internalCssNumber,internalSwapCall=false,ralphaStart=/^[a-z]/,rautoPx=/^(?:Border(?:Top|Right|Bottom|Left)?(?:Width|)|(?:Margin|Padding)?(?:Top|Right|Bottom|Left)?|(?:Min|Max)?(?:Width|Height))$/;if(jQuery.swap){jQuery.each(["height","width","reliableMarginRight"],function(_,name){var oldHook=jQuery.cssHooks[name]&&jQuery.cssHooks[name].get;if(oldHook){jQuery.cssHooks[name].get=function(){var ret;internalSwapCall=true;ret=oldHook.apply(this,arguments);internalSwapCall=false;return ret;};}});}
migratePatchFunc(jQuery,"swap",function(elem,options,callback,args){var ret,name,old={};if(!internalSwapCall){migrateWarn("swap","jQuery.swap() is undocumented and deprecated");}
for(name in options){old[name]=elem.style[name];elem.style[name]=options[name];}
ret=callback.apply(elem,args||[]);for(name in options){elem.style[name]=old[name];}
return ret;},"swap");if(jQueryVersionSince("3.4.0")&&typeof Proxy!=="undefined"){jQuery.cssProps=new Proxy(jQuery.cssProps||{},{set:function(){migrateWarn("cssProps","jQuery.cssProps is deprecated");return Reflect.set.apply(this,arguments);}});}
if(jQueryVersionSince("4.0.0")){internalCssNumber={animationIterationCount:true,columnCount:true,fillOpacity: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,widows:true,zIndex:true,zoom:true};if(typeof Proxy!=="undefined"){jQuery.cssNumber=new Proxy(internalCssNumber,{get:function(){migrateWarn("css-number","jQuery.cssNumber is deprecated");return Reflect.get.apply(this,arguments);},set:function(){migrateWarn("css-number","jQuery.cssNumber is deprecated");return Reflect.set.apply(this,arguments);}});}else{jQuery.cssNumber=internalCssNumber;}}else{internalCssNumber=jQuery.cssNumber;}
function isAutoPx(prop){return ralphaStart.test(prop)&&rautoPx.test(prop[0].toUpperCase()+prop.slice(1));}
origFnCss=jQuery.fn.css;migratePatchFunc(jQuery.fn,"css",function(name,value){var camelName,origThis=this;if(name&&typeof name==="object"&&!Array.isArray(name)){jQuery.each(name,function(n,v){jQuery.fn.css.call(origThis,n,v);});return this;}
if(typeof value==="number"){camelName=camelCase(name);if(!isAutoPx(camelName)&&!internalCssNumber[camelName]){migrateWarn("css-number","Number-typed values are deprecated for jQuery.fn.css( \""+
name+"\", value )");}}
return origFnCss.apply(this,arguments);},"css-number");var origData=jQuery.data;migratePatchFunc(jQuery,"data",function(elem,name,value){var curData,sameKeys,key;if(name&&typeof name==="object"&&arguments.length===2){curData=jQuery.hasData(elem)&&origData.call(this,elem);sameKeys={};for(key in name){if(key!==camelCase(key)){migrateWarn("data-camelCase","jQuery.data() always sets/gets camelCased names: "+key);curData[key]=name[key];}else{sameKeys[key]=name[key];}}
origData.call(this,elem,sameKeys);return name;}
if(name&&typeof name==="string"&&name!==camelCase(name)){curData=jQuery.hasData(elem)&&origData.call(this,elem);if(curData&&name in curData){migrateWarn("data-camelCase","jQuery.data() always sets/gets camelCased names: "+name);if(arguments.length>2){curData[name]=value;}
return curData[name];}}
return origData.apply(this,arguments);},"data-camelCase");if(jQuery.fx){var intervalValue,intervalMsg,oldTweenRun=jQuery.Tween.prototype.run,linearEasing=function(pct){return pct;};migratePatchFunc(jQuery.Tween.prototype,"run",function(){if(jQuery.easing[this.easing].length>1){migrateWarn("easing-one-arg","'jQuery.easing."+this.easing.toString()+"' should use only one argument");jQuery.easing[this.easing]=linearEasing;}
oldTweenRun.apply(this,arguments);},"easing-one-arg");intervalValue=jQuery.fx.interval;intervalMsg="jQuery.fx.interval is deprecated";if(window.requestAnimationFrame){Object.defineProperty(jQuery.fx,"interval",{configurable:true,enumerable:true,get:function(){if(!window.document.hidden){migrateWarn("fx-interval",intervalMsg);}
if(!jQuery.migrateIsPatchEnabled("fx-interval")){return intervalValue;}
return intervalValue===undefined?13:intervalValue;},set:function(newValue){migrateWarn("fx-interval",intervalMsg);intervalValue=newValue;}});}}
var oldLoad=jQuery.fn.load,oldEventAdd=jQuery.event.add,originalFix=jQuery.event.fix;jQuery.event.props=[];jQuery.event.fixHooks={};migrateWarnProp(jQuery.event.props,"concat",jQuery.event.props.concat,"event-old-patch","jQuery.event.props.concat() is deprecated and removed");migratePatchFunc(jQuery.event,"fix",function(originalEvent){var event,type=originalEvent.type,fixHook=this.fixHooks[type],props=jQuery.event.props;if(props.length){migrateWarn("event-old-patch","jQuery.event.props are deprecated and removed: "+props.join());while(props.length){jQuery.event.addProp(props.pop());}}
if(fixHook&&!fixHook._migrated_){fixHook._migrated_=true;migrateWarn("event-old-patch","jQuery.event.fixHooks are deprecated and removed: "+type);if((props=fixHook.props)&&props.length){while(props.length){jQuery.event.addProp(props.pop());}}}
event=originalFix.call(this,originalEvent);return fixHook&&fixHook.filter?fixHook.filter(event,originalEvent):event;},"event-old-patch");migratePatchFunc(jQuery.event,"add",function(elem,types){if(elem===window&&types==="load"&&window.document.readyState==="complete"){migrateWarn("load-after-event","jQuery(window).on('load'...) called after load event occurred");}
return oldEventAdd.apply(this,arguments);},"load-after-event");jQuery.each(["load","unload","error"],function(_,name){migratePatchFunc(jQuery.fn,name,function(){var args=Array.prototype.slice.call(arguments,0);if(name==="load"&&typeof args[0]==="string"){return oldLoad.apply(this,args);}
migrateWarn("shorthand-removed-v3","jQuery.fn."+name+"() is deprecated");args.splice(0,0,name);if(arguments.length){return this.on.apply(this,args);}
this.triggerHandler.apply(this,args);return this;},"shorthand-removed-v3");});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){migratePatchAndWarnFunc(jQuery.fn,name,function(data,fn){return arguments.length>0?this.on(name,null,data,fn):this.trigger(name);},"shorthand-deprecated-v3","jQuery.fn."+name+"() event shorthand is deprecated");});jQuery(function(){jQuery(window.document).triggerHandler("ready");});jQuery.event.special.ready={setup:function(){if(this===window.document){migrateWarn("ready-event","'ready' event is deprecated");}}};migratePatchAndWarnFunc(jQuery.fn,"bind",function(types,data,fn){return this.on(types,null,data,fn);},"pre-on-methods","jQuery.fn.bind() is deprecated");migratePatchAndWarnFunc(jQuery.fn,"unbind",function(types,fn){return this.off(types,null,fn);},"pre-on-methods","jQuery.fn.unbind() is deprecated");migratePatchAndWarnFunc(jQuery.fn,"delegate",function(selector,types,data,fn){return this.on(types,selector,data,fn);},"pre-on-methods","jQuery.fn.delegate() is deprecated");migratePatchAndWarnFunc(jQuery.fn,"undelegate",function(selector,types,fn){return arguments.length===1?this.off(selector,"**"):this.off(types,selector||"**",fn);},"pre-on-methods","jQuery.fn.undelegate() is deprecated");migratePatchAndWarnFunc(jQuery.fn,"hover",function(fnOver,fnOut){return this.on("mouseenter",fnOver).on("mouseleave",fnOut||fnOver);},"pre-on-methods","jQuery.fn.hover() is deprecated");var rxhtmlTag=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([a-z][^\/\0>\x20\t\r\n\f]*)[^>]*)\/>/gi,makeMarkup=function(html){var doc=window.document.implementation.createHTMLDocument("");doc.body.innerHTML=html;return doc.body&&doc.body.innerHTML;},warnIfChanged=function(html){var changed=html.replace(rxhtmlTag,"<$1></$2>");if(changed!==html&&makeMarkup(html)!==makeMarkup(changed)){migrateWarn("self-closed-tags","HTML tags must be properly nested and closed: "+html);}};jQuery.UNSAFE_restoreLegacyHtmlPrefilter=function(){jQuery.migrateEnablePatches("self-closed-tags");};migratePatchFunc(jQuery,"htmlPrefilter",function(html){warnIfChanged(html);return html.replace(rxhtmlTag,"<$1></$2>");},"self-closed-tags");jQuery.migrateDisablePatches("self-closed-tags");var origOffset=jQuery.fn.offset;migratePatchFunc(jQuery.fn,"offset",function(){var elem=this[0];if(elem&&(!elem.nodeType||!elem.getBoundingClientRect)){migrateWarn("offset-valid-elem","jQuery.fn.offset() requires a valid DOM element");return arguments.length?this:undefined;}
return origOffset.apply(this,arguments);},"offset-valid-elem");if(jQuery.ajax){var origParam=jQuery.param;migratePatchFunc(jQuery,"param",function(data,traditional){var ajaxTraditional=jQuery.ajaxSettings&&jQuery.ajaxSettings.traditional;if(traditional===undefined&&ajaxTraditional){migrateWarn("param-ajax-traditional","jQuery.param() no longer uses jQuery.ajaxSettings.traditional");traditional=ajaxTraditional;}
return origParam.call(this,data,traditional);},"param-ajax-traditional");}
migratePatchAndWarnFunc(jQuery.fn,"andSelf",jQuery.fn.addBack,"andSelf","jQuery.fn.andSelf() is deprecated and removed, use jQuery.fn.addBack()");if(jQuery.Deferred){var oldDeferred=jQuery.Deferred,tuples=[["resolve","done",jQuery.Callbacks("once memory"),jQuery.Callbacks("once memory"),"resolved"],["reject","fail",jQuery.Callbacks("once memory"),jQuery.Callbacks("once memory"),"rejected"],["notify","progress",jQuery.Callbacks("memory"),jQuery.Callbacks("memory")]];migratePatchFunc(jQuery,"Deferred",function(func){var deferred=oldDeferred(),promise=deferred.promise();function newDeferredPipe(){var fns=arguments;return jQuery.Deferred(function(newDefer){jQuery.each(tuples,function(i,tuple){var fn=typeof fns[i]==="function"&&fns[i];deferred[tuple[1]](function(){var returned=fn&&fn.apply(this,arguments);if(returned&&typeof returned.promise==="function"){returned.promise().done(newDefer.resolve).fail(newDefer.reject).progress(newDefer.notify);}else{newDefer[tuple[0]+"With"](this===promise?newDefer.promise():this,fn?[returned]:arguments);}});});fns=null;}).promise();}
migratePatchAndWarnFunc(deferred,"pipe",newDeferredPipe,"deferred-pipe","deferred.pipe() is deprecated");migratePatchAndWarnFunc(promise,"pipe",newDeferredPipe,"deferred-pipe","deferred.pipe() is deprecated");if(func){func.call(deferred,deferred);}
return deferred;},"deferred-pipe");jQuery.Deferred.exceptionHook=oldDeferred.exceptionHook;}
return jQuery;});