<html><head><meta name="color-scheme" content="light dark"></head><body><pre style="word-wrap: break-word; white-space: pre-wrap;">document.addEventListener('DOMContentLoaded',function(){for(var cookieName in wpml_cookies){var cookieData=wpml_cookies[cookieName];document.cookie=cookieName+'='+cookieData.value+';expires='+cookieData.expires+'; path='+cookieData.path+'; SameSite=Lax'}});/*! jQuery Migrate v3.4.1 | (c) OpenJS Foundation and other contributors | jquery.org/license */
"undefined"==typeof jQuery.migrateMute&amp;&amp;(jQuery.migrateMute=!0),function(t){"use strict";"function"==typeof define&amp;&amp;define.amd?define(["jquery"],function(e){return t(e,window)}):"object"==typeof module&amp;&amp;module.exports?module.exports=t(require("jquery"),window):t(jQuery,window)}(function(s,n){"use strict";function e(e){return 0&lt;=function(e,t){for(var r=/^(\d+)\.(\d+)\.(\d+)/,n=r.exec(e)||[],o=r.exec(t)||[],a=1;a&lt;=3;a++){if(+o[a]&lt;+n[a])return 1;if(+n[a]&lt;+o[a])return-1}return 0}(s.fn.jquery,e)}s.migrateVersion="3.4.1";var t=Object.create(null);s.migrateDisablePatches=function(){for(var e=0;e&lt;arguments.length;e++)t[arguments[e]]=!0},s.migrateEnablePatches=function(){for(var e=0;e&lt;arguments.length;e++)delete t[arguments[e]]},s.migrateIsPatchEnabled=function(e){return!t[e]},n.console&amp;&amp;n.console.log&amp;&amp;(s&amp;&amp;e("3.0.0")&amp;&amp;!e("5.0.0")||n.console.log("JQMIGRATE: jQuery 3.x-4.x REQUIRED"),s.migrateWarnings&amp;&amp;n.console.log("JQMIGRATE: Migrate plugin loaded multiple times"),n.console.log("JQMIGRATE: Migrate is installed"+(s.migrateMute?"":" with logging active")+", version "+s.migrateVersion));var o={};function u(e,t){var r=n.console;!s.migrateIsPatchEnabled(e)||s.migrateDeduplicateWarnings&amp;&amp;o[t]||(o[t]=!0,s.migrateWarnings.push(t+" ["+e+"]"),r&amp;&amp;r.warn&amp;&amp;!s.migrateMute&amp;&amp;(r.warn("JQMIGRATE: "+t),s.migrateTrace&amp;&amp;r.trace&amp;&amp;r.trace()))}function r(e,t,r,n,o){Object.defineProperty(e,t,{configurable:!0,enumerable:!0,get:function(){return u(n,o),r},set:function(e){u(n,o),r=e}})}function a(e,t,r,n,o){var a=e[t];e[t]=function(){return o&amp;&amp;u(n,o),(s.migrateIsPatchEnabled(n)?r:a||s.noop).apply(this,arguments)}}function c(e,t,r,n,o){if(!o)throw new Error("No warning message provided");return a(e,t,r,n,o),0}function i(e,t,r,n){return a(e,t,r,n),0}s.migrateDeduplicateWarnings=!0,s.migrateWarnings=[],void 0===s.migrateTrace&amp;&amp;(s.migrateTrace=!0),s.migrateReset=function(){o={},s.migrateWarnings.length=0},"BackCompat"===n.document.compatMode&amp;&amp;u("quirks","jQuery is not compatible with Quirks Mode");var d,l,p,f={},m=s.fn.init,y=s.find,h=/\[(\s*[-\w]+\s*)([~|^$*]?=)\s*([-\w#]*?#[-\w#]*)\s*\]/,g=/\[(\s*[-\w]+\s*)([~|^$*]?=)\s*([-\w#]*?#[-\w#]*)\s*\]/g,v=/^[\s\uFEFF\xA0]+|([^\s\uFEFF\xA0])[\s\uFEFF\xA0]+$/g;for(d in i(s.fn,"init",function(e){var t=Array.prototype.slice.call(arguments);return s.migrateIsPatchEnabled("selector-empty-id")&amp;&amp;"string"==typeof e&amp;&amp;"#"===e&amp;&amp;(u("selector-empty-id","jQuery( '#' ) is not a valid selector"),t[0]=[]),m.apply(this,t)},"selector-empty-id"),s.fn.init.prototype=s.fn,i(s,"find",function(t){var r=Array.prototype.slice.call(arguments);if("string"==typeof t&amp;&amp;h.test(t))try{n.document.querySelector(t)}catch(e){t=t.replace(g,function(e,t,r,n){return"["+t+r+'"'+n+'"]'});try{n.document.querySelector(t),u("selector-hash","Attribute selector with '#' must be quoted: "+r[0]),r[0]=t}catch(e){u("selector-hash","Attribute selector with '#' was not fixed: "+r[0])}}return y.apply(this,r)},"selector-hash"),y)Object.prototype.hasOwnProperty.call(y,d)&amp;&amp;(s.find[d]=y[d]);c(s.fn,"size",function(){return this.length},"size","jQuery.fn.size() is deprecated and removed; use the .length property"),c(s,"parseJSON",function(){return JSON.parse.apply(null,arguments)},"parseJSON","jQuery.parseJSON is deprecated; use JSON.parse"),c(s,"holdReady",s.holdReady,"holdReady","jQuery.holdReady is deprecated"),c(s,"unique",s.uniqueSort,"unique","jQuery.unique is deprecated; use jQuery.uniqueSort"),r(s.expr,"filters",s.expr.pseudos,"expr-pre-pseudos","jQuery.expr.filters is deprecated; use jQuery.expr.pseudos"),r(s.expr,":",s.expr.pseudos,"expr-pre-pseudos","jQuery.expr[':'] is deprecated; use jQuery.expr.pseudos"),e("3.1.1")&amp;&amp;c(s,"trim",function(e){return null==e?"":(e+"").replace(v,"$1")},"trim","jQuery.trim is deprecated; use String.prototype.trim"),e("3.2.0")&amp;&amp;(c(s,"nodeName",function(e,t){return e.nodeName&amp;&amp;e.nodeName.toLowerCase()===t.toLowerCase()},"nodeName","jQuery.nodeName is deprecated"),c(s,"isArray",Array.isArray,"isArray","jQuery.isArray is deprecated; use Array.isArray")),e("3.3.0")&amp;&amp;(c(s,"isNumeric",function(e){var t=typeof e;return("number"==t||"string"==t)&amp;&amp;!isNaN(e-parseFloat(e))},"isNumeric","jQuery.isNumeric() is deprecated"),s.each("Boolean Number String Function Array Date RegExp Object Error Symbol".split(" "),function(e,t){f["[object "+t+"]"]=t.toLowerCase()}),c(s,"type",function(e){return null==e?e+"":"object"==typeof e||"function"==typeof e?f[Object.prototype.toString.call(e)]||"object":typeof e},"type","jQuery.type is deprecated"),c(s,"isFunction",function(e){return"function"==typeof e},"isFunction","jQuery.isFunction() is deprecated"),c(s,"isWindow",function(e){return null!=e&amp;&amp;e===e.window},"isWindow","jQuery.isWindow() is deprecated")),s.ajax&amp;&amp;(l=s.ajax,p=/(=)\?(?=&amp;|$)|\?\?/,i(s,"ajax",function(){var e=l.apply(this,arguments);return e.promise&amp;&amp;(c(e,"success",e.done,"jqXHR-methods","jQXHR.success is deprecated and removed"),c(e,"error",e.fail,"jqXHR-methods","jQXHR.error is deprecated and removed"),c(e,"complete",e.always,"jqXHR-methods","jQXHR.complete is deprecated and removed")),e},"jqXHR-methods"),e("4.0.0")||s.ajaxPrefilter("+json",function(e){!1!==e.jsonp&amp;&amp;(p.test(e.url)||"string"==typeof e.data&amp;&amp;0===(e.contentType||"").indexOf("application/x-www-form-urlencoded")&amp;&amp;p.test(e.data))&amp;&amp;u("jsonp-promotion","JSON-to-JSONP auto-promotion is deprecated")}));var j=s.fn.removeAttr,b=s.fn.toggleClass,w=/\S+/g;function x(e){return e.replace(/-([a-z])/g,function(e,t){return t.toUpperCase()})}i(s.fn,"removeAttr",function(e){var r=this,n=!1;return s.each(e.match(w),function(e,t){s.expr.match.bool.test(t)&amp;&amp;r.each(function(){if(!1!==s(this).prop(t))return!(n=!0)}),n&amp;&amp;(u("removeAttr-bool","jQuery.fn.removeAttr no longer sets boolean properties: "+t),r.prop(t,!1))}),j.apply(this,arguments)},"removeAttr-bool"),i(s.fn,"toggleClass",function(t){return void 0!==t&amp;&amp;"boolean"!=typeof t?b.apply(this,arguments):(u("toggleClass-bool","jQuery.fn.toggleClass( boolean ) is deprecated"),this.each(function(){var e=this.getAttribute&amp;&amp;this.getAttribute("class")||"";e&amp;&amp;s.data(this,"__className__",e),this.setAttribute&amp;&amp;this.setAttribute("class",!e&amp;&amp;!1!==t&amp;&amp;s.data(this,"__className__")||"")}))},"toggleClass-bool");var Q,A,R=!1,C=/^[a-z]/,N=/^(?:Border(?:Top|Right|Bottom|Left)?(?:Width|)|(?:Margin|Padding)?(?:Top|Right|Bottom|Left)?|(?:Min|Max)?(?:Width|Height))$/;s.swap&amp;&amp;s.each(["height","width","reliableMarginRight"],function(e,t){var r=s.cssHooks[t]&amp;&amp;s.cssHooks[t].get;r&amp;&amp;(s.cssHooks[t].get=function(){var e;return R=!0,e=r.apply(this,arguments),R=!1,e})}),i(s,"swap",function(e,t,r,n){var o,a,i={};for(a in R||u("swap","jQuery.swap() is undocumented and deprecated"),t)i[a]=e.style[a],e.style[a]=t[a];for(a in o=r.apply(e,n||[]),t)e.style[a]=i[a];return o},"swap"),e("3.4.0")&amp;&amp;"undefined"!=typeof Proxy&amp;&amp;(s.cssProps=new Proxy(s.cssProps||{},{set:function(){return u("cssProps","jQuery.cssProps is deprecated"),Reflect.set.apply(this,arguments)}})),e("4.0.0")?(A={animationIterationCount:!0,columnCount:!0,fillOpacity:!0,flexGrow:!0,flexShrink:!0,fontWeight:!0,gridArea:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnStart:!0,gridRow:!0,gridRowEnd:!0,gridRowStart:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0},"undefined"!=typeof Proxy?s.cssNumber=new Proxy(A,{get:function(){return u("css-number","jQuery.cssNumber is deprecated"),Reflect.get.apply(this,arguments)},set:function(){return u("css-number","jQuery.cssNumber is deprecated"),Reflect.set.apply(this,arguments)}}):s.cssNumber=A):A=s.cssNumber,Q=s.fn.css,i(s.fn,"css",function(e,t){var r,n,o=this;return e&amp;&amp;"object"==typeof e&amp;&amp;!Array.isArray(e)?(s.each(e,function(e,t){s.fn.css.call(o,e,t)}),this):("number"==typeof t&amp;&amp;(r=x(e),n=r,C.test(n)&amp;&amp;N.test(n[0].toUpperCase()+n.slice(1))||A[r]||u("css-number",'Number-typed values are deprecated for jQuery.fn.css( "'+e+'", value )')),Q.apply(this,arguments))},"css-number");var S,P,k,H,E=s.data;i(s,"data",function(e,t,r){var n,o,a;if(t&amp;&amp;"object"==typeof t&amp;&amp;2===arguments.length){for(a in n=s.hasData(e)&amp;&amp;E.call(this,e),o={},t)a!==x(a)?(u("data-camelCase","jQuery.data() always sets/gets camelCased names: "+a),n[a]=t[a]):o[a]=t[a];return E.call(this,e,o),t}return t&amp;&amp;"string"==typeof t&amp;&amp;t!==x(t)&amp;&amp;(n=s.hasData(e)&amp;&amp;E.call(this,e))&amp;&amp;t in n?(u("data-camelCase","jQuery.data() always sets/gets camelCased names: "+t),2&lt;arguments.length&amp;&amp;(n[t]=r),n[t]):E.apply(this,arguments)},"data-camelCase"),s.fx&amp;&amp;(k=s.Tween.prototype.run,H=function(e){return e},i(s.Tween.prototype,"run",function(){1&lt;s.easing[this.easing].length&amp;&amp;(u("easing-one-arg","'jQuery.easing."+this.easing.toString()+"' should use only one argument"),s.easing[this.easing]=H),k.apply(this,arguments)},"easing-one-arg"),S=s.fx.interval,P="jQuery.fx.interval is deprecated",n.requestAnimationFrame&amp;&amp;Object.defineProperty(s.fx,"interval",{configurable:!0,enumerable:!0,get:function(){return n.document.hidden||u("fx-interval",P),s.migrateIsPatchEnabled("fx-interval")&amp;&amp;void 0===S?13:S},set:function(e){u("fx-interval",P),S=e}}));var M=s.fn.load,q=s.event.add,O=s.event.fix;s.event.props=[],s.event.fixHooks={},r(s.event.props,"concat",s.event.props.concat,"event-old-patch","jQuery.event.props.concat() is deprecated and removed"),i(s.event,"fix",function(e){var t,r=e.type,n=this.fixHooks[r],o=s.event.props;if(o.length){u("event-old-patch","jQuery.event.props are deprecated and removed: "+o.join());while(o.length)s.event.addProp(o.pop())}if(n&amp;&amp;!n._migrated_&amp;&amp;(n._migrated_=!0,u("event-old-patch","jQuery.event.fixHooks are deprecated and removed: "+r),(o=n.props)&amp;&amp;o.length))while(o.length)s.event.addProp(o.pop());return t=O.call(this,e),n&amp;&amp;n.filter?n.filter(t,e):t},"event-old-patch"),i(s.event,"add",function(e,t){return e===n&amp;&amp;"load"===t&amp;&amp;"complete"===n.document.readyState&amp;&amp;u("load-after-event","jQuery(window).on('load'...) called after load event occurred"),q.apply(this,arguments)},"load-after-event"),s.each(["load","unload","error"],function(e,t){i(s.fn,t,function(){var e=Array.prototype.slice.call(arguments,0);return"load"===t&amp;&amp;"string"==typeof e[0]?M.apply(this,e):(u("shorthand-removed-v3","jQuery.fn."+t+"() is deprecated"),e.splice(0,0,t),arguments.length?this.on.apply(this,e):(this.triggerHandler.apply(this,e),this))},"shorthand-removed-v3")}),s.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(e,r){c(s.fn,r,function(e,t){return 0&lt;arguments.length?this.on(r,null,e,t):this.trigger(r)},"shorthand-deprecated-v3","jQuery.fn."+r+"() event shorthand is deprecated")}),s(function(){s(n.document).triggerHandler("ready")}),s.event.special.ready={setup:function(){this===n.document&amp;&amp;u("ready-event","'ready' event is deprecated")}},c(s.fn,"bind",function(e,t,r){return this.on(e,null,t,r)},"pre-on-methods","jQuery.fn.bind() is deprecated"),c(s.fn,"unbind",function(e,t){return this.off(e,null,t)},"pre-on-methods","jQuery.fn.unbind() is deprecated"),c(s.fn,"delegate",function(e,t,r,n){return this.on(t,e,r,n)},"pre-on-methods","jQuery.fn.delegate() is deprecated"),c(s.fn,"undelegate",function(e,t,r){return 1===arguments.length?this.off(e,"**"):this.off(t,e||"**",r)},"pre-on-methods","jQuery.fn.undelegate() is deprecated"),c(s.fn,"hover",function(e,t){return this.on("mouseenter",e).on("mouseleave",t||e)},"pre-on-methods","jQuery.fn.hover() is deprecated");function T(e){var t=n.document.implementation.createHTMLDocument("");return t.body.innerHTML=e,t.body&amp;&amp;t.body.innerHTML}var F=/&lt;(?!area|br|col|embed|hr|img|input|link|meta|param)(([a-z][^\/\0&gt;\x20\t\r\n\f]*)[^&gt;]*)\/&gt;/gi;s.UNSAFE_restoreLegacyHtmlPrefilter=function(){s.migrateEnablePatches("self-closed-tags")},i(s,"htmlPrefilter",function(e){var t,r;return(r=(t=e).replace(F,"&lt;$1&gt;&lt;/$2&gt;"))!==t&amp;&amp;T(t)!==T(r)&amp;&amp;u("self-closed-tags","HTML tags must be properly nested and closed: "+t),e.replace(F,"&lt;$1&gt;&lt;/$2&gt;")},"self-closed-tags"),s.migrateDisablePatches("self-closed-tags");var D,W,_,I=s.fn.offset;return i(s.fn,"offset",function(){var e=this[0];return!e||e.nodeType&amp;&amp;e.getBoundingClientRect?I.apply(this,arguments):(u("offset-valid-elem","jQuery.fn.offset() requires a valid DOM element"),arguments.length?this:void 0)},"offset-valid-elem"),s.ajax&amp;&amp;(D=s.param,i(s,"param",function(e,t){var r=s.ajaxSettings&amp;&amp;s.ajaxSettings.traditional;return void 0===t&amp;&amp;r&amp;&amp;(u("param-ajax-traditional","jQuery.param() no longer uses jQuery.ajaxSettings.traditional"),t=r),D.call(this,e,t)},"param-ajax-traditional")),c(s.fn,"andSelf",s.fn.addBack,"andSelf","jQuery.fn.andSelf() is deprecated and removed, use jQuery.fn.addBack()"),s.Deferred&amp;&amp;(W=s.Deferred,_=[["resolve","done",s.Callbacks("once memory"),s.Callbacks("once memory"),"resolved"],["reject","fail",s.Callbacks("once memory"),s.Callbacks("once memory"),"rejected"],["notify","progress",s.Callbacks("memory"),s.Callbacks("memory")]],i(s,"Deferred",function(e){var a=W(),i=a.promise();function t(){var o=arguments;return s.Deferred(function(n){s.each(_,function(e,t){var r="function"==typeof o[e]&amp;&amp;o[e];a[t[1]](function(){var e=r&amp;&amp;r.apply(this,arguments);e&amp;&amp;"function"==typeof e.promise?e.promise().done(n.resolve).fail(n.reject).progress(n.notify):n[t[0]+"With"](this===i?n.promise():this,r?[e]:arguments)})}),o=null}).promise()}return c(a,"pipe",t,"deferred-pipe","deferred.pipe() is deprecated"),c(i,"pipe",t,"deferred-pipe","deferred.pipe() is deprecated"),e&amp;&amp;e.call(a,a),a},"deferred-pipe"),s.Deferred.exceptionHook=W.exceptionHook),s});/*!
 * jQuery blockUI plugin
 * Version 2.70.0-2014.11.23
 * Requires jQuery v1.7 or later
 *
 * Examples at: http://malsup.com/jquery/block/
 * Copyright (c) 2007-2013 M. Alsup
 * Dual licensed under the MIT and GPL licenses:
 * http://www.opensource.org/licenses/mit-license.php
 * http://www.gnu.org/licenses/gpl.html
 *
 * Thanks to Amir-Hossein Sobhi for some excellent contributions!
 */
!function(){"use strict";function e(e){e.fn._fadeIn=e.fn.fadeIn;var t=e.noop||function(){},o=/MSIE/.test(navigator.userAgent),n=/MSIE 6.0/.test(navigator.userAgent)&amp;&amp;!/MSIE 8.0/.test(navigator.userAgent),i=(document.documentMode,"function"==typeof document.createElement("div").style.setExpression&amp;&amp;document.createElement("div").style.setExpression);e.blockUI=function(e){d(window,e)},e.unblockUI=function(e){a(window,e)},e.growlUI=function(t,o,n,i){var s=e('&lt;div class="growlUI"&gt;&lt;/div&gt;');t&amp;&amp;s.append("&lt;h1&gt;"+t+"&lt;/h1&gt;"),o&amp;&amp;s.append("&lt;h2&gt;"+o+"&lt;/h2&gt;"),n===undefined&amp;&amp;(n=3e3);var l=function(t){t=t||{},e.blockUI({message:s,fadeIn:"undefined"!=typeof t.fadeIn?t.fadeIn:700,fadeOut:"undefined"!=typeof t.fadeOut?t.fadeOut:1e3,timeout:"undefined"!=typeof t.timeout?t.timeout:n,centerY:!1,showOverlay:!1,onUnblock:i,css:e.blockUI.defaults.growlCSS})};l();s.css("opacity");s.on("mouseover",function(){l({fadeIn:0,timeout:3e4});var t=e(".blockMsg");t.stop(),t.fadeTo(300,1)}).on("mouseout",function(){e(".blockMsg").fadeOut(1e3)})},e.fn.block=function(t){if(this[0]===window)return e.blockUI(t),this;var o=e.extend({},e.blockUI.defaults,t||{});return this.each(function(){var t=e(this);o.ignoreIfBlocked&amp;&amp;t.data("blockUI.isBlocked")||t.unblock({fadeOut:0})}),this.each(function(){"static"==e.css(this,"position")&amp;&amp;(this.style.position="relative",e(this).data("blockUI.static",!0)),this.style.zoom=1,d(this,t)})},e.fn.unblock=function(t){return this[0]===window?(e.unblockUI(t),this):this.each(function(){a(this,t)})},e.blockUI.version=2.7,e.blockUI.defaults={message:"&lt;h1&gt;Please wait...&lt;/h1&gt;",title:null,draggable:!0,theme:!1,css:{padding:0,margin:0,width:"30%",top:"40%",left:"35%",textAlign:"center",color:"#000",border:"3px solid #aaa",backgroundColor:"#fff",cursor:"wait"},themedCSS:{width:"30%",top:"40%",left:"35%"},overlayCSS:{backgroundColor:"#000",opacity:.6,cursor:"wait"},cursorReset:"default",growlCSS:{width:"350px",top:"10px",left:"",right:"10px",border:"none",padding:"5px",opacity:.6,cursor:"default",color:"#fff",backgroundColor:"#000","-webkit-border-radius":"10px","-moz-border-radius":"10px","border-radius":"10px"},iframeSrc:/^https/i.test(window.location.href||"")?"javascript:false":"about:blank",forceIframe:!1,baseZ:1e3,centerX:!0,centerY:!0,allowBodyStretch:!0,bindEvents:!0,constrainTabKey:!0,fadeIn:200,fadeOut:400,timeout:0,showOverlay:!0,focusInput:!0,focusableElements:":input:enabled:visible",onBlock:null,onUnblock:null,onOverlayClick:null,quirksmodeOffsetHack:4,blockMsgClass:"blockMsg",ignoreIfBlocked:!1};var s=null,l=[];function d(d,c){var u,b,h=d==window,k=c&amp;&amp;c.message!==undefined?c.message:undefined;if(!(c=e.extend({},e.blockUI.defaults,c||{})).ignoreIfBlocked||!e(d).data("blockUI.isBlocked")){if(c.overlayCSS=e.extend({},e.blockUI.defaults.overlayCSS,c.overlayCSS||{}),u=e.extend({},e.blockUI.defaults.css,c.css||{}),c.onOverlayClick&amp;&amp;(c.overlayCSS.cursor="pointer"),b=e.extend({},e.blockUI.defaults.themedCSS,c.themedCSS||{}),k=k===undefined?c.message:k,h&amp;&amp;s&amp;&amp;a(window,{fadeOut:0}),k&amp;&amp;"string"!=typeof k&amp;&amp;(k.parentNode||k.jquery)){var y=k.jquery?k[0]:k,m={};e(d).data("blockUI.history",m),m.el=y,m.parent=y.parentNode,m.display=y.style.display,m.position=y.style.position,m.parent&amp;&amp;m.parent.removeChild(y)}e(d).data("blockUI.onUnblock",c.onUnblock);var g,v,I,w,U=c.baseZ;g=o||c.forceIframe?e('&lt;iframe class="blockUI" style="z-index:'+U+++';display:none;border:none;margin:0;padding:0;position:absolute;width:100%;height:100%;top:0;left:0" src="'+c.iframeSrc+'"&gt;&lt;/iframe&gt;'):e('&lt;div class="blockUI" style="display:none"&gt;&lt;/div&gt;'),v=c.theme?e('&lt;div class="blockUI blockOverlay ui-widget-overlay" style="z-index:'+U+++';display:none"&gt;&lt;/div&gt;'):e('&lt;div class="blockUI blockOverlay" style="z-index:'+U+++';display:none;border:none;margin:0;padding:0;width:100%;height:100%;top:0;left:0"&gt;&lt;/div&gt;'),c.theme&amp;&amp;h?(w='&lt;div class="blockUI '+c.blockMsgClass+' blockPage ui-dialog ui-widget ui-corner-all" style="z-index:'+(U+10)+';display:none;position:fixed"&gt;',c.title&amp;&amp;(w+='&lt;div class="ui-widget-header ui-dialog-titlebar ui-corner-all blockTitle"&gt;'+(c.title||"&amp;nbsp;")+"&lt;/div&gt;"),w+='&lt;div class="ui-widget-content ui-dialog-content"&gt;&lt;/div&gt;',w+="&lt;/div&gt;"):c.theme?(w='&lt;div class="blockUI '+c.blockMsgClass+' blockElement ui-dialog ui-widget ui-corner-all" style="z-index:'+(U+10)+';display:none;position:absolute"&gt;',c.title&amp;&amp;(w+='&lt;div class="ui-widget-header ui-dialog-titlebar ui-corner-all blockTitle"&gt;'+(c.title||"&amp;nbsp;")+"&lt;/div&gt;"),w+='&lt;div class="ui-widget-content ui-dialog-content"&gt;&lt;/div&gt;',w+="&lt;/div&gt;"):w=h?'&lt;div class="blockUI '+c.blockMsgClass+' blockPage" style="z-index:'+(U+10)+';display:none;position:fixed"&gt;&lt;/div&gt;':'&lt;div class="blockUI '+c.blockMsgClass+' blockElement" style="z-index:'+(U+10)+';display:none;position:absolute"&gt;&lt;/div&gt;',I=e(w),k&amp;&amp;(c.theme?(I.css(b),I.addClass("ui-widget-content")):I.css(u)),c.theme||v.css(c.overlayCSS),v.css("position",h?"fixed":"absolute"),(o||c.forceIframe)&amp;&amp;g.css("opacity",0);var x=[g,v,I],C=e(h?"body":d);e.each(x,function(){this.appendTo(C)}),c.theme&amp;&amp;c.draggable&amp;&amp;e.fn.draggable&amp;&amp;I.draggable({handle:".ui-dialog-titlebar",cancel:"li"});var S=i&amp;&amp;(!e.support.boxModel||e("object,embed",h?null:d).length&gt;0);if(n||S){if(h&amp;&amp;c.allowBodyStretch&amp;&amp;e.support.boxModel&amp;&amp;e("html,body").css("height","100%"),(n||!e.support.boxModel)&amp;&amp;!h)var E=p(d,"borderTopWidth"),O=p(d,"borderLeftWidth"),T=E?"(0 - "+E+")":0,M=O?"(0 - "+O+")":0;e.each(x,function(e,t){var o=t[0].style;if(o.position="absolute",e&lt;2)h?o.setExpression("height","Math.max(document.body.scrollHeight, document.body.offsetHeight) - (jQuery.support.boxModel?0:"+c.quirksmodeOffsetHack+') + "px"'):o.setExpression("height",'this.parentNode.offsetHeight + "px"'),h?o.setExpression("width",'jQuery.support.boxModel &amp;&amp; document.documentElement.clientWidth || document.body.clientWidth + "px"'):o.setExpression("width",'this.parentNode.offsetWidth + "px"'),M&amp;&amp;o.setExpression("left",M),T&amp;&amp;o.setExpression("top",T);else if(c.centerY)h&amp;&amp;o.setExpression("top",'(document.documentElement.clientHeight || document.body.clientHeight) / 2 - (this.offsetHeight / 2) + (blah = document.documentElement.scrollTop ? document.documentElement.scrollTop : document.body.scrollTop) + "px"'),o.marginTop=0;else if(!c.centerY&amp;&amp;h){var n="((document.documentElement.scrollTop ? document.documentElement.scrollTop : document.body.scrollTop) + "+(c.css&amp;&amp;c.css.top?parseInt(c.css.top,10):0)+') + "px"';o.setExpression("top",n)}})}if(k&amp;&amp;(c.theme?I.find(".ui-widget-content").append(k):I.append(k),(k.jquery||k.nodeType)&amp;&amp;e(k).show()),(o||c.forceIframe)&amp;&amp;c.showOverlay&amp;&amp;g.show(),c.fadeIn){var B=c.onBlock?c.onBlock:t,j=c.showOverlay&amp;&amp;!k?B:t,H=k?B:t;c.showOverlay&amp;&amp;v._fadeIn(c.fadeIn,j),k&amp;&amp;I._fadeIn(c.fadeIn,H)}else c.showOverlay&amp;&amp;v.show(),k&amp;&amp;I.show(),c.onBlock&amp;&amp;c.onBlock.bind(I)();if(r(1,d,c),h?(s=I[0],l=e(c.focusableElements,s),c.focusInput&amp;&amp;setTimeout(f,20)):function(e,t,o){var n=e.parentNode,i=e.style,s=(n.offsetWidth-e.offsetWidth)/2-p(n,"borderLeftWidth"),l=(n.offsetHeight-e.offsetHeight)/2-p(n,"borderTopWidth");t&amp;&amp;(i.left=s&gt;0?s+"px":"0");o&amp;&amp;(i.top=l&gt;0?l+"px":"0")}(I[0],c.centerX,c.centerY),c.timeout){var z=setTimeout(function(){h?e.unblockUI(c):e(d).unblock(c)},c.timeout);e(d).data("blockUI.timeout",z)}}}function a(t,o){var n,i,d=t==window,a=e(t),u=a.data("blockUI.history"),f=a.data("blockUI.timeout");f&amp;&amp;(clearTimeout(f),a.removeData("blockUI.timeout")),o=e.extend({},e.blockUI.defaults,o||{}),r(0,t,o),null===o.onUnblock&amp;&amp;(o.onUnblock=a.data("blockUI.onUnblock"),a.removeData("blockUI.onUnblock")),i=d?e(document.body).children().filter(".blockUI").add("body &gt; .blockUI"):a.find("&gt;.blockUI"),o.cursorReset&amp;&amp;(i.length&gt;1&amp;&amp;(i[1].style.cursor=o.cursorReset),i.length&gt;2&amp;&amp;(i[2].style.cursor=o.cursorReset)),d&amp;&amp;(s=l=null),o.fadeOut?(n=i.length,i.stop().fadeOut(o.fadeOut,function(){0==--n&amp;&amp;c(i,u,o,t)})):c(i,u,o,t)}function c(t,o,n,i){var s=e(i);if(!s.data("blockUI.isBlocked")){t.each(function(e,t){this.parentNode&amp;&amp;this.parentNode.removeChild(this)}),o&amp;&amp;o.el&amp;&amp;(o.el.style.display=o.display,o.el.style.position=o.position,o.el.style.cursor="default",o.parent&amp;&amp;o.parent.appendChild(o.el),s.removeData("blockUI.history")),s.data("blockUI.static")&amp;&amp;s.css("position","static"),"function"==typeof n.onUnblock&amp;&amp;n.onUnblock(i,n);var l=e(document.body),d=l.width(),a=l[0].style.width;l.width(d-1).width(d),l[0].style.width=a}}function r(t,o,n){var i=o==window,l=e(o);if((t||(!i||s)&amp;&amp;(i||l.data("blockUI.isBlocked")))&amp;&amp;(l.data("blockUI.isBlocked",t),i&amp;&amp;n.bindEvents&amp;&amp;(!t||n.showOverlay))){var d="mousedown mouseup keydown keypress keyup touchstart touchend touchmove";t?e(document).on(d,n,u):e(document).off(d,u)}}function u(t){if("keydown"===t.type&amp;&amp;t.keyCode&amp;&amp;9==t.keyCode&amp;&amp;s&amp;&amp;t.data.constrainTabKey){var o=l,n=!t.shiftKey&amp;&amp;t.target===o[o.length-1],i=t.shiftKey&amp;&amp;t.target===o[0];if(n||i)return setTimeout(function(){f(i)},10),!1}var d=t.data,a=e(t.target);return a.hasClass("blockOverlay")&amp;&amp;d.onOverlayClick&amp;&amp;d.onOverlayClick(t),a.parents("div."+d.blockMsgClass).length&gt;0||0===a.parents().children().filter("div.blockUI").length}function f(e){if(l){var t=l[!0===e?l.length-1:0];t&amp;&amp;t.trigger("focus")}}function p(t,o){return parseInt(e.css(t,o),10)||0}}"function"==typeof define&amp;&amp;define.amd&amp;&amp;define.amd.jQuery?define(["jquery"],e):e(jQuery)}();jQuery(function(t){if("undefined"==typeof wc_add_to_cart_params)return!1;var a=function(){this.requests=[],this.addRequest=this.addRequest.bind(this),this.run=this.run.bind(this),this.$liveRegion=this.createLiveRegion(),t(document.body).on("click",".add_to_cart_button:not(.wc-interactive)",{addToCartHandler:this},this.onAddToCart).on("click",".remove_from_cart_button",{addToCartHandler:this},this.onRemoveFromCart).on("added_to_cart",{addToCartHandler:this},this.onAddedToCart).on("removed_from_cart",{addToCartHandler:this},this.onRemovedFromCart).on("ajax_request_not_sent.adding_to_cart",this.updateButton)};a.prototype.addRequest=function(t){this.requests.push(t),1===this.requests.length&amp;&amp;this.run()},a.prototype.run=function(){var a=this,e=a.requests[0].complete;a.requests[0].complete=function(){"function"==typeof e&amp;&amp;e(),a.requests.shift(),a.requests.length&gt;0&amp;&amp;a.run()},t.ajax(this.requests[0])},a.prototype.onAddToCart=function(a){var e=t(this);if(e.is(".ajax_add_to_cart")){if(!e.attr("data-product_id"))return!0;if(a.data.addToCartHandler.$liveRegion.text("").removeAttr("aria-relevant"),a.preventDefault(),e.removeClass("added"),e.addClass("loading"),!1===t(document.body).triggerHandler("should_send_ajax_request.adding_to_cart",[e]))return t(document.body).trigger("ajax_request_not_sent.adding_to_cart",[!1,!1,e]),!0;var r={};t.each(e.data(),function(t,a){r[t]=a}),t.each(e[0].dataset,function(t,a){r[t]=a}),t(document.body).trigger("adding_to_cart",[e,r]),a.data.addToCartHandler.addRequest({type:"POST",url:wc_add_to_cart_params.wc_ajax_url.toString().replace("%%endpoint%%","add_to_cart"),data:r,success:function(a){a&amp;&amp;(a.error&amp;&amp;a.product_url?window.location=a.product_url:"yes"!==wc_add_to_cart_params.cart_redirect_after_add?t(document.body).trigger("added_to_cart",[a.fragments,a.cart_hash,e]):window.location=wc_add_to_cart_params.cart_url)},dataType:"json"})}},a.prototype.onRemoveFromCart=function(a){var e=t(this),r=e.closest(".woocommerce-mini-cart-item");a.data.addToCartHandler.$liveRegion.text("").removeAttr("aria-relevant"),a.preventDefault(),r.block({message:null,overlayCSS:{opacity:.6}}),a.data.addToCartHandler.addRequest({type:"POST",url:wc_add_to_cart_params.wc_ajax_url.toString().replace("%%endpoint%%","remove_from_cart"),data:{cart_item_key:e.data("cart_item_key")},success:function(a){a&amp;&amp;a.fragments?t(document.body).trigger("removed_from_cart",[a.fragments,a.cart_hash,e]):window.location=e.attr("href")},error:function(){window.location=e.attr("href")},dataType:"json"})},a.prototype.updateButton=function(a,e,r,d){if(d=void 0!==d&amp;&amp;d){if(d.removeClass("loading"),e&amp;&amp;d.addClass("added"),e&amp;&amp;!wc_add_to_cart_params.is_cart&amp;&amp;0===d.parent().find(".added_to_cart").length){var o=document.createElement("a");o.href=wc_add_to_cart_params.cart_url,o.className="added_to_cart wc-forward",o.title=wc_add_to_cart_params.i18n_view_cart,o.textContent=wc_add_to_cart_params.i18n_view_cart,d.after(o)}t(document.body).trigger("wc_cart_button_updated",[d])}},a.prototype.updateFragments=function(a,e){e&amp;&amp;(t.each(e,function(a){t(a).addClass("updating").fadeTo("400","0.6").block({message:null,overlayCSS:{opacity:.6}})}),t.each(e,function(a,e){t(a).replaceWith(e),t(a).stop(!0).css("opacity","1").unblock()}),t(document.body).trigger("wc_fragments_loaded"))},a.prototype.alertCartUpdated=function(t,a,e,r){if(r=void 0!==r&amp;&amp;r){var d=r.data("success_message");if(!d)return;t.data.addToCartHandler.$liveRegion.delay(1e3).text(d).attr("aria-relevant","all")}},a.prototype.createLiveRegion=function(){var a=t(".widget_shopping_cart_live_region");return a.length?a:t('&lt;div class="widget_shopping_cart_live_region screen-reader-text" role="status"&gt;&lt;/div&gt;').appendTo("body")},a.prototype.onAddedToCart=function(t,a,e,r){t.data.addToCartHandler.updateButton(t,a,e,r),t.data.addToCartHandler.updateFragments(t,a),t.data.addToCartHandler.alertCartUpdated(t,a,e,r)},a.prototype.onRemovedFromCart=function(t,a,e,r){t.data.addToCartHandler.updateFragments(t,a),t.data.addToCartHandler.alertCartUpdated(t,a,e,r)},new a});/*!
	Zoom 1.7.21
	license: MIT
	http://www.jacklmoore.com/zoom
*/
!function(o){var t={url:!1,callback:!1,target:!1,duration:120,on:"mouseover",touch:!0,onZoomIn:!1,onZoomOut:!1,magnify:1};o.zoom=function(t,e,n,i){var u,a,c,r,l,m,f,s=o(t),h=s.css("position"),d=o(e);return t.style.position=/(absolute|fixed)/.test(h)?h:"relative",t.style.overflow="hidden",n.style.width=n.style.height="",o(n).addClass("zoomImg").css({position:"absolute",top:0,left:0,opacity:0,width:n.width*i,height:n.height*i,border:"none",maxWidth:"none",maxHeight:"none"}).appendTo(t),{init:function(){a=s.outerWidth(),u=s.outerHeight(),e===t?(r=a,c=u):(r=d.outerWidth(),c=d.outerHeight()),l=(n.width-a)/r,m=(n.height-u)/c,f=d.offset()},move:function(o){var t=o.pageX-f.left,e=o.pageY-f.top;e=Math.max(Math.min(e,c),0),t=Math.max(Math.min(t,r),0),n.style.left=t*-l+"px",n.style.top=e*-m+"px"}}},o.fn.zoom=function(e){return this.each(function(){var n=o.extend({},t,e||{}),i=n.target&amp;&amp;o(n.target)[0]||this,u=this,a=o(u),c=document.createElement("img"),r=o(c),l="mousemove.zoom",m=!1,f=!1;if(!n.url){var s=u.querySelector("img");if(s&amp;&amp;(n.url=s.getAttribute("data-src")||s.currentSrc||s.src,n.alt=s.getAttribute("data-alt")||s.alt),!n.url)return}a.one("zoom.destroy",function(o,t){a.off(".zoom"),i.style.position=o,i.style.overflow=t,c.onload=null,r.remove()}.bind(this,i.style.position,i.style.overflow)),c.onload=function(){var t=o.zoom(i,u,c,n.magnify);function e(e){t.init(),t.move(e),r.stop().fadeTo(o.support.opacity?n.duration:0,1,"function"==typeof n.onZoomIn&amp;&amp;n.onZoomIn.call(c))}function s(){r.stop().fadeTo(n.duration,0,"function"==typeof n.onZoomOut&amp;&amp;n.onZoomOut.call(c))}"grab"===n.on?a.on("mousedown.zoom",function(n){1===n.which&amp;&amp;(o(document).one("mouseup.zoom",function(){s(),o(document).off(l,t.move)}),e(n),o(document).on(l,t.move),n.preventDefault())}):"click"===n.on?a.on("click.zoom",function(n){return m?void 0:(m=!0,e(n),o(document).on(l,t.move),o(document).one("click.zoom",function(){s(),m=!1,o(document).off(l,t.move)}),!1)}):"toggle"===n.on?a.on("click.zoom",function(o){m?s():e(o),m=!m}):"mouseover"===n.on&amp;&amp;(t.init(),a.on("mouseenter.zoom",e).on("mouseleave.zoom",s).on(l,t.move)),n.touch&amp;&amp;a.on("touchstart.zoom",function(o){o.preventDefault(),f?(f=!1,s()):(f=!0,e(o.originalEvent.touches[0]||o.originalEvent.changedTouches[0]))}).on("touchmove.zoom",function(o){o.preventDefault(),t.move(o.originalEvent.touches[0]||o.originalEvent.changedTouches[0])}).on("touchend.zoom",function(o){o.preventDefault(),f&amp;&amp;(f=!1,s())}),"function"==typeof n.callback&amp;&amp;n.callback.call(c)},c.setAttribute("role","presentation"),c.alt=n.alt||"",c.src=n.url})},o.fn.zoom.defaults=t}(window.jQuery);!function(e){var t=!0,a={swing:"cubic-bezier(.02, .01, .47, 1)",linear:"linear",easeInQuad:"cubic-bezier(0.11, 0, 0.5, 0)",easeOutQuad:"cubic-bezier(0.5, 1, 0.89, 1)",easeInOutQuad:"cubic-bezier(0.45, 0, 0.55, 1)",easeInCubic:"cubic-bezier(0.32, 0, 0.67, 0)",easeOutCubic:"cubic-bezier(0.33, 1, 0.68, 1)",easeInOutCubic:"cubic-bezier(0.65, 0, 0.35, 1)",easeInQuart:"cubic-bezier(0.5, 0, 0.75, 0)",easeOutQuart:"cubic-bezier(0.25, 1, 0.5, 1)",easeInOutQuart:"cubic-bezier(0.76, 0, 0.24, 1)",easeInQuint:"cubic-bezier(0.64, 0, 0.78, 0)",easeOutQuint:"cubic-bezier(0.22, 1, 0.36, 1)",easeInOutQuint:"cubic-bezier(0.83, 0, 0.17, 1)",easeInSine:"cubic-bezier(0.12, 0, 0.39, 0)",easeOutSine:"cubic-bezier(0.61, 1, 0.88, 1)",easeInOutSine:"cubic-bezier(0.37, 0, 0.63, 1)",easeInExpo:"cubic-bezier(0.7, 0, 0.84, 0)",easeOutExpo:"cubic-bezier(0.16, 1, 0.3, 1)",easeInOutExpo:"cubic-bezier(0.87, 0, 0.13, 1)",easeInCirc:"cubic-bezier(0.55, 0, 1, 0.45)",easeOutCirc:"cubic-bezier(0, 0.55, 0.45, 1)",easeInOutCirc:"cubic-bezier(0.85, 0, 0.15, 1)",easeInBack:"cubic-bezier(0.36, 0, 0.66, -0.56)",easeOutBack:"cubic-bezier(0.34, 1.56, 0.64, 1)",easeInOutBack:"cubic-bezier(0.68, -0.6, 0.32, 1.6)"};a.jswing=a.swing,e.flexslider=function(i,n){var s=e(i);"undefined"==typeof n.rtl&amp;&amp;"rtl"==e("html").attr("dir")&amp;&amp;(n.rtl=!0),s.vars=e.extend({},e.flexslider.defaults,n);var r,o=s.vars.namespace,l=("ontouchstart"in window||window.DocumentTouch&amp;&amp;document instanceof DocumentTouch)&amp;&amp;s.vars.touch,c="click touchend keyup flexslider-click",u="",d=a[s.vars.easing]||"ease",v="vertical"===s.vars.direction,p=s.vars.reverse,m=s.vars.itemWidth&gt;0,f="fade"===s.vars.animation,h=""!==s.vars.asNavFor,g={};e.data(i,"flexslider",s),g={init:function(){s.animating=!1,s.currentSlide=parseInt(s.vars.startAt?s.vars.startAt:0,10),isNaN(s.currentSlide)&amp;&amp;(s.currentSlide=0),s.animatingTo=s.currentSlide,s.atEnd=0===s.currentSlide||s.currentSlide===s.last,s.containerSelector=s.vars.selector.substr(0,s.vars.selector.search(" ")),s.slides=e(s.vars.selector,s),s.container=e(s.containerSelector,s),s.count=s.slides.length,s.syncExists=e(s.vars.sync).length&gt;0,"slide"===s.vars.animation&amp;&amp;(s.vars.animation="swing"),s.prop=v?"top":s.vars.rtl?"marginRight":"marginLeft",s.args={},s.manualPause=!1,s.stopped=!1,s.started=!1,s.startTimeout=null,s.transforms=s.transitions=!s.vars.video&amp;&amp;!f&amp;&amp;s.vars.useCSS,s.transforms&amp;&amp;(s.prop="transform"),s.isFirefox=navigator.userAgent.toLowerCase().indexOf("firefox")&gt;-1,s.ensureAnimationEnd="",""!==s.vars.controlsContainer&amp;&amp;(s.controlsContainer=e(s.vars.controlsContainer).length&gt;0&amp;&amp;e(s.vars.controlsContainer)),""!==s.vars.manualControls&amp;&amp;(s.manualControls=e(s.vars.manualControls).length&gt;0&amp;&amp;e(s.vars.manualControls)),""!==s.vars.customDirectionNav&amp;&amp;(s.customDirectionNav=2===e(s.vars.customDirectionNav).length&amp;&amp;e(s.vars.customDirectionNav)),s.vars.randomize&amp;&amp;(s.slides.sort(function(){return Math.round(Math.random())-.5}),s.container.empty().append(s.slides)),s.doMath(),s.setup("init"),s.vars.controlNav&amp;&amp;g.controlNav.setup(),s.vars.directionNav&amp;&amp;g.directionNav.setup(),s.vars.keyboard&amp;&amp;(1===e(s.containerSelector).length||s.vars.multipleKeyboard)&amp;&amp;e(document).on("keyup",function(e){var t=e.keyCode;if(!s.animating&amp;&amp;(39===t||37===t)){var a=s.vars.rtl?37===t?s.getTarget("next"):39===t&amp;&amp;s.getTarget("prev"):39===t?s.getTarget("next"):37===t&amp;&amp;s.getTarget("prev");s.flexAnimate(a,s.vars.pauseOnAction)}}),s.vars.mousewheel&amp;&amp;s.on("mousewheel",function(e,t,a,i){e.preventDefault();var n=t&lt;0?s.getTarget("next"):s.getTarget("prev");s.flexAnimate(n,s.vars.pauseOnAction)}),s.vars.pausePlay&amp;&amp;g.pausePlay.setup(),s.vars.slideshow&amp;&amp;s.vars.pauseInvisible&amp;&amp;g.pauseInvisible(),s.vars.slideshow&amp;&amp;(s.vars.pauseOnHover&amp;&amp;s.on("mouseenter",function(){s.manualPlay||s.manualPause||s.pause()}).on("mouseleave",function(){s.manualPause||s.manualPlay||s.stopped||s.play()}),s.vars.pauseInvisible&amp;&amp;"visible"!==document.visibilityState||(s.vars.initDelay&gt;0?s.startTimeout=setTimeout(s.play,s.vars.initDelay):s.play())),h&amp;&amp;g.asNav.setup(),l&amp;&amp;s.vars.touch&amp;&amp;g.touch(),(!f||f&amp;&amp;s.vars.smoothHeight)&amp;&amp;e(window).on("resize orientationchange focus",g.resize),s.find("img").attr("draggable","false"),setTimeout(function(){s.vars.start(s)},200)},asNav:{setup:function(){s.asNav=!0,s.animatingTo=Math.floor(s.currentSlide/s.move),s.currentItem=s.currentSlide,s.slides.removeClass(o+"active-slide").eq(s.currentItem).addClass(o+"active-slide"),s.slides.on(c,function(t){t.preventDefault();var a=e(this),i=a.index();(s.vars.rtl?-1*(a.offset().right-e(s).scrollLeft()):a.offset().left-e(s).scrollLeft())&lt;=0&amp;&amp;a.hasClass(o+"active-slide")?s.flexAnimate(s.getTarget("prev"),!0):e(s.vars.asNavFor).data("flexslider").animating||a.hasClass(o+"active-slide")||(s.direction=s.currentItem&lt;i?"next":"prev",s.flexAnimate(i,s.vars.pauseOnAction,!1,!0,!0))})}},controlNav:{setup:function(){s.manualControls?g.controlNav.setupManual():g.controlNav.setupPaging()},setupPaging:function(){var t,a,i="thumbnails"===s.vars.controlNav?"control-thumbs":"control-paging",n=1;if(s.controlNavScaffold=e('&lt;ol class="'+o+"control-nav "+o+i+'"&gt;&lt;/ol&gt;'),s.pagingCount&gt;1)for(var r=0;r&lt;s.pagingCount;r++){if(a=s.slides.eq(r),undefined===a.attr("data-thumb-alt")&amp;&amp;a.attr("data-thumb-alt",""),t=e("&lt;a&gt;&lt;/a&gt;").attr("href","#").text(n),"thumbnails"===s.vars.controlNav&amp;&amp;(t=e("&lt;img/&gt;",{onload:"this.width = this.naturalWidth; this.height = this.naturalHeight",src:a.attr("data-thumb"),srcset:a.attr("data-thumb-srcset"),sizes:a.attr("data-thumb-sizes"),alt:a.attr("alt")})),""!==a.attr("data-thumb-alt")&amp;&amp;t.attr("alt",a.attr("data-thumb-alt")),"thumbnails"===s.vars.controlNav&amp;&amp;!0===s.vars.thumbCaptions){var l=a.attr("data-thumbcaption");if(""!==l&amp;&amp;undefined!==l){var d=e("&lt;span&gt;&lt;/span&gt;").addClass(o+"caption").text(l);t.append(d)}}var v=e("&lt;li&gt;");t.appendTo(v),v.append("&lt;/li&gt;"),s.controlNavScaffold.append(v),n++}s.controlsContainer?e(s.controlsContainer).append(s.controlNavScaffold):s.append(s.controlNavScaffold),g.controlNav.set(),g.controlNav.active(),s.controlNavScaffold.on(c,"a, img",function(t){if(t.preventDefault(),""===u||u===t.type||"flexslider-click"===t.type){var a=e(this),i=s.controlNav.index(a);a.hasClass(o+"active")||(s.direction=i&gt;s.currentSlide?"next":"prev",s.flexAnimate(i,s.vars.pauseOnAction))}""===u&amp;&amp;"flexslider-click"!==t.type&amp;&amp;(u=t.type),g.setToClearWatchedEvent()})},setupManual:function(){s.controlNav=s.manualControls,g.controlNav.active(),s.controlNav.on(c,function(t){if(t.preventDefault(),""===u||u===t.type||"flexslider-click"===t.type){var a=e(this),i=s.controlNav.index(a);a.hasClass(o+"active")||(i&gt;s.currentSlide?s.direction="next":s.direction="prev",s.flexAnimate(i,s.vars.pauseOnAction))}""===u&amp;&amp;"flexslider-click"!==t.type&amp;&amp;(u=t.type),g.setToClearWatchedEvent()})},set:function(){var t="thumbnails"===s.vars.controlNav?"img":"a";s.controlNav=e("."+o+"control-nav li "+t,s.controlsContainer?s.controlsContainer:s)},active:function(){s.controlNav.removeClass(o+"active").eq(s.animatingTo).addClass(o+"active")},update:function(t,a){s.pagingCount&gt;1&amp;&amp;"add"===t?s.controlNavScaffold.append(e('&lt;li&gt;&lt;a href="#"&gt;'+s.count+"&lt;/a&gt;&lt;/li&gt;")):1===s.pagingCount?s.controlNavScaffold.find("li").remove():s.controlNav.eq(a).closest("li").remove(),g.controlNav.set(),s.pagingCount&gt;1&amp;&amp;s.pagingCount!==s.controlNav.length?s.update(a,t):g.controlNav.active()}},directionNav:{setup:function(){var t=e('&lt;ul class="'+o+'direction-nav"&gt;&lt;li class="'+o+'nav-prev"&gt;&lt;a class="'+o+'prev" href="#"&gt;'+s.vars.prevText+'&lt;/a&gt;&lt;/li&gt;&lt;li class="'+o+'nav-next"&gt;&lt;a class="'+o+'next" href="#"&gt;'+s.vars.nextText+"&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;");s.customDirectionNav?s.directionNav=s.customDirectionNav:s.controlsContainer?(e(s.controlsContainer).append(t),s.directionNav=e("."+o+"direction-nav li a",s.controlsContainer)):(s.append(t),s.directionNav=e("."+o+"direction-nav li a",s)),g.directionNav.update(),s.directionNav.on(c,function(t){var a;t.preventDefault(),""!==u&amp;&amp;u!==t.type&amp;&amp;"flexslider-click"!==t.type||(a=e(this).hasClass(o+"next")?s.getTarget("next"):s.getTarget("prev"),s.flexAnimate(a,s.vars.pauseOnAction)),""===u&amp;&amp;"flexslider-click"!==t.type&amp;&amp;(u=t.type),g.setToClearWatchedEvent()})},update:function(){var e=o+"disabled";1===s.pagingCount?s.directionNav.addClass(e).attr("tabindex","-1"):s.vars.animationLoop?s.directionNav.removeClass(e).prop("tabindex","-1"):0===s.animatingTo?s.directionNav.removeClass(e).filter("."+o+"prev").addClass(e).attr("tabindex","-1"):s.animatingTo===s.last?s.directionNav.removeClass(e).filter("."+o+"next").addClass(e).attr("tabindex","-1"):s.directionNav.removeClass(e).prop("tabindex","-1")}},pausePlay:{setup:function(){var t=e('&lt;div class="'+o+'pauseplay"&gt;&lt;a href="#"&gt;&lt;/a&gt;&lt;/div&gt;');s.controlsContainer?(s.controlsContainer.append(t),s.pausePlay=e("."+o+"pauseplay a",s.controlsContainer)):(s.append(t),s.pausePlay=e("."+o+"pauseplay a",s)),g.pausePlay.update(s.vars.slideshow?o+"pause":o+"play"),s.pausePlay.on(c,function(t){t.preventDefault(),""!==u&amp;&amp;u!==t.type&amp;&amp;"flexslider-click"!==t.type||(e(this).hasClass(o+"pause")?(s.manualPause=!0,s.manualPlay=!1,s.pause()):(s.manualPause=!1,s.manualPlay=!0,s.play())),""===u&amp;&amp;"flexslider-click"!==t.type&amp;&amp;(u=t.type),g.setToClearWatchedEvent()})},update:function(e){"play"===e?s.pausePlay.removeClass(o+"pause").addClass(o+"play").html(s.vars.playText):s.pausePlay.removeClass(o+"play").addClass(o+"pause").html(s.vars.pauseText)}},touch:function(){var e,t,a,n,r,o,l,c,u,d=!1,h=0,g=0;l=function(r){s.animating?r.preventDefault():1===r.touches.length&amp;&amp;(s.pause(),n=v?s.h:s.w,o=Number(new Date),h=r.touches[0].pageX,g=r.touches[0].pageY,a=m&amp;&amp;p&amp;&amp;s.animatingTo===s.last?0:m&amp;&amp;p?s.limit-(s.itemW+s.vars.itemMargin)*s.move*s.animatingTo:m&amp;&amp;s.currentSlide===s.last?s.limit:m?(s.itemW+s.vars.itemMargin)*s.move*s.currentSlide:p?(s.last-s.currentSlide+s.cloneOffset)*n:(s.currentSlide+s.cloneOffset)*n,e=v?g:h,t=v?h:g,i.addEventListener("touchmove",c,!1),i.addEventListener("touchend",u,!1))},c=function(i){h=i.touches[0].pageX,g=i.touches[0].pageY,r=v?e-g:(s.vars.rtl?-1:1)*(e-h);(!(d=v?Math.abs(r)&lt;Math.abs(h-t):Math.abs(r)&lt;Math.abs(g-t))||Number(new Date)-o&gt;500)&amp;&amp;(i.preventDefault(),f||(s.vars.animationLoop||(r/=0===s.currentSlide&amp;&amp;r&lt;0||s.currentSlide===s.last&amp;&amp;r&gt;0?Math.abs(r)/n+2:1),s.setProps(a+r,"setTouch")))},u=function(l){if(i.removeEventListener("touchmove",c,!1),s.animatingTo===s.currentSlide&amp;&amp;!d&amp;&amp;null!==r){var v=p?-r:r,m=v&gt;0?s.getTarget("next"):s.getTarget("prev");s.canAdvance(m)&amp;&amp;(Number(new Date)-o&lt;550&amp;&amp;Math.abs(v)&gt;50||Math.abs(v)&gt;n/2)?s.flexAnimate(m,s.vars.pauseOnAction):f||s.flexAnimate(s.currentSlide,s.vars.pauseOnAction,!0)}i.removeEventListener("touchend",u,!1),e=null,t=null,r=null,a=null},i.addEventListener("touchstart",l,!1)},resize:function(){!s.animating&amp;&amp;s.is(":visible")&amp;&amp;(m||s.doMath(),f?g.smoothHeight():m?(s.slides.width(s.computedW),s.update(s.pagingCount),s.setProps()):v?(s.viewport.height(s.h),s.setProps(s.h,"setTotal")):(s.setProps(s.computedW,"setTotal"),s.newSlides.width(s.computedW),s.vars.smoothHeight&amp;&amp;g.smoothHeight()))},smoothHeight:function(e){v&amp;&amp;!f||(f?s:s.viewport).css({height:s.slides.eq(s.animatingTo).innerHeight(),transition:e?"height "+e+"ms":"none"})},sync:function(t){var a=e(s.vars.sync).data("flexslider"),i=s.animatingTo;switch(t){case"animate":a.flexAnimate(i,s.vars.pauseOnAction,!1,!0);break;case"play":a.playing||a.asNav||a.play();break;case"pause":a.pause()}},uniqueID:function(t){return t.filter("[id]").add(t.find("[id]")).each(function(){var t=e(this);t.attr("id",t.attr("id")+"_clone")}),t},pauseInvisible:function(){document.addEventListener("visibilitychange",function(){"hidden"===document.visibilityState?s.startTimeout?clearTimeout(s.startTimeout):s.pause():s.started?s.play():s.vars.initDelay&gt;0?setTimeout(s.play,s.vars.initDelay):s.play()})},setToClearWatchedEvent:function(){clearTimeout(r),r=setTimeout(function(){u=""},3e3)}},s.flexAnimate=function(t,a,i,n,r){if(s.vars.animationLoop||t===s.currentSlide||(s.direction=t&gt;s.currentSlide?"next":"prev"),h&amp;&amp;1===s.pagingCount&amp;&amp;(s.direction=s.currentItem&lt;t?"next":"prev"),!s.animating&amp;&amp;(s.canAdvance(t,r)||i)&amp;&amp;s.is(":visible")){if(h&amp;&amp;n){var c=e(s.vars.asNavFor).data("flexslider");if(s.atEnd=0===t||t===s.count-1,c.flexAnimate(t,!0,!1,!0,r),s.direction=s.currentItem&lt;t?"next":"prev",c.direction=s.direction,Math.ceil((t+1)/s.visible)-1===s.currentSlide||0===t)return s.currentItem=t,s.slides.removeClass(o+"active-slide").eq(t).addClass(o+"active-slide"),!1;s.currentItem=t,s.slides.removeClass(o+"active-slide").eq(t).addClass(o+"active-slide"),t=Math.floor(t/s.visible)}if(s.animating=!0,s.animatingTo=t,a&amp;&amp;s.pause(),s.vars.before(s),s.syncExists&amp;&amp;!r&amp;&amp;g.sync("animate"),s.vars.controlNav&amp;&amp;g.controlNav.active(),m||s.slides.removeClass(o+"active-slide").eq(t).addClass(o+"active-slide"),s.atEnd=0===t||t===s.last,s.vars.directionNav&amp;&amp;g.directionNav.update(),t===s.last&amp;&amp;(s.vars.end(s),s.vars.animationLoop||s.pause()),f)l||(s.slides.eq(s.currentSlide).off("transitionend"),s.slides.eq(t).off("transitionend").on("transitionend",s.wrapup)),s.slides.eq(s.currentSlide).css({opacity:0,zIndex:1}),s.slides.eq(t).css({opacity:1,zIndex:2}),l&amp;&amp;s.wrapup(y);else{var u,d,b,y=v?s.slides.filter(":first").height():s.computedW;m?(u=s.vars.itemMargin,d=(b=(s.itemW+u)*s.move*s.animatingTo)&gt;s.limit&amp;&amp;1!==s.visible?s.limit:b):d=0===s.currentSlide&amp;&amp;t===s.count-1&amp;&amp;s.vars.animationLoop&amp;&amp;"next"!==s.direction?p?(s.count+s.cloneOffset)*y:0:s.currentSlide===s.last&amp;&amp;0===t&amp;&amp;s.vars.animationLoop&amp;&amp;"prev"!==s.direction?p?0:(s.count+1)*y:p?(s.count-1-t+s.cloneOffset)*y:(t+s.cloneOffset)*y,s.setProps(d,"",s.vars.animationSpeed),s.vars.animationLoop&amp;&amp;s.atEnd||(s.animating=!1,s.currentSlide=s.animatingTo),s.container.off("transitionend"),s.container.on("transitionend",function(){clearTimeout(s.ensureAnimationEnd),s.wrapup(y)}),clearTimeout(s.ensureAnimationEnd),s.ensureAnimationEnd=setTimeout(function(){s.wrapup(y)},s.vars.animationSpeed+100)}s.vars.smoothHeight&amp;&amp;g.smoothHeight(s.vars.animationSpeed)}},s.wrapup=function(e){f||m||(0===s.currentSlide&amp;&amp;s.animatingTo===s.last&amp;&amp;s.vars.animationLoop?s.setProps(e,"jumpEnd"):s.currentSlide===s.last&amp;&amp;0===s.animatingTo&amp;&amp;s.vars.animationLoop&amp;&amp;s.setProps(e,"jumpStart")),s.animating=!1,s.currentSlide=s.animatingTo,s.vars.after(s)},s.animateSlides=function(){!s.animating&amp;&amp;t&amp;&amp;s.flexAnimate(s.getTarget("next"))},s.pause=function(){clearInterval(s.animatedSlides),s.animatedSlides=null,s.playing=!1,s.vars.pausePlay&amp;&amp;g.pausePlay.update("play"),s.syncExists&amp;&amp;g.sync("pause")},s.play=function(){s.playing&amp;&amp;clearInterval(s.animatedSlides),s.animatedSlides=s.animatedSlides||setInterval(s.animateSlides,s.vars.slideshowSpeed),s.started=s.playing=!0,s.vars.pausePlay&amp;&amp;g.pausePlay.update("pause"),s.syncExists&amp;&amp;g.sync("play")},s.stop=function(){s.pause(),s.stopped=!0},s.canAdvance=function(e,t){var a=h?s.pagingCount-1:s.last;return!!t||(!(!h||s.currentItem!==s.count-1||0!==e||"prev"!==s.direction)||(!h||0!==s.currentItem||e!==s.pagingCount-1||"next"===s.direction)&amp;&amp;(!(e===s.currentSlide&amp;&amp;!h)&amp;&amp;(!!s.vars.animationLoop||(!s.atEnd||0!==s.currentSlide||e!==a||"next"===s.direction)&amp;&amp;(!s.atEnd||s.currentSlide!==a||0!==e||"next"!==s.direction))))},s.getTarget=function(e){return s.direction=e,"next"===e?s.currentSlide===s.last?0:s.currentSlide+1:0===s.currentSlide?s.last:s.currentSlide-1},s.setProps=function(e,t,a){var i,n=(i=e||(s.itemW+s.vars.itemMargin)*s.move*s.animatingTo,function(){if(m)return"setTouch"===t?e:p&amp;&amp;s.animatingTo===s.last?0:p?s.limit-(s.itemW+s.vars.itemMargin)*s.move*s.animatingTo:s.animatingTo===s.last?s.limit:i;switch(t){case"setTotal":return p?(s.count-1-s.currentSlide+s.cloneOffset)*e:(s.currentSlide+s.cloneOffset)*e;case"setTouch":return e;case"jumpEnd":return p?e:s.count*e;case"jumpStart":return p?s.count*e:e;default:return e}}()*(s.vars.rtl?1:-1)+"px");a=a!==undefined?a/1e3+"s":"0s",s.container.css("transition-duration",a),s.transforms?n=v?"translate3d(0,"+n+",0)":"translate3d("+parseInt(n)+"px,0,0)":s.container.css("transition-timing-function",d),s.args[s.prop]=n,s.container.css(s.args)},s.setup=function(t){var a,i;f?(s.vars.rtl?s.slides.css({width:"100%",float:"right",marginLeft:"-100%",position:"relative"}):s.slides.css({width:"100%",float:"left",marginRight:"-100%",position:"relative"}),"init"===t&amp;&amp;(l?s.slides.css({opacity:0,display:"block",transition:"opacity "+s.vars.animationSpeed/1e3+"s ease",zIndex:1}).eq(s.currentSlide).css({opacity:1,zIndex:2}):(0==s.vars.fadeFirstSlide?(s.slides.css({opacity:0,display:"block",zIndex:1}).eq(s.currentSlide).css({opacity:1,zIndex:2}),s.slides.outerWidth()):(s.slides.css({opacity:0,display:"block",zIndex:1}).outerWidth(),s.slides.eq(s.currentSlide).css({opacity:1,zIndex:2})),s.slides.css({transition:"opacity "+s.vars.animationSpeed/1e3+"s "+d}))),s.vars.smoothHeight&amp;&amp;g.smoothHeight()):("init"===t&amp;&amp;(s.viewport=e('&lt;div class="'+o+'viewport"&gt;&lt;/div&gt;').css({overflow:"hidden",position:"relative"}).appendTo(s).append(s.container),s.cloneCount=0,s.cloneOffset=0,p&amp;&amp;(i=e.makeArray(s.slides).reverse(),s.slides=e(i),s.container.empty().append(s.slides))),s.vars.animationLoop&amp;&amp;!m&amp;&amp;(s.cloneCount=2,s.cloneOffset=1,"init"!==t&amp;&amp;s.container.find(".clone").remove(),s.container.append(g.uniqueID(s.slides.first().clone().addClass("clone")).attr("aria-hidden","true")).prepend(g.uniqueID(s.slides.last().clone().addClass("clone")).attr("aria-hidden","true"))),s.newSlides=e(s.vars.selector,s),a=p?s.count-1-s.currentSlide+s.cloneOffset:s.currentSlide+s.cloneOffset,v&amp;&amp;!m?(s.container.height(200*(s.count+s.cloneCount)+"%").css("position","absolute").width("100%"),setTimeout(function(){s.newSlides.css({display:"block"}),s.doMath(),s.viewport.height(s.h),s.setProps(a*s.h,"init")},"init"===t?100:0)):(s.container.width(200*(s.count+s.cloneCount)+"%"),s.setProps(a*s.computedW,"init"),setTimeout(function(){s.doMath(),s.vars.rtl?s.newSlides.css({width:s.computedW,marginRight:s.computedM,float:"right",display:"block"}):s.newSlides.css({width:s.computedW,marginRight:s.computedM,float:"left",display:"block"}),s.vars.smoothHeight&amp;&amp;g.smoothHeight()},"init"===t?100:0)));m||s.slides.removeClass(o+"active-slide").eq(s.currentSlide).addClass(o+"active-slide"),s.vars.init(s)},s.doMath=function(){var e=s.slides.first(),t=s.vars.itemMargin,a=s.vars.minItems,i=s.vars.maxItems;s.w=s.viewport===undefined?s.width():s.viewport.width(),s.isFirefox&amp;&amp;(s.w=s.width()),s.h=e.height(),s.boxPadding=e.outerWidth()-e.width(),m?(s.itemT=s.vars.itemWidth+t,s.itemM=t,s.minW=a?a*s.itemT:s.w,s.maxW=i?i*s.itemT-t:s.w,s.itemW=s.minW&gt;s.w?(s.w-t*(a-1))/a:s.maxW&lt;s.w?(s.w-t*(i-1))/i:s.vars.itemWidth&gt;s.w?s.w:s.vars.itemWidth,s.visible=Math.floor(s.w/s.itemW),s.move=s.vars.move&gt;0&amp;&amp;s.vars.move&lt;s.visible?s.vars.move:s.visible,s.pagingCount=Math.ceil((s.count-s.visible)/s.move+1),s.last=s.pagingCount-1,s.limit=1===s.pagingCount?0:s.vars.itemWidth&gt;s.w?s.itemW*(s.count-1)+t*(s.count-1):(s.itemW+t)*s.count-s.w-t):(s.itemW=s.w,s.itemM=t,s.pagingCount=s.count,s.last=s.count-1),s.computedW=s.itemW-s.boxPadding,s.computedM=s.itemM},s.update=function(e,t){s.doMath(),m||(e&lt;s.currentSlide?s.currentSlide+=1:e&lt;=s.currentSlide&amp;&amp;0!==e&amp;&amp;(s.currentSlide-=1),s.animatingTo=s.currentSlide),s.vars.controlNav&amp;&amp;!s.manualControls&amp;&amp;("add"===t&amp;&amp;!m||s.pagingCount&gt;s.controlNav.length?g.controlNav.update("add"):("remove"===t&amp;&amp;!m||s.pagingCount&lt;s.controlNav.length)&amp;&amp;(m&amp;&amp;s.currentSlide&gt;s.last&amp;&amp;(s.currentSlide-=1,s.animatingTo-=1),g.controlNav.update("remove",s.last))),s.vars.directionNav&amp;&amp;g.directionNav.update()},s.addSlide=function(t,a){var i=e(t);s.count+=1,s.last=s.count-1,v&amp;&amp;p?a!==undefined?s.slides.eq(s.count-a).after(i):s.container.prepend(i):a!==undefined?s.slides.eq(a).before(i):s.container.append(i),s.update(a,"add"),s.slides=e(s.vars.selector+":not(.clone)",s),s.setup(),s.vars.added(s)},s.removeSlide=function(t){var a=isNaN(t)?s.slides.index(e(t)):t;s.count-=1,s.last=s.count-1,isNaN(t)?e(t,s.slides).remove():v&amp;&amp;p?s.slides.eq(s.last).remove():s.slides.eq(t).remove(),s.doMath(),s.update(a,"remove"),s.slides=e(s.vars.selector+":not(.clone)",s),s.setup(),s.vars.removed(s)},g.init()},e(window).on("blur",function(e){t=!1}).on("focus",function(e){t=!0}),e.flexslider.defaults={namespace:"flex-",selector:".slides &gt; li",animation:"fade",easing:"swing",direction:"horizontal",reverse:!1,animationLoop:!0,smoothHeight:!1,startAt:0,slideshow:!0,slideshowSpeed:7e3,animationSpeed:600,initDelay:0,randomize:!1,fadeFirstSlide:!0,thumbCaptions:!1,pauseOnAction:!0,pauseOnHover:!1,pauseInvisible:!0,useCSS:!0,touch:!0,video:!1,controlNav:!0,directionNav:!0,prevText:"Previous",nextText:"Next",keyboard:!0,multipleKeyboard:!1,mousewheel:!1,pausePlay:!1,pauseText:"Pause",playText:"Play",controlsContainer:"",manualControls:"",customDirectionNav:"",sync:"",asNavFor:"",itemWidth:0,itemMargin:0,minItems:1,maxItems:0,move:0,allowOneSlide:!0,isFirefox:!1,start:function(){},before:function(){},after:function(){},end:function(){},added:function(){},removed:function(){},init:function(){},rtl:!1},e.fn.flexslider=function(t){if(t===undefined&amp;&amp;(t={}),"object"==typeof t)return this.each(function(){var a=e(this),i=t.selector?t.selector:".slides &gt; li",n=a.find(i);if(1===n.length&amp;&amp;!1===t.allowOneSlide||0===n.length){n.length&amp;&amp;n[0].animate([{opacity:0},{opacity:1}],400),t.start&amp;&amp;t.start(a)}else a.data("flexslider")===undefined&amp;&amp;new e.flexslider(this,t)});var a=e(this).data("flexslider");switch(t){case"play":a.play();break;case"pause":a.pause();break;case"stop":a.stop();break;case"next":a.flexAnimate(a.getTarget("next"),!0);break;case"prev":case"previous":a.flexAnimate(a.getTarget("prev"),!0);break;default:"number"==typeof t&amp;&amp;a.flexAnimate(t,!0)}}}(jQuery);/*! PhotoSwipe - v4.1.3 - 2019-01-08
* http://photoswipe.com
* Copyright (c) 2019 Dmitry Semenov; */
!function(e,t){"function"==typeof define&amp;&amp;define.amd?define(t):"object"==typeof exports?module.exports=t():e.PhotoSwipe=t()}(this,function(){"use strict";return function(e,t,n,i){var o={features:null,bind:function(e,t,n,i){var o=(i?"remove":"add")+"EventListener";t=t.split(" ");for(var a=0;a&lt;t.length;a++)t[a]&amp;&amp;e[o](t[a],n,!1)},isArray:function(e){return e instanceof Array},createEl:function(e,t){var n=document.createElement(t||"div");return e&amp;&amp;(n.className=e),n},getScrollY:function(){var e=window.pageYOffset;return e!==undefined?e:document.documentElement.scrollTop},unbind:function(e,t,n){o.bind(e,t,n,!0)},removeClass:function(e,t){var n=new RegExp("(\\s|^)"+t+"(\\s|$)");e.className=e.className.replace(n," ").replace(/^\s\s*/,"").replace(/\s\s*$/,"")},addClass:function(e,t){o.hasClass(e,t)||(e.className+=(e.className?" ":"")+t)},hasClass:function(e,t){return e.className&amp;&amp;new RegExp("(^|\\s)"+t+"(\\s|$)").test(e.className)},getChildByClass:function(e,t){for(var n=e.firstChild;n;){if(o.hasClass(n,t))return n;n=n.nextSibling}},arraySearch:function(e,t,n){for(var i=e.length;i--;)if(e[i][n]===t)return i;return-1},extend:function(e,t,n){for(var i in t)if(t.hasOwnProperty(i)){if(n&amp;&amp;e.hasOwnProperty(i))continue;e[i]=t[i]}},easing:{sine:{out:function(e){return Math.sin(e*(Math.PI/2))},inOut:function(e){return-(Math.cos(Math.PI*e)-1)/2}},cubic:{out:function(e){return--e*e*e+1}}},detectFeatures:function(){if(o.features)return o.features;var e=o.createEl().style,t="",n={};if(n.oldIE=document.all&amp;&amp;!document.addEventListener,n.touch="ontouchstart"in window,window.requestAnimationFrame&amp;&amp;(n.raf=window.requestAnimationFrame,n.caf=window.cancelAnimationFrame),n.pointerEvent=!!window.PointerEvent||navigator.msPointerEnabled,!n.pointerEvent){var i=navigator.userAgent;if(/iP(hone|od)/.test(navigator.platform)){var a=navigator.appVersion.match(/OS (\d+)_(\d+)_?(\d+)?/);a&amp;&amp;a.length&gt;0&amp;&amp;(a=parseInt(a[1],10))&gt;=1&amp;&amp;a&lt;8&amp;&amp;(n.isOldIOSPhone=!0)}var r=i.match(/Android\s([0-9\.]*)/),l=r?r[1]:0;(l=parseFloat(l))&gt;=1&amp;&amp;(l&lt;4.4&amp;&amp;(n.isOldAndroid=!0),n.androidVersion=l),n.isMobileOpera=/opera mini|opera mobi/i.test(i)}for(var s,u,c=["transform","perspective","animationName"],d=["","webkit","Moz","ms","O"],m=0;m&lt;4;m++){t=d[m];for(var p=0;p&lt;3;p++)s=c[p],u=t+(t?s.charAt(0).toUpperCase()+s.slice(1):s),!n[s]&amp;&amp;u in e&amp;&amp;(n[s]=u);t&amp;&amp;!n.raf&amp;&amp;(t=t.toLowerCase(),n.raf=window[t+"RequestAnimationFrame"],n.raf&amp;&amp;(n.caf=window[t+"CancelAnimationFrame"]||window[t+"CancelRequestAnimationFrame"]))}if(!n.raf){var f=0;n.raf=function(e){var t=(new Date).getTime(),n=Math.max(0,16-(t-f)),i=window.setTimeout(function(){e(t+n)},n);return f=t+n,i},n.caf=function(e){clearTimeout(e)}}return n.svg=!!document.createElementNS&amp;&amp;!!document.createElementNS("http://www.w3.org/2000/svg","svg").createSVGRect,o.features=n,n}};o.detectFeatures(),o.features.oldIE&amp;&amp;(o.bind=function(e,t,n,i){t=t.split(" ");for(var o,a=(i?"detach":"attach")+"Event",r=function(){n.handleEvent.call(n)},l=0;l&lt;t.length;l++)if(o=t[l])if("object"==typeof n&amp;&amp;n.handleEvent){if(i){if(!n["oldIE"+o])return!1}else n["oldIE"+o]=r;e[a]("on"+o,n["oldIE"+o])}else e[a]("on"+o,n)});var a=this,r={allowPanToNext:!0,spacing:.12,bgOpacity:1,mouseUsed:!1,loop:!0,pinchToClose:!0,closeOnScroll:!0,closeOnVerticalDrag:!0,verticalDragRange:.75,hideAnimationDuration:333,showAnimationDuration:333,showHideOpacity:!1,focus:!0,escKey:!0,arrowKeys:!0,mainScrollEndFriction:.35,panEndFriction:.35,isClickableElement:function(e){return"A"===e.tagName},getDoubleTapZoom:function(e,t){return e?1:t.initialZoomLevel&lt;.7?1:1.33},maxSpreadZoom:1.33,modal:!0,scaleMode:"fit"};o.extend(r,i);var l,s,u,c,d,m,p,f,h,y,x,v,g,w,b,I,C,D,T,M,S,A,E,O,k,R,P,Z,F,L,z,_,N,U,H,Y,W,B,G,X,V,K,q,$,j,J,Q,ee,te,ne,ie,oe,ae,re,le,se,ue={x:0,y:0},ce={x:0,y:0},de={x:0,y:0},me={},pe=0,fe={},he={x:0,y:0},ye=0,xe=!0,ve=[],ge={},we=!1,be=function(e,t){o.extend(a,t.publicMethods),ve.push(e)},Ie=function(e){var t=Ht();return e&gt;t-1?e-t:e&lt;0?t+e:e},Ce={},De=function(e,t){return Ce[e]||(Ce[e]=[]),Ce[e].push(t)},Te=function(e){var t=Ce[e];if(t){var n=Array.prototype.slice.call(arguments);n.shift();for(var i=0;i&lt;t.length;i++)t[i].apply(a,n)}},Me=function(){return(new Date).getTime()},Se=function(e){re=e,a.bg.style.opacity=e*r.bgOpacity},Ae=function(e,t,n,i,o){(!we||o&amp;&amp;o!==a.currItem)&amp;&amp;(i/=o?o.fitRatio:a.currItem.fitRatio),e[A]=v+t+"px, "+n+"px"+g+" scale("+i+")"},Ee=function(e){te&amp;&amp;(e&amp;&amp;(y&gt;a.currItem.fitRatio?we||($t(a.currItem,!1,!0),we=!0):we&amp;&amp;($t(a.currItem),we=!1)),Ae(te,de.x,de.y,y))},Oe=function(e){e.container&amp;&amp;Ae(e.container.style,e.initialPosition.x,e.initialPosition.y,e.initialZoomLevel,e)},ke=function(e,t){t[A]=v+e+"px, 0px"+g},Re=function(e,t){if(!r.loop&amp;&amp;t){var n=c+(he.x*pe-e)/he.x,i=Math.round(e-ct.x);(n&lt;0&amp;&amp;i&gt;0||n&gt;=Ht()-1&amp;&amp;i&lt;0)&amp;&amp;(e=ct.x+i*r.mainScrollEndFriction)}ct.x=e,ke(e,d)},Pe=function(e,t){var n=dt[e]-fe[e];return ce[e]+ue[e]+n-n*(t/x)},Ze=function(e,t){e.x=t.x,e.y=t.y,t.id&amp;&amp;(e.id=t.id)},Fe=function(e){e.x=Math.round(e.x),e.y=Math.round(e.y)},Le=null,ze=function(){Le&amp;&amp;(o.unbind(document,"mousemove",ze),o.addClass(e,"pswp--has_mouse"),r.mouseUsed=!0,Te("mouseUsed")),Le=setTimeout(function(){Le=null},100)},_e=function(e,t){var n=Xt(a.currItem,me,e);return t&amp;&amp;(ee=n),n},Ne=function(e){return e||(e=a.currItem),e.initialZoomLevel},Ue=function(e){return e||(e=a.currItem),e.w&gt;0?r.maxSpreadZoom:1},He=function(e,t,n,i){return i===a.currItem.initialZoomLevel?(n[e]=a.currItem.initialPosition[e],!0):(n[e]=Pe(e,i),n[e]&gt;t.min[e]?(n[e]=t.min[e],!0):n[e]&lt;t.max[e]&amp;&amp;(n[e]=t.max[e],!0))},Ye=function(e){var t="";r.escKey&amp;&amp;27===e.keyCode?t="close":r.arrowKeys&amp;&amp;(37===e.keyCode?t="prev":39===e.keyCode&amp;&amp;(t="next")),t&amp;&amp;(e.ctrlKey||e.altKey||e.shiftKey||e.metaKey||(e.preventDefault?e.preventDefault():e.returnValue=!1,a[t]()))},We=function(e){e&amp;&amp;(K||V||ne||W)&amp;&amp;(e.preventDefault(),e.stopPropagation())},Be=function(){a.setScrollOffset(0,o.getScrollY())},Ge={},Xe=0,Ve=function(e){Ge[e]&amp;&amp;(Ge[e].raf&amp;&amp;R(Ge[e].raf),Xe--,delete Ge[e])},Ke=function(e){Ge[e]&amp;&amp;Ve(e),Ge[e]||(Xe++,Ge[e]={})},qe=function(){for(var e in Ge)Ge.hasOwnProperty(e)&amp;&amp;Ve(e)},$e=function(e,t,n,i,o,a,r){var l,s=Me();Ke(e);var u=function(){if(Ge[e]){if((l=Me()-s)&gt;=i)return Ve(e),a(n),void(r&amp;&amp;r());a((n-t)*o(l/i)+t),Ge[e].raf=k(u)}};u()},je={shout:Te,listen:De,viewportSize:me,options:r,isMainScrollAnimating:function(){return ne},getZoomLevel:function(){return y},getCurrentIndex:function(){return c},isDragging:function(){return G},isZooming:function(){return J},setScrollOffset:function(e,t){fe.x=e,L=fe.y=t,Te("updateScrollOffset",fe)},applyZoomPan:function(e,t,n,i){de.x=t,de.y=n,y=e,Ee(i)},init:function(){if(!l&amp;&amp;!s){var n;a.framework=o,a.template=e,a.bg=o.getChildByClass(e,"pswp__bg"),P=e.className,l=!0,z=o.detectFeatures(),k=z.raf,R=z.caf,A=z.transform,F=z.oldIE,a.scrollWrap=o.getChildByClass(e,"pswp__scroll-wrap"),a.container=o.getChildByClass(a.scrollWrap,"pswp__container"),d=a.container.style,a.itemHolders=I=[{el:a.container.children[0],wrap:0,index:-1},{el:a.container.children[1],wrap:0,index:-1},{el:a.container.children[2],wrap:0,index:-1}],I[0].el.style.display=I[2].el.style.display="none",function(){if(A){var t=z.perspective&amp;&amp;!O;return v="translate"+(t?"3d(":"("),void(g=z.perspective?", 0px)":")")}A="left",o.addClass(e,"pswp--ie"),ke=function(e,t){t.left=e+"px"},Oe=function(e){var t=e.fitRatio&gt;1?1:e.fitRatio,n=e.container.style,i=t*e.w,o=t*e.h;n.width=i+"px",n.height=o+"px",n.left=e.initialPosition.x+"px",n.top=e.initialPosition.y+"px"},Ee=function(){if(te){var e=te,t=a.currItem,n=t.fitRatio&gt;1?1:t.fitRatio,i=n*t.w,o=n*t.h;e.width=i+"px",e.height=o+"px",e.left=de.x+"px",e.top=de.y+"px"}}}(),h={resize:a.updateSize,orientationchange:function(){clearTimeout(_),_=setTimeout(function(){me.x!==a.scrollWrap.clientWidth&amp;&amp;a.updateSize()},500)},scroll:Be,keydown:Ye,click:We};var i=z.isOldIOSPhone||z.isOldAndroid||z.isMobileOpera;for(z.animationName&amp;&amp;z.transform&amp;&amp;!i||(r.showAnimationDuration=r.hideAnimationDuration=0),n=0;n&lt;ve.length;n++)a["init"+ve[n]]();t&amp;&amp;(a.ui=new t(a,o)).init(),Te("firstUpdate"),c=c||r.index||0,(isNaN(c)||c&lt;0||c&gt;=Ht())&amp;&amp;(c=0),a.currItem=Ut(c),(z.isOldIOSPhone||z.isOldAndroid)&amp;&amp;(xe=!1),e.setAttribute("aria-hidden","false"),r.modal&amp;&amp;(xe?e.style.position="fixed":(e.style.position="absolute",e.style.top=o.getScrollY()+"px")),L===undefined&amp;&amp;(Te("initialLayout"),L=Z=o.getScrollY());var u="pswp--open ";for(r.mainClass&amp;&amp;(u+=r.mainClass+" "),r.showHideOpacity&amp;&amp;(u+="pswp--animate_opacity "),u+=O?"pswp--touch":"pswp--notouch",u+=z.animationName?" pswp--css_animation":"",u+=z.svg?" pswp--svg":"",o.addClass(e,u),a.updateSize(),m=-1,ye=null,n=0;n&lt;3;n++)ke((n+m)*he.x,I[n].el.style);F||o.bind(a.scrollWrap,f,a),De("initialZoomInEnd",function(){a.setContent(I[0],c-1),a.setContent(I[2],c+1),I[0].el.style.display=I[2].el.style.display="block",r.focus&amp;&amp;e.focus(),o.bind(document,"keydown",a),z.transform&amp;&amp;o.bind(a.scrollWrap,"click",a),r.mouseUsed||o.bind(document,"mousemove",ze),o.bind(window,"resize scroll orientationchange",a),Te("bindEvents")}),a.setContent(I[1],c),a.updateCurrItem(),Te("afterInit"),xe||(w=setInterval(function(){Xe||G||J||y!==a.currItem.initialZoomLevel||a.updateSize()},1e3)),o.addClass(e,"pswp--visible")}},close:function(){l&amp;&amp;(l=!1,s=!0,Te("close"),o.unbind(window,"resize scroll orientationchange",a),o.unbind(window,"scroll",h.scroll),o.unbind(document,"keydown",a),o.unbind(document,"mousemove",ze),z.transform&amp;&amp;o.unbind(a.scrollWrap,"click",a),G&amp;&amp;o.unbind(window,p,a),clearTimeout(_),Te("unbindEvents"),Yt(a.currItem,null,!0,a.destroy))},destroy:function(){Te("destroy"),Lt&amp;&amp;clearTimeout(Lt),e.setAttribute("aria-hidden","true"),e.className=P,w&amp;&amp;clearInterval(w),o.unbind(a.scrollWrap,f,a),o.unbind(window,"scroll",a),ft(),qe(),Ce=null},panTo:function(e,t,n){n||(e&gt;ee.min.x?e=ee.min.x:e&lt;ee.max.x&amp;&amp;(e=ee.max.x),t&gt;ee.min.y?t=ee.min.y:t&lt;ee.max.y&amp;&amp;(t=ee.max.y)),de.x=e,de.y=t,Ee()},handleEvent:function(e){e=e||window.event,h[e.type]&amp;&amp;h[e.type](e)},goTo:function(e){var t=(e=Ie(e))-c;ye=t,c=e,a.currItem=Ut(c),pe-=t,Re(he.x*pe),qe(),ne=!1,a.updateCurrItem()},next:function(){a.goTo(c+1)},prev:function(){a.goTo(c-1)},updateCurrZoomItem:function(e){if(e&amp;&amp;Te("beforeChange",0),I[1].el.children.length){var t=I[1].el.children[0];te=o.hasClass(t,"pswp__zoom-wrap")?t.style:null}else te=null;ee=a.currItem.bounds,x=y=a.currItem.initialZoomLevel,de.x=ee.center.x,de.y=ee.center.y,e&amp;&amp;Te("afterChange")},invalidateCurrItems:function(){b=!0;for(var e=0;e&lt;3;e++)I[e].item&amp;&amp;(I[e].item.needsUpdate=!0)},updateCurrItem:function(e){if(0!==ye){var t,n=Math.abs(ye);if(!(e&amp;&amp;n&lt;2)){a.currItem=Ut(c),we=!1,Te("beforeChange",ye),n&gt;=3&amp;&amp;(m+=ye+(ye&gt;0?-3:3),n=3);for(var i=0;i&lt;n;i++)ye&gt;0?(t=I.shift(),I[2]=t,ke((++m+2)*he.x,t.el.style),a.setContent(t,c-n+i+1+1)):(t=I.pop(),I.unshift(t),ke(--m*he.x,t.el.style),a.setContent(t,c+n-i-1-1));if(te&amp;&amp;1===Math.abs(ye)){var o=Ut(C);o.initialZoomLevel!==y&amp;&amp;(Xt(o,me),$t(o),Oe(o))}ye=0,a.updateCurrZoomItem(),C=c,Te("afterChange")}}},updateSize:function(t){if(!xe&amp;&amp;r.modal){var n=o.getScrollY();if(L!==n&amp;&amp;(e.style.top=n+"px",L=n),!t&amp;&amp;ge.x===window.innerWidth&amp;&amp;ge.y===window.innerHeight)return;ge.x=window.innerWidth,ge.y=window.innerHeight,e.style.height=ge.y+"px"}if(me.x=a.scrollWrap.clientWidth,me.y=a.scrollWrap.clientHeight,Be(),he.x=me.x+Math.round(me.x*r.spacing),he.y=me.y,Re(he.x*pe),Te("beforeResize"),m!==undefined){for(var i,l,s,u=0;u&lt;3;u++)i=I[u],ke((u+m)*he.x,i.el.style),s=c+u-1,r.loop&amp;&amp;Ht()&gt;2&amp;&amp;(s=Ie(s)),(l=Ut(s))&amp;&amp;(b||l.needsUpdate||!l.bounds)?(a.cleanSlide(l),a.setContent(i,s),1===u&amp;&amp;(a.currItem=l,a.updateCurrZoomItem(!0)),l.needsUpdate=!1):-1===i.index&amp;&amp;s&gt;=0&amp;&amp;a.setContent(i,s),l&amp;&amp;l.container&amp;&amp;(Xt(l,me),$t(l),Oe(l));b=!1}x=y=a.currItem.initialZoomLevel,(ee=a.currItem.bounds)&amp;&amp;(de.x=ee.center.x,de.y=ee.center.y,Ee(!0)),Te("resize")},zoomTo:function(e,t,n,i,a){t&amp;&amp;(x=y,dt.x=Math.abs(t.x)-de.x,dt.y=Math.abs(t.y)-de.y,Ze(ce,de));var r=_e(e,!1),l={};He("x",r,l,e),He("y",r,l,e);var s=y,u=de.x,c=de.y;Fe(l);var d=function(t){1===t?(y=e,de.x=l.x,de.y=l.y):(y=(e-s)*t+s,de.x=(l.x-u)*t+u,de.y=(l.y-c)*t+c),a&amp;&amp;a(t),Ee(1===t)};n?$e("customZoomTo",0,1,n,i||o.easing.sine.inOut,d):d(1)}},Je={},Qe={},et={},tt={},nt={},it=[],ot={},at=[],rt={},lt=0,st={x:0,y:0},ut=0,ct={x:0,y:0},dt={x:0,y:0},mt={x:0,y:0},pt=function(e,t){return rt.x=Math.abs(e.x-t.x),rt.y=Math.abs(e.y-t.y),Math.sqrt(rt.x*rt.x+rt.y*rt.y)},ft=function(){q&amp;&amp;(R(q),q=null)},ht=function(){G&amp;&amp;(q=k(ht),Et())},yt=function(e,t){return!(!e||e===document)&amp;&amp;!(e.getAttribute("class")&amp;&amp;e.getAttribute("class").indexOf("pswp__scroll-wrap")&gt;-1)&amp;&amp;(t(e)?e:yt(e.parentNode,t))},xt={},vt=function(e,t){return xt.prevent=!yt(e.target,r.isClickableElement),Te("preventDragEvent",e,t,xt),xt.prevent},gt=function(e,t){return t.x=e.pageX,t.y=e.pageY,t.id=e.identifier,t},wt=function(e,t,n){n.x=.5*(e.x+t.x),n.y=.5*(e.y+t.y)},bt=function(){var e=de.y-a.currItem.initialPosition.y;return 1-Math.abs(e/(me.y/2))},It={},Ct={},Dt=[],Tt=function(e){for(;Dt.length&gt;0;)Dt.pop();return E?(se=0,it.forEach(function(e){0===se?Dt[0]=e:1===se&amp;&amp;(Dt[1]=e),se++})):e.type.indexOf("touch")&gt;-1?e.touches&amp;&amp;e.touches.length&gt;0&amp;&amp;(Dt[0]=gt(e.touches[0],It),e.touches.length&gt;1&amp;&amp;(Dt[1]=gt(e.touches[1],Ct))):(It.x=e.pageX,It.y=e.pageY,It.id="",Dt[0]=It),Dt},Mt=function(e,t){var n,i,o,l,s=de[e]+t[e],u=t[e]&gt;0,c=ct.x+t.x,d=ct.x-ot.x;if(n=s&gt;ee.min[e]||s&lt;ee.max[e]?r.panEndFriction:1,s=de[e]+t[e]*n,(r.allowPanToNext||y===a.currItem.initialZoomLevel)&amp;&amp;(te?"h"!==ie||"x"!==e||V||(u?(s&gt;ee.min[e]&amp;&amp;(n=r.panEndFriction,ee.min[e],i=ee.min[e]-ce[e]),(i&lt;=0||d&lt;0)&amp;&amp;Ht()&gt;1?(l=c,d&lt;0&amp;&amp;c&gt;ot.x&amp;&amp;(l=ot.x)):ee.min.x!==ee.max.x&amp;&amp;(o=s)):(s&lt;ee.max[e]&amp;&amp;(n=r.panEndFriction,ee.max[e],i=ce[e]-ee.max[e]),(i&lt;=0||d&gt;0)&amp;&amp;Ht()&gt;1?(l=c,d&gt;0&amp;&amp;c&lt;ot.x&amp;&amp;(l=ot.x)):ee.min.x!==ee.max.x&amp;&amp;(o=s))):l=c,"x"===e))return l!==undefined&amp;&amp;(Re(l,!0),$=l!==ot.x),ee.min.x!==ee.max.x&amp;&amp;(o!==undefined?de.x=o:$||(de.x+=t.x*n)),l!==undefined;ne||$||y&gt;a.currItem.fitRatio&amp;&amp;(de[e]+=t[e]*n)},St=function(e){if(!("mousedown"===e.type&amp;&amp;e.button&gt;0))if(Nt)e.preventDefault();else if(!B||"mousedown"!==e.type){if(vt(e,!0)&amp;&amp;e.preventDefault(),Te("pointerDown"),E){var t=o.arraySearch(it,e.pointerId,"id");t&lt;0&amp;&amp;(t=it.length),it[t]={x:e.pageX,y:e.pageY,id:e.pointerId}}var n=Tt(e),i=n.length;j=null,qe(),G&amp;&amp;1!==i||(G=oe=!0,o.bind(window,p,a),Y=le=ae=W=$=K=X=V=!1,ie=null,Te("firstTouchStart",n),Ze(ce,de),ue.x=ue.y=0,Ze(tt,n[0]),Ze(nt,tt),ot.x=he.x*pe,at=[{x:tt.x,y:tt.y}],U=N=Me(),_e(y,!0),ft(),ht()),!J&amp;&amp;i&gt;1&amp;&amp;!ne&amp;&amp;!$&amp;&amp;(x=y,V=!1,J=X=!0,ue.y=ue.x=0,Ze(ce,de),Ze(Je,n[0]),Ze(Qe,n[1]),wt(Je,Qe,mt),dt.x=Math.abs(mt.x)-de.x,dt.y=Math.abs(mt.y)-de.y,Q=pt(Je,Qe))}},At=function(e){if(e.preventDefault(),E){var t=o.arraySearch(it,e.pointerId,"id");if(t&gt;-1){var n=it[t];n.x=e.pageX,n.y=e.pageY}}if(G){var i=Tt(e);if(ie||K||J)j=i;else if(ct.x!==he.x*pe)ie="h";else{var a=Math.abs(i[0].x-tt.x)-Math.abs(i[0].y-tt.y);Math.abs(a)&gt;=10&amp;&amp;(ie=a&gt;0?"h":"v",j=i)}}},Et=function(){if(j){var e=j.length;if(0!==e)if(Ze(Je,j[0]),et.x=Je.x-tt.x,et.y=Je.y-tt.y,J&amp;&amp;e&gt;1){if(tt.x=Je.x,tt.y=Je.y,!et.x&amp;&amp;!et.y&amp;&amp;function(e,t){return e.x===t.x&amp;&amp;e.y===t.y}(j[1],Qe))return;Ze(Qe,j[1]),V||(V=!0,Te("zoomGestureStarted"));var t=pt(Je,Qe),n=Zt(t);n&gt;a.currItem.initialZoomLevel+a.currItem.initialZoomLevel/15&amp;&amp;(le=!0);var i=1,o=Ne(),l=Ue();if(n&lt;o)if(r.pinchToClose&amp;&amp;!le&amp;&amp;x&lt;=a.currItem.initialZoomLevel){var s=1-(o-n)/(o/1.2);Se(s),Te("onPinchClose",s),ae=!0}else(i=(o-n)/o)&gt;1&amp;&amp;(i=1),n=o-i*(o/3);else n&gt;l&amp;&amp;((i=(n-l)/(6*o))&gt;1&amp;&amp;(i=1),n=l+i*o);i&lt;0&amp;&amp;(i=0),wt(Je,Qe,st),ue.x+=st.x-mt.x,ue.y+=st.y-mt.y,Ze(mt,st),de.x=Pe("x",n),de.y=Pe("y",n),Y=n&gt;y,y=n,Ee()}else{if(!ie)return;if(oe&amp;&amp;(oe=!1,Math.abs(et.x)&gt;=10&amp;&amp;(et.x-=j[0].x-nt.x),Math.abs(et.y)&gt;=10&amp;&amp;(et.y-=j[0].y-nt.y)),tt.x=Je.x,tt.y=Je.y,0===et.x&amp;&amp;0===et.y)return;if("v"===ie&amp;&amp;r.closeOnVerticalDrag&amp;&amp;"fit"===r.scaleMode&amp;&amp;y===a.currItem.initialZoomLevel){ue.y+=et.y,de.y+=et.y;var u=bt();return W=!0,Te("onVerticalDrag",u),Se(u),void Ee()}!function(e,t,n){if(e-U&gt;50){var i=at.length&gt;2?at.shift():{};i.x=t,i.y=n,at.push(i),U=e}}(Me(),Je.x,Je.y),K=!0,ee=a.currItem.bounds,Mt("x",et)||(Mt("y",et),Fe(de),Ee())}}},Ot=function(e){if(z.isOldAndroid){if(B&amp;&amp;"mouseup"===e.type)return;e.type.indexOf("touch")&gt;-1&amp;&amp;(clearTimeout(B),B=setTimeout(function(){B=0},600))}var t;if(Te("pointerUp"),vt(e,!1)&amp;&amp;e.preventDefault(),E){var n=o.arraySearch(it,e.pointerId,"id");n&gt;-1&amp;&amp;(t=it.splice(n,1)[0],navigator.msPointerEnabled?(t.type={4:"mouse",2:"touch",3:"pen"}[e.pointerType],t.type||(t.type=e.pointerType||"mouse")):t.type=e.pointerType||"mouse")}var i,l=Tt(e),s=l.length;if("mouseup"===e.type&amp;&amp;(s=0),2===s)return j=null,!0;1===s&amp;&amp;Ze(nt,l[0]),0!==s||ie||ne||(t||("mouseup"===e.type?t={x:e.pageX,y:e.pageY,type:"mouse"}:e.changedTouches&amp;&amp;e.changedTouches[0]&amp;&amp;(t={x:e.changedTouches[0].pageX,y:e.changedTouches[0].pageY,type:"touch"})),Te("touchRelease",e,t));var u=-1;if(0===s&amp;&amp;(G=!1,o.unbind(window,p,a),ft(),J?u=0:-1!==ut&amp;&amp;(u=Me()-ut)),ut=1===s?Me():-1,i=-1!==u&amp;&amp;u&lt;150?"zoom":"swipe",J&amp;&amp;s&lt;2&amp;&amp;(J=!1,1===s&amp;&amp;(i="zoomPointerUp"),Te("zoomGestureEnded")),j=null,K||V||ne||W)if(qe(),H||(H=kt()),H.calculateSwipeSpeed("x"),W)if(bt()&lt;r.verticalDragRange)a.close();else{var c=de.y,d=re;$e("verticalDrag",0,1,300,o.easing.cubic.out,function(e){de.y=(a.currItem.initialPosition.y-c)*e+c,Se((1-d)*e+d),Ee()}),Te("onVerticalDrag",1)}else{if(($||ne)&amp;&amp;0===s){if(Pt(i,H))return;i="zoomPointerUp"}ne||("swipe"===i?!$&amp;&amp;y&gt;a.currItem.fitRatio&amp;&amp;Rt(H):Ft())}},kt=function(){var e,t,n={lastFlickOffset:{},lastFlickDist:{},lastFlickSpeed:{},slowDownRatio:{},slowDownRatioReverse:{},speedDecelerationRatio:{},speedDecelerationRatioAbs:{},distanceOffset:{},backAnimDestination:{},backAnimStarted:{},calculateSwipeSpeed:function(i){at.length&gt;1?(e=Me()-U+50,t=at[at.length-2][i]):(e=Me()-N,t=nt[i]),n.lastFlickOffset[i]=tt[i]-t,n.lastFlickDist[i]=Math.abs(n.lastFlickOffset[i]),n.lastFlickDist[i]&gt;20?n.lastFlickSpeed[i]=n.lastFlickOffset[i]/e:n.lastFlickSpeed[i]=0,Math.abs(n.lastFlickSpeed[i])&lt;.1&amp;&amp;(n.lastFlickSpeed[i]=0),n.slowDownRatio[i]=.95,n.slowDownRatioReverse[i]=1-n.slowDownRatio[i],n.speedDecelerationRatio[i]=1},calculateOverBoundsAnimOffset:function(e,t){n.backAnimStarted[e]||(de[e]&gt;ee.min[e]?n.backAnimDestination[e]=ee.min[e]:de[e]&lt;ee.max[e]&amp;&amp;(n.backAnimDestination[e]=ee.max[e]),n.backAnimDestination[e]!==undefined&amp;&amp;(n.slowDownRatio[e]=.7,n.slowDownRatioReverse[e]=1-n.slowDownRatio[e],n.speedDecelerationRatioAbs[e]&lt;.05&amp;&amp;(n.lastFlickSpeed[e]=0,n.backAnimStarted[e]=!0,$e("bounceZoomPan"+e,de[e],n.backAnimDestination[e],t||300,o.easing.sine.out,function(t){de[e]=t,Ee()}))))},calculateAnimOffset:function(e){n.backAnimStarted[e]||(n.speedDecelerationRatio[e]=n.speedDecelerationRatio[e]*(n.slowDownRatio[e]+n.slowDownRatioReverse[e]-n.slowDownRatioReverse[e]*n.timeDiff/10),n.speedDecelerationRatioAbs[e]=Math.abs(n.lastFlickSpeed[e]*n.speedDecelerationRatio[e]),n.distanceOffset[e]=n.lastFlickSpeed[e]*n.speedDecelerationRatio[e]*n.timeDiff,de[e]+=n.distanceOffset[e])},panAnimLoop:function(){if(Ge.zoomPan&amp;&amp;(Ge.zoomPan.raf=k(n.panAnimLoop),n.now=Me(),n.timeDiff=n.now-n.lastNow,n.lastNow=n.now,n.calculateAnimOffset("x"),n.calculateAnimOffset("y"),Ee(),n.calculateOverBoundsAnimOffset("x"),n.calculateOverBoundsAnimOffset("y"),n.speedDecelerationRatioAbs.x&lt;.05&amp;&amp;n.speedDecelerationRatioAbs.y&lt;.05))return de.x=Math.round(de.x),de.y=Math.round(de.y),Ee(),void Ve("zoomPan")}};return n},Rt=function(e){if(e.calculateSwipeSpeed("y"),ee=a.currItem.bounds,e.backAnimDestination={},e.backAnimStarted={},Math.abs(e.lastFlickSpeed.x)&lt;=.05&amp;&amp;Math.abs(e.lastFlickSpeed.y)&lt;=.05)return e.speedDecelerationRatioAbs.x=e.speedDecelerationRatioAbs.y=0,e.calculateOverBoundsAnimOffset("x"),e.calculateOverBoundsAnimOffset("y"),!0;Ke("zoomPan"),e.lastNow=Me(),e.panAnimLoop()},Pt=function(e,t){var n,i,l;if(ne||(lt=c),"swipe"===e){var s=tt.x-nt.x,u=t.lastFlickDist.x&lt;10;s&gt;30&amp;&amp;(u||t.lastFlickOffset.x&gt;20)?i=-1:s&lt;-30&amp;&amp;(u||t.lastFlickOffset.x&lt;-20)&amp;&amp;(i=1)}i&amp;&amp;((c+=i)&lt;0?(c=r.loop?Ht()-1:0,l=!0):c&gt;=Ht()&amp;&amp;(c=r.loop?0:Ht()-1,l=!0),l&amp;&amp;!r.loop||(ye+=i,pe-=i,n=!0));var d,m=he.x*pe,p=Math.abs(m-ct.x);return n||m&gt;ct.x==t.lastFlickSpeed.x&gt;0?(d=Math.abs(t.lastFlickSpeed.x)&gt;0?p/Math.abs(t.lastFlickSpeed.x):333,d=Math.min(d,400),d=Math.max(d,250)):d=333,lt===c&amp;&amp;(n=!1),ne=!0,Te("mainScrollAnimStart"),$e("mainScroll",ct.x,m,d,o.easing.cubic.out,Re,function(){qe(),ne=!1,lt=-1,(n||lt!==c)&amp;&amp;a.updateCurrItem(),Te("mainScrollAnimComplete")}),n&amp;&amp;a.updateCurrItem(!0),n},Zt=function(e){return 1/Q*e*x},Ft=function(){var e=y,t=Ne(),n=Ue();y&lt;t?e=t:y&gt;n&amp;&amp;(e=n);var i,r=re;return ae&amp;&amp;!Y&amp;&amp;!le&amp;&amp;y&lt;t?(a.close(),!0):(ae&amp;&amp;(i=function(e){Se((1-r)*e+r)}),a.zoomTo(e,0,200,o.easing.cubic.out,i),!0)};be("Gestures",{publicMethods:{initGestures:function(){var e=function(e,t,n,i,o){D=e+t,T=e+n,M=e+i,S=o?e+o:""};(E=z.pointerEvent)&amp;&amp;z.touch&amp;&amp;(z.touch=!1),E?navigator.msPointerEnabled?e("MSPointer","Down","Move","Up","Cancel"):e("pointer","down","move","up","cancel"):z.touch?(e("touch","start","move","end","cancel"),O=!0):e("mouse","down","move","up"),p=T+" "+M+" "+S,f=D,E&amp;&amp;!O&amp;&amp;(O=navigator.maxTouchPoints&gt;1||navigator.msMaxTouchPoints&gt;1),a.likelyTouchDevice=O,h[D]=St,h[T]=At,h[M]=Ot,S&amp;&amp;(h[S]=h[M]),z.touch&amp;&amp;(f+=" mousedown",p+=" mousemove mouseup",h.mousedown=h[D],h.mousemove=h[T],h.mouseup=h[M]),O||(r.allowPanToNext=!1)}}});var Lt,zt,_t,Nt,Ut,Ht,Yt=function(t,n,i,l){var s;Lt&amp;&amp;clearTimeout(Lt),Nt=!0,_t=!0,t.initialLayout?(s=t.initialLayout,t.initialLayout=null):s=r.getThumbBoundsFn&amp;&amp;r.getThumbBoundsFn(c);var d,m,p=i?r.hideAnimationDuration:r.showAnimationDuration,f=function(){Ve("initialZoom"),i?(a.template.removeAttribute("style"),a.bg.removeAttribute("style")):(Se(1),n&amp;&amp;(n.style.display="block"),o.addClass(e,"pswp--animated-in"),Te("initialZoom"+(i?"OutEnd":"InEnd"))),l&amp;&amp;l(),Nt=!1};if(!p||!s||s.x===undefined)return Te("initialZoom"+(i?"Out":"In")),y=t.initialZoomLevel,Ze(de,t.initialPosition),Ee(),e.style.opacity=i?0:1,Se(1),void(p?setTimeout(function(){f()},p):f());d=u,m=!a.currItem.src||a.currItem.loadError||r.showHideOpacity,t.miniImg&amp;&amp;(t.miniImg.style.webkitBackfaceVisibility="hidden"),i||(y=s.w/t.w,de.x=s.x,de.y=s.y-Z,a[m?"template":"bg"].style.opacity=.001,Ee()),Ke("initialZoom"),i&amp;&amp;!d&amp;&amp;o.removeClass(e,"pswp--animated-in"),m&amp;&amp;(i?o[(d?"remove":"add")+"Class"](e,"pswp--animate_opacity"):setTimeout(function(){o.addClass(e,"pswp--animate_opacity")},30)),Lt=setTimeout(function(){if(Te("initialZoom"+(i?"Out":"In")),i){var n=s.w/t.w,a={x:de.x,y:de.y},r=y,l=re,u=function(t){1===t?(y=n,de.x=s.x,de.y=s.y-L):(y=(n-r)*t+r,de.x=(s.x-a.x)*t+a.x,de.y=(s.y-L-a.y)*t+a.y),Ee(),m?e.style.opacity=1-t:Se(l-t*l)};d?$e("initialZoom",0,1,p,o.easing.cubic.out,u,f):(u(1),Lt=setTimeout(f,p+20))}else y=t.initialZoomLevel,Ze(de,t.initialPosition),Ee(),Se(1),m?e.style.opacity=1:Se(1),Lt=setTimeout(f,p+20)},i?25:90)},Wt={},Bt=[],Gt={index:0,errorMsg:'&lt;div class="pswp__error-msg"&gt;&lt;a href="%url%" target="_blank"&gt;The image&lt;/a&gt; could not be loaded.&lt;/div&gt;',forceProgressiveLoading:!1,preload:[1,1],getNumItemsFn:function(){return zt.length}},Xt=function(e,t,n){if(e.src&amp;&amp;!e.loadError){var i=!n;if(i&amp;&amp;(e.vGap||(e.vGap={top:0,bottom:0}),Te("parseVerticalMargin",e)),Wt.x=t.x,Wt.y=t.y-e.vGap.top-e.vGap.bottom,i){var o=Wt.x/e.w,a=Wt.y/e.h;e.fitRatio=o&lt;a?o:a;var l=r.scaleMode;"orig"===l?n=1:"fit"===l&amp;&amp;(n=e.fitRatio),n&gt;1&amp;&amp;(n=1),e.initialZoomLevel=n,e.bounds||(e.bounds={center:{x:0,y:0},max:{x:0,y:0},min:{x:0,y:0}})}if(!n)return;return function(e,t,n){var i=e.bounds;i.center.x=Math.round((Wt.x-t)/2),i.center.y=Math.round((Wt.y-n)/2)+e.vGap.top,i.max.x=t&gt;Wt.x?Math.round(Wt.x-t):i.center.x,i.max.y=n&gt;Wt.y?Math.round(Wt.y-n)+e.vGap.top:i.center.y,i.min.x=t&gt;Wt.x?0:i.center.x,i.min.y=n&gt;Wt.y?e.vGap.top:i.center.y}(e,e.w*n,e.h*n),i&amp;&amp;n===e.initialZoomLevel&amp;&amp;(e.initialPosition=e.bounds.center),e.bounds}return e.w=e.h=0,e.initialZoomLevel=e.fitRatio=1,e.bounds={center:{x:0,y:0},max:{x:0,y:0},min:{x:0,y:0}},e.initialPosition=e.bounds.center,e.bounds},Vt=function(e,t,n,i,o,r){t.loadError||i&amp;&amp;(t.imageAppended=!0,$t(t,i,t===a.currItem&amp;&amp;we),n.appendChild(i),r&amp;&amp;setTimeout(function(){t&amp;&amp;t.loaded&amp;&amp;t.placeholder&amp;&amp;(t.placeholder.style.display="none",t.placeholder=null)},500))},Kt=function(e){e.loading=!0,e.loaded=!1;var t=e.img=o.createEl("pswp__img","img"),n=function(){e.loading=!1,e.loaded=!0,e.loadComplete?e.loadComplete(e):e.img=null,t.onload=t.onerror=null,t=null};return t.onload=n,t.onerror=function(){e.loadError=!0,n()},t.src=e.src,t.alt=e.alt||"",t},qt=function(e,t){if(e.src&amp;&amp;e.loadError&amp;&amp;e.container)return t&amp;&amp;(e.container.innerHTML=""),e.container.innerHTML=r.errorMsg.replace("%url%",e.src),!0},$t=function(e,t,n){if(e.src){t||(t=e.container.lastChild);var i=n?e.w:Math.round(e.w*e.fitRatio),o=n?e.h:Math.round(e.h*e.fitRatio);e.placeholder&amp;&amp;!e.loaded&amp;&amp;(e.placeholder.style.width=i+"px",e.placeholder.style.height=o+"px"),t.style.width=i+"px",t.style.height=o+"px"}},jt=function(){if(Bt.length){for(var e,t=0;t&lt;Bt.length;t++)(e=Bt[t]).holder.index===e.index&amp;&amp;Vt(e.index,e.item,e.baseDiv,e.img,0,e.clearPlaceholder);Bt=[]}};be("Controller",{publicMethods:{lazyLoadItem:function(e){e=Ie(e);var t=Ut(e);t&amp;&amp;(!t.loaded&amp;&amp;!t.loading||b)&amp;&amp;(Te("gettingData",e,t),t.src&amp;&amp;Kt(t))},initController:function(){o.extend(r,Gt,!0),a.items=zt=n,Ut=a.getItemAt,Ht=r.getNumItemsFn,r.loop,Ht()&lt;3&amp;&amp;(r.loop=!1),De("beforeChange",function(e){var t,n=r.preload,i=null===e||e&gt;=0,o=Math.min(n[0],Ht()),l=Math.min(n[1],Ht());for(t=1;t&lt;=(i?l:o);t++)a.lazyLoadItem(c+t);for(t=1;t&lt;=(i?o:l);t++)a.lazyLoadItem(c-t)}),De("initialLayout",function(){a.currItem.initialLayout=r.getThumbBoundsFn&amp;&amp;r.getThumbBoundsFn(c)}),De("mainScrollAnimComplete",jt),De("initialZoomInEnd",jt),De("destroy",function(){for(var e,t=0;t&lt;zt.length;t++)(e=zt[t]).container&amp;&amp;(e.container=null),e.placeholder&amp;&amp;(e.placeholder=null),e.img&amp;&amp;(e.img=null),e.preloader&amp;&amp;(e.preloader=null),e.loadError&amp;&amp;(e.loaded=e.loadError=!1);Bt=null})},getItemAt:function(e){return e&gt;=0&amp;&amp;zt[e]!==undefined&amp;&amp;zt[e]},allowProgressiveImg:function(){return r.forceProgressiveLoading||!O||r.mouseUsed||screen.width&gt;1200},setContent:function(e,t){r.loop&amp;&amp;(t=Ie(t));var n=a.getItemAt(e.index);n&amp;&amp;(n.container=null);var i,s=a.getItemAt(t);if(s){Te("gettingData",t,s),e.index=t,e.item=s;var u=s.container=o.createEl("pswp__zoom-wrap");if(!s.src&amp;&amp;s.html&amp;&amp;(s.html.tagName?u.appendChild(s.html):u.innerHTML=s.html),qt(s),Xt(s,me),!s.src||s.loadError||s.loaded)s.src&amp;&amp;!s.loadError&amp;&amp;((i=o.createEl("pswp__img","img")).style.opacity=1,i.src=s.src,$t(s,i),Vt(0,s,u,i));else{if(s.loadComplete=function(n){if(l){if(e&amp;&amp;e.index===t){if(qt(n,!0))return n.loadComplete=n.img=null,Xt(n,me),Oe(n),void(e.index===c&amp;&amp;a.updateCurrZoomItem());n.imageAppended?!Nt&amp;&amp;n.placeholder&amp;&amp;(n.placeholder.style.display="none",n.placeholder=null):z.transform&amp;&amp;(ne||Nt)?Bt.push({item:n,baseDiv:u,img:n.img,index:t,holder:e,clearPlaceholder:!0}):Vt(0,n,u,n.img,0,!0)}n.loadComplete=null,n.img=null,Te("imageLoadComplete",t,n)}},o.features.transform){var d="pswp__img pswp__img--placeholder";d+=s.msrc?"":" pswp__img--placeholder--blank";var m=o.createEl(d,s.msrc?"img":"");s.msrc&amp;&amp;(m.src=s.msrc),$t(s,m),u.appendChild(m),s.placeholder=m}s.loading||Kt(s),a.allowProgressiveImg()&amp;&amp;(!_t&amp;&amp;z.transform?Bt.push({item:s,baseDiv:u,img:s.img,index:t,holder:e}):Vt(0,s,u,s.img,0,!0))}_t||t!==c?Oe(s):(te=u.style,Yt(s,i||s.img)),e.el.innerHTML="",e.el.appendChild(u)}else e.el.innerHTML=""},cleanSlide:function(e){e.img&amp;&amp;(e.img.onload=e.img.onerror=null),e.loaded=e.loading=e.img=e.imageAppended=!1}}});var Jt,Qt,en={},tn=function(e,t,n){var i=document.createEvent("CustomEvent"),o={origEvent:e,target:e.target,releasePoint:t,pointerType:n||"touch"};i.initCustomEvent("pswpTap",!0,!0,o),e.target.dispatchEvent(i)};be("Tap",{publicMethods:{initTap:function(){De("firstTouchStart",a.onTapStart),De("touchRelease",a.onTapRelease),De("destroy",function(){en={},Jt=null})},onTapStart:function(e){e.length&gt;1&amp;&amp;(clearTimeout(Jt),Jt=null)},onTapRelease:function(e,t){var n,i;if(t&amp;&amp;!K&amp;&amp;!X&amp;&amp;!Xe&amp;&amp;a.container.contains(e.target)){var r=t;if(Jt&amp;&amp;(clearTimeout(Jt),Jt=null,n=r,i=en,Math.abs(n.x-i.x)&lt;25&amp;&amp;Math.abs(n.y-i.y)&lt;25))return void Te("doubleTap",r);if("mouse"===t.type)return void tn(e,t,"mouse");if("BUTTON"===e.target.tagName.toUpperCase()||o.hasClass(e.target,"pswp__single-tap"))return void tn(e,t);Ze(en,r),Jt=setTimeout(function(){tn(e,t),Jt=null},300)}}}}),be("DesktopZoom",{publicMethods:{initDesktopZoom:function(){F||(O?De("mouseUsed",function(){a.setupDesktopZoom()}):a.setupDesktopZoom(!0))},setupDesktopZoom:function(t){Qt={};var n="wheel mousewheel DOMMouseScroll";De("bindEvents",function(){o.bind(e,n,a.handleMouseWheel)}),De("unbindEvents",function(){Qt&amp;&amp;o.unbind(e,n,a.handleMouseWheel)}),a.mouseZoomedIn=!1;var i,r=function(){a.mouseZoomedIn&amp;&amp;(o.removeClass(e,"pswp--zoomed-in"),a.mouseZoomedIn=!1),y&lt;1?o.addClass(e,"pswp--zoom-allowed"):o.removeClass(e,"pswp--zoom-allowed"),l()},l=function(){i&amp;&amp;(o.removeClass(e,"pswp--dragging"),i=!1)};De("resize",r),De("afterChange",r),De("pointerDown",function(){a.mouseZoomedIn&amp;&amp;(i=!0,o.addClass(e,"pswp--dragging"))}),De("pointerUp",l),t||r()},handleMouseWheel:function(e){if(y&lt;=a.currItem.fitRatio)return r.modal&amp;&amp;(!r.closeOnScroll||Xe||G?e.preventDefault():A&amp;&amp;Math.abs(e.deltaY)&gt;2&amp;&amp;(u=!0,a.close())),!0;if(e.stopPropagation(),Qt.x=0,"deltaX"in e)1===e.deltaMode?(Qt.x=18*e.deltaX,Qt.y=18*e.deltaY):(Qt.x=e.deltaX,Qt.y=e.deltaY);else if("wheelDelta"in e)e.wheelDeltaX&amp;&amp;(Qt.x=-.16*e.wheelDeltaX),e.wheelDeltaY?Qt.y=-.16*e.wheelDeltaY:Qt.y=-.16*e.wheelDelta;else{if(!("detail"in e))return;Qt.y=e.detail}_e(y,!0);var t=de.x-Qt.x,n=de.y-Qt.y;(r.modal||t&lt;=ee.min.x&amp;&amp;t&gt;=ee.max.x&amp;&amp;n&lt;=ee.min.y&amp;&amp;n&gt;=ee.max.y)&amp;&amp;e.preventDefault(),a.panTo(t,n)},toggleDesktopZoom:function(t){t=t||{x:me.x/2+fe.x,y:me.y/2+fe.y};var n=r.getDoubleTapZoom(!0,a.currItem),i=y===n;a.mouseZoomedIn=!i,a.zoomTo(i?a.currItem.initialZoomLevel:n,t,333),o[(i?"remove":"add")+"Class"](e,"pswp--zoomed-in")}}});var nn,on,an,rn,ln,sn,un,cn,dn,mn,pn,fn,hn={history:!0,galleryUID:1},yn=function(){return pn.hash.substring(1)},xn=function(){nn&amp;&amp;clearTimeout(nn),an&amp;&amp;clearTimeout(an)},vn=function(){var e=yn(),t={};if(e.length&lt;5)return t;var n,i=e.split("&amp;");for(n=0;n&lt;i.length;n++)if(i[n]){var o=i[n].split("=");o.length&lt;2||(t[o[0]]=o[1])}if(r.galleryPIDs){var a=t.pid;for(t.pid=0,n=0;n&lt;zt.length;n++)if(zt[n].pid===a){t.pid=n;break}}else t.pid=parseInt(t.pid,10)-1;return t.pid&lt;0&amp;&amp;(t.pid=0),t},gn=function(){if(an&amp;&amp;clearTimeout(an),Xe||G)an=setTimeout(gn,500);else{rn?clearTimeout(on):rn=!0;var e=c+1,t=Ut(c);t.hasOwnProperty("pid")&amp;&amp;(e=t.pid);var n=un+"&amp;gid="+r.galleryUID+"&amp;pid="+e;cn||-1===pn.hash.indexOf(n)&amp;&amp;(mn=!0);var i=pn.href.split("#")[0]+"#"+n;fn?"#"+n!==window.location.hash&amp;&amp;history[cn?"replaceState":"pushState"]("",document.title,i):cn?pn.replace(i):pn.hash=n,cn=!0,on=setTimeout(function(){rn=!1},60)}};be("History",{publicMethods:{initHistory:function(){if(o.extend(r,hn,!0),r.history){pn=window.location,mn=!1,dn=!1,cn=!1,un=yn(),fn="pushState"in history,un.indexOf("gid=")&gt;-1&amp;&amp;(un=(un=un.split("&amp;gid=")[0]).split("?gid=")[0]),De("afterChange",a.updateURL),De("unbindEvents",function(){o.unbind(window,"hashchange",a.onHashChange)});var e=function(){sn=!0,dn||(mn?history.back():un?pn.hash=un:fn?history.pushState("",document.title,pn.pathname+pn.search):pn.hash=""),xn()};De("unbindEvents",function(){u&amp;&amp;e()}),De("destroy",function(){sn||e()}),De("firstUpdate",function(){c=vn().pid});var t=un.indexOf("pid=");t&gt;-1&amp;&amp;"&amp;"===(un=un.substring(0,t)).slice(-1)&amp;&amp;(un=un.slice(0,-1)),setTimeout(function(){l&amp;&amp;o.bind(window,"hashchange",a.onHashChange)},40)}},onHashChange:function(){if(yn()===un)return dn=!0,void a.close();rn||(ln=!0,a.goTo(vn().pid),ln=!1)},updateURL:function(){xn(),ln||(cn?nn=setTimeout(gn,800):gn())}}}),o.extend(a,je)}});/*! PhotoSwipe Default UI - 4.1.3 - 2019-01-08
* http://photoswipe.com
* Copyright (c) 2019 Dmitry Semenov; */
!function(e,t){"function"==typeof define&amp;&amp;define.amd?define(t):"object"==typeof exports?module.exports=t():e.PhotoSwipeUI_Default=t()}(this,function(){"use strict";return function(e,t){var n,o,l,r,i,s,a,u,c,p,d,m,f,h,w,g,v,b,_=this,C=!1,T=!0,I=!0,E={barsSize:{top:44,bottom:"auto"},closeElClasses:["item","caption","zoom-wrap","ui","top-bar"],timeToIdle:4e3,timeToIdleOutside:1e3,loadingIndicatorDelay:1e3,addCaptionHTMLFn:function(e,t){return e.title?(t.children[0].innerHTML=e.title,!0):(t.children[0].innerHTML="",!1)},closeEl:!0,captionEl:!0,fullscreenEl:!0,zoomEl:!0,shareEl:!0,counterEl:!0,arrowEl:!0,preloaderEl:!0,tapToClose:!1,tapToToggleControls:!0,clickToCloseNonZoomable:!0,shareButtons:[{id:"facebook",label:"Share on Facebook",url:"https://www.facebook.com/sharer/sharer.php?u={{url}}"},{id:"twitter",label:"Tweet",url:"https://twitter.com/intent/tweet?text={{text}}&amp;url={{url}}"},{id:"pinterest",label:"Pin it",url:"http://www.pinterest.com/pin/create/button/?url={{url}}&amp;media={{image_url}}&amp;description={{text}}"},{id:"download",label:"Download image",url:"{{raw_image_url}}",download:!0}],getImageURLForShare:function(){return e.currItem.src||""},getPageURLForShare:function(){return window.location.href},getTextForShare:function(){return e.currItem.title||""},indexIndicatorSep:" / ",fitControlsWidth:1200},F=function(e){if(g)return!0;e=e||window.event,w.timeToIdle&amp;&amp;w.mouseUsed&amp;&amp;!c&amp;&amp;z();for(var n,o,l=(e.target||e.srcElement).getAttribute("class")||"",r=0;r&lt;P.length;r++)(n=P[r]).onTap&amp;&amp;l.indexOf("pswp__"+n.name)&gt;-1&amp;&amp;(n.onTap(),o=!0);if(o){e.stopPropagation&amp;&amp;e.stopPropagation(),g=!0;var i=t.features.isOldAndroid?600:30;setTimeout(function(){g=!1},i)}},x=function(e,n,o){t[(o?"add":"remove")+"Class"](e,"pswp__"+n)},S=function(){var e=1===w.getNumItemsFn();e!==h&amp;&amp;(x(o,"ui--one-slide",e),h=e)},k=function(){x(a,"share-modal--hidden",I)},K=function(){return(I=!I)?(t.removeClass(a,"pswp__share-modal--fade-in"),setTimeout(function(){I&amp;&amp;k()},300)):(k(),setTimeout(function(){I||t.addClass(a,"pswp__share-modal--fade-in")},30)),I||O(),!1},L=function(t){var n=(t=t||window.event).target||t.srcElement;return e.shout("shareLinkClick",t,n),!(!n.href||!n.hasAttribute("download")&amp;&amp;(window.open(n.href,"pswp_share","scrollbars=yes,resizable=yes,toolbar=no,location=yes,width=550,height=420,top=100,left="+(window.screen?Math.round(screen.width/2-275):100)),I||K(),1))},O=function(){for(var e,t,n,o,l="",r=0;r&lt;w.shareButtons.length;r++)e=w.shareButtons[r],t=w.getImageURLForShare(e),n=w.getPageURLForShare(e),o=w.getTextForShare(e),l+='&lt;a href="'+e.url.replace("{{url}}",encodeURIComponent(n)).replace("{{image_url}}",encodeURIComponent(t)).replace("{{raw_image_url}}",t).replace("{{text}}",encodeURIComponent(o))+'" target="_blank" class="pswp__share--'+e.id+'"'+(e.download?"download":"")+"&gt;"+e.label+"&lt;/a&gt;",w.parseShareButtonOut&amp;&amp;(l=w.parseShareButtonOut(e,l));a.children[0].innerHTML=l,a.children[0].onclick=L},R=function(e){for(var n=0;n&lt;w.closeElClasses.length;n++)if(t.hasClass(e,"pswp__"+w.closeElClasses[n]))return!0},y=0,z=function(){clearTimeout(b),y=0,c&amp;&amp;_.setIdle(!1)},M=function(e){var t=(e=e||window.event).relatedTarget||e.toElement;t&amp;&amp;"HTML"!==t.nodeName||(clearTimeout(b),b=setTimeout(function(){_.setIdle(!0)},w.timeToIdleOutside))},D=function(e){m!==e&amp;&amp;(x(d,"preloader--active",!e),m=e)},A=function(n){var i=n.vGap;if(!e.likelyTouchDevice||w.mouseUsed||screen.width&gt;w.fitControlsWidth){var s=w.barsSize;if(w.captionEl&amp;&amp;"auto"===s.bottom)if(r||((r=t.createEl("pswp__caption pswp__caption--fake")).appendChild(t.createEl("pswp__caption__center")),o.insertBefore(r,l),t.addClass(o,"pswp__ui--fit")),w.addCaptionHTMLFn(n,r,!0)){var a=r.clientHeight;i.bottom=parseInt(a,10)||44}else i.bottom=s.top;else i.bottom="auto"===s.bottom?0:s.bottom;i.top=s.top}else i.top=i.bottom=0},P=[{name:"caption",option:"captionEl",onInit:function(e){l=e}},{name:"share-modal",option:"shareEl",onInit:function(e){a=e},onTap:function(){K()}},{name:"button--share",option:"shareEl",onInit:function(e){s=e},onTap:function(){K()}},{name:"button--zoom",option:"zoomEl",onTap:e.toggleDesktopZoom},{name:"counter",option:"counterEl",onInit:function(e){i=e}},{name:"button--close",option:"closeEl",onTap:e.close},{name:"button--arrow--left",option:"arrowEl",onTap:e.prev},{name:"button--arrow--right",option:"arrowEl",onTap:e.next},{name:"button--fs",option:"fullscreenEl",onTap:function(){n.isFullscreen()?n.exit():n.enter()}},{name:"preloader",option:"preloaderEl",onInit:function(e){d=e}}];_.init=function(){var i;t.extend(e.options,E,!0),w=e.options,o=t.getChildByClass(e.scrollWrap,"pswp__ui"),(p=e.listen)("onVerticalDrag",function(e){T&amp;&amp;e&lt;.95?_.hideControls():!T&amp;&amp;e&gt;=.95&amp;&amp;_.showControls()}),p("onPinchClose",function(e){T&amp;&amp;e&lt;.9?(_.hideControls(),i=!0):i&amp;&amp;!T&amp;&amp;e&gt;.9&amp;&amp;_.showControls()}),p("zoomGestureEnded",function(){(i=!1)&amp;&amp;!T&amp;&amp;_.showControls()}),p("beforeChange",_.update),p("doubleTap",function(t){var n=e.currItem.initialZoomLevel;e.getZoomLevel()!==n?e.zoomTo(n,t,333):e.zoomTo(w.getDoubleTapZoom(!1,e.currItem),t,333)}),p("preventDragEvent",function(e,t,n){var o=e.target||e.srcElement;o&amp;&amp;o.getAttribute("class")&amp;&amp;e.type.indexOf("mouse")&gt;-1&amp;&amp;(o.getAttribute("class").indexOf("__caption")&gt;0||/(SMALL|STRONG|EM)/i.test(o.tagName))&amp;&amp;(n.prevent=!1)}),p("bindEvents",function(){t.bind(o,"pswpTap click",F),t.bind(e.scrollWrap,"pswpTap",_.onGlobalTap),e.likelyTouchDevice||t.bind(e.scrollWrap,"mouseover",_.onMouseOver)}),p("unbindEvents",function(){I||K(),v&amp;&amp;clearInterval(v),t.unbind(document,"mouseout",M),t.unbind(document,"mousemove",z),t.unbind(o,"pswpTap click",F),t.unbind(e.scrollWrap,"pswpTap",_.onGlobalTap),t.unbind(e.scrollWrap,"mouseover",_.onMouseOver),n&amp;&amp;(t.unbind(document,n.eventK,_.updateFullscreen),n.isFullscreen()&amp;&amp;(w.hideAnimationDuration=0,n.exit()),n=null)}),p("destroy",function(){w.captionEl&amp;&amp;(r&amp;&amp;o.removeChild(r),t.removeClass(l,"pswp__caption--empty")),a&amp;&amp;(a.children[0].onclick=null),t.removeClass(o,"pswp__ui--over-close"),t.addClass(o,"pswp__ui--hidden"),_.setIdle(!1)}),w.showAnimationDuration||t.removeClass(o,"pswp__ui--hidden"),p("initialZoomIn",function(){w.showAnimationDuration&amp;&amp;t.removeClass(o,"pswp__ui--hidden")}),p("initialZoomOut",function(){t.addClass(o,"pswp__ui--hidden")}),p("parseVerticalMargin",A),function(){var e,n,l,r=function(o){if(o)for(var r=o.length,i=0;i&lt;r;i++){e=o[i],n=e.className;for(var s=0;s&lt;P.length;s++)l=P[s],n.indexOf("pswp__"+l.name)&gt;-1&amp;&amp;(w[l.option]?(t.removeClass(e,"pswp__element--disabled"),l.onInit&amp;&amp;l.onInit(e)):t.addClass(e,"pswp__element--disabled"))}};r(o.children);var i=t.getChildByClass(o,"pswp__top-bar");i&amp;&amp;r(i.children)}(),w.shareEl&amp;&amp;s&amp;&amp;a&amp;&amp;(I=!0),S(),w.timeToIdle&amp;&amp;p("mouseUsed",function(){t.bind(document,"mousemove",z),t.bind(document,"mouseout",M),v=setInterval(function(){2==++y&amp;&amp;_.setIdle(!0)},w.timeToIdle/2)}),w.fullscreenEl&amp;&amp;!t.features.isOldAndroid&amp;&amp;(n||(n=_.getFullscreenAPI()),n?(t.bind(document,n.eventK,_.updateFullscreen),_.updateFullscreen(),t.addClass(e.template,"pswp--supports-fs")):t.removeClass(e.template,"pswp--supports-fs")),w.preloaderEl&amp;&amp;(D(!0),p("beforeChange",function(){clearTimeout(f),f=setTimeout(function(){e.currItem&amp;&amp;e.currItem.loading?(!e.allowProgressiveImg()||e.currItem.img&amp;&amp;!e.currItem.img.naturalWidth)&amp;&amp;D(!1):D(!0)},w.loadingIndicatorDelay)}),p("imageLoadComplete",function(t,n){e.currItem===n&amp;&amp;D(!0)}))},_.setIdle=function(e){c=e,x(o,"ui--idle",e)},_.update=function(){T&amp;&amp;e.currItem?(_.updateIndexIndicator(),w.captionEl&amp;&amp;(w.addCaptionHTMLFn(e.currItem,l),x(l,"caption--empty",!e.currItem.title)),C=!0):C=!1,I||K(),S()},_.updateFullscreen=function(o){o&amp;&amp;setTimeout(function(){e.setScrollOffset(0,t.getScrollY())},50),t[(n.isFullscreen()?"add":"remove")+"Class"](e.template,"pswp--fs")},_.updateIndexIndicator=function(){w.counterEl&amp;&amp;(i.innerHTML=e.getCurrentIndex()+1+w.indexIndicatorSep+w.getNumItemsFn())},_.onGlobalTap=function(n){var o=(n=n||window.event).target||n.srcElement;if(!g)if(n.detail&amp;&amp;"mouse"===n.detail.pointerType){if(R(o))return void e.close();t.hasClass(o,"pswp__img")&amp;&amp;(1===e.getZoomLevel()&amp;&amp;e.getZoomLevel()&lt;=e.currItem.fitRatio?w.clickToCloseNonZoomable&amp;&amp;e.close():e.toggleDesktopZoom(n.detail.releasePoint))}else if(w.tapToToggleControls&amp;&amp;(T?_.hideControls():_.showControls()),w.tapToClose&amp;&amp;(t.hasClass(o,"pswp__img")||R(o)))return void e.close()},_.onMouseOver=function(e){var t=(e=e||window.event).target||e.srcElement;x(o,"ui--over-close",R(t))},_.hideControls=function(){t.addClass(o,"pswp__ui--hidden"),T=!1},_.showControls=function(){T=!0,C||_.update(),t.removeClass(o,"pswp__ui--hidden")},_.supportsFullscreen=function(){var e=document;return!!(e.exitFullscreen||e.mozCancelFullScreen||e.webkitExitFullscreen||e.msExitFullscreen)},_.getFullscreenAPI=function(){var t,n=document.documentElement,o="fullscreenchange";return n.requestFullscreen?t={enterK:"requestFullscreen",exitK:"exitFullscreen",elementK:"fullscreenElement",eventK:o}:n.mozRequestFullScreen?t={enterK:"mozRequestFullScreen",exitK:"mozCancelFullScreen",elementK:"mozFullScreenElement",eventK:"moz"+o}:n.webkitRequestFullscreen?t={enterK:"webkitRequestFullscreen",exitK:"webkitExitFullscreen",elementK:"webkitFullscreenElement",eventK:"webkit"+o}:n.msRequestFullscreen&amp;&amp;(t={enterK:"msRequestFullscreen",exitK:"msExitFullscreen",elementK:"msFullscreenElement",eventK:"MSFullscreenChange"}),t&amp;&amp;(t.enter=function(){if(u=w.closeOnScroll,w.closeOnScroll=!1,"webkitRequestFullscreen"!==this.enterK)return e.template[this.enterK]();e.template[this.enterK](Element.ALLOW_KEYBOARD_INPUT)},t.exit=function(){return w.closeOnScroll=u,document[this.exitK]()},t.isFullscreen=function(){return document[this.elementK]}),t}}});jQuery(function(t){if("undefined"==typeof wc_single_product_params)return!1;var e;t("body").on("init",".wc-tabs-wrapper, .woocommerce-tabs",function(){t(this).find(".wc-tab, .woocommerce-tabs .panel:not(.panel .panel)").hide();var e=window.location.hash,i=window.location.href,o=t(this).find(".wc-tabs, ul.tabs").first();e.toLowerCase().indexOf("comment-")&gt;=0||"#reviews"===e||"#tab-reviews"===e?o.find("li.reviews_tab a").trigger("click"):i.indexOf("comment-page-")&gt;0||i.indexOf("cpage=")&gt;0?o.find("li.reviews_tab a").trigger("click"):"#tab-additional_information"===e?o.find("li.additional_information_tab a").trigger("click"):o.find("li:first a").trigger("click")}).on("click",".wc-tabs li a, ul.tabs li a",function(e){e.preventDefault();var i=t(this),o=i.closest(".wc-tabs-wrapper, .woocommerce-tabs"),a=o.find(".wc-tabs, ul.tabs");a.find("li").removeClass("active"),a.find('a[role="tab"]').attr("aria-selected","false").attr("tabindex","-1"),o.find(".wc-tab, .panel:not(.panel .panel)").hide(),i.closest("li").addClass("active"),i.attr("aria-selected","true").attr("tabindex","0"),o.find("#"+i.attr("href").split("#")[1]).show()}).on("keydown",".wc-tabs li a, ul.tabs li a",function(e){var i=e.key,o="ArrowRight",a="ArrowLeft",r="Home",n="End";if([o,a,n,r].includes(i)){e.preventDefault();var s=t(this),l=s.closest(".wc-tabs-wrapper, .woocommerce-tabs").find(".wc-tabs, ul.tabs").find('a[role="tab"]'),c=l.length-1,d=l.index(s),p=i===a?d-1:d+1;i===a&amp;&amp;0===d||i===n?p=c:(o===i&amp;&amp;d===c||i===r)&amp;&amp;(p=0),l.eq(p).focus()}}).on("focusout",".wc-tabs li a, ul.tabs li a, #respond p.stars a",function(){e.data("flexslider")&amp;&amp;setTimeout(function(){t(document.activeElement).closest([".stars",".tabs",".wc-tabs"].join(", ")).length?e.data("flexslider").animating=!0:e.data("flexslider").animating=!1},0)}).on("click","a.woocommerce-review-link",function(){return t(".reviews_tab a").trigger("click"),!0}).on("init","#rating",function(){t("#rating").hide().before('&lt;p class="stars"&gt;\t\t\t\t\t\t&lt;span role="group" aria-labeledby="comment-form-rating-label"&gt;\t\t\t\t\t\t\t&lt;a role="radio" tabindex="0" aria-checked="false" class="star-1" href="#"&gt;'+wc_single_product_params.i18n_rating_options[0]+'&lt;/a&gt;\t\t\t\t\t\t\t&lt;a role="radio" tabindex="-1" aria-checked="false" class="star-2" href="#"&gt;'+wc_single_product_params.i18n_rating_options[1]+'&lt;/a&gt;\t\t\t\t\t\t\t&lt;a role="radio" tabindex="-1" aria-checked="false" class="star-3" href="#"&gt;'+wc_single_product_params.i18n_rating_options[2]+'&lt;/a&gt;\t\t\t\t\t\t\t&lt;a role="radio" tabindex="-1" aria-checked="false" class="star-4" href="#"&gt;'+wc_single_product_params.i18n_rating_options[3]+'&lt;/a&gt;\t\t\t\t\t\t\t&lt;a role="radio" tabindex="-1" aria-checked="false" class="star-5" href="#"&gt;'+wc_single_product_params.i18n_rating_options[4]+"&lt;/a&gt;\t\t\t\t\t\t&lt;/span&gt;\t\t\t\t\t&lt;/p&gt;")}).on("click","#respond p.stars a",function(){var e=t(this),i=e.closest("p.stars").find("a").index(e)+1,o=t(this).closest("#respond").find("#rating"),a=t(this).closest(".stars");return o.val(i),e.siblings("a").removeClass("active").attr("aria-checked","false").attr("tabindex","-1"),e.addClass("active").attr("aria-checked","true").attr("tabindex","0"),a.addClass("selected"),!1}).on("click","#respond #submit",function(){var e=t(this).closest("#respond").find("#rating"),i=e.val();if(e.length&gt;0&amp;&amp;!i&amp;&amp;"yes"===wc_single_product_params.review_rating_required)return window.alert(wc_single_product_params.i18n_required_rating_text),!1}).on("keydown","#respond p.stars a",function(e){var i=e.key,o=["ArrowRight","ArrowDown"];o.concat(["ArrowLeft","ArrowUp"]).includes(i)&amp;&amp;(e.preventDefault(),o.includes(i)?t(this).next().focus().click():t(this).prev().focus().click())}),t(".wc-tabs-wrapper, .woocommerce-tabs, #rating").trigger("init");var i=function(e,i){this.$target=e,this.$images=t(".woocommerce-product-gallery__image",e),0!==this.$images.length?(e.data("product_gallery",this),this.flexslider_enabled="function"==typeof t.fn.flexslider&amp;&amp;wc_single_product_params.flexslider_enabled,this.zoom_enabled="function"==typeof t.fn.zoom&amp;&amp;wc_single_product_params.zoom_enabled,this.photoswipe_enabled="undefined"!=typeof PhotoSwipe&amp;&amp;wc_single_product_params.photoswipe_enabled,i&amp;&amp;(this.flexslider_enabled=!1!==i.flexslider_enabled&amp;&amp;this.flexslider_enabled,this.zoom_enabled=!1!==i.zoom_enabled&amp;&amp;this.zoom_enabled,this.photoswipe_enabled=!1!==i.photoswipe_enabled&amp;&amp;this.photoswipe_enabled),1===this.$images.length&amp;&amp;(this.flexslider_enabled=!1),this.initFlexslider=this.initFlexslider.bind(this),this.initZoom=this.initZoom.bind(this),this.initZoomForTarget=this.initZoomForTarget.bind(this),this.initPhotoswipe=this.initPhotoswipe.bind(this),this.onResetSlidePosition=this.onResetSlidePosition.bind(this),this.getGalleryItems=this.getGalleryItems.bind(this),this.openPhotoswipe=this.openPhotoswipe.bind(this),this.trapFocusPhotoswipe=this.trapFocusPhotoswipe.bind(this),this.handlePswpTrapFocus=this.handlePswpTrapFocus.bind(this),this.flexslider_enabled?(this.initFlexslider(i.flexslider),e.on("woocommerce_gallery_reset_slide_position",this.onResetSlidePosition)):this.$target.css("opacity",1),this.zoom_enabled&amp;&amp;(this.initZoom(),e.on("woocommerce_gallery_init_zoom",this.initZoom)),this.photoswipe_enabled&amp;&amp;this.initPhotoswipe()):this.$target.css("opacity",1)};i.prototype.initFlexslider=function(e){var i=this.$target,o=this,a=t.extend({selector:".woocommerce-product-gallery__wrapper &gt; .woocommerce-product-gallery__image",start:function(){i.css("opacity",1)},after:function(t){o.initZoomForTarget(o.$images.eq(t.currentSlide))}},e);i.flexslider(a),t(".woocommerce-product-gallery__wrapper .woocommerce-product-gallery__image:eq(0) .wp-post-image").one("load",function(){var e=t(this);e&amp;&amp;setTimeout(function(){var t=e.closest(".woocommerce-product-gallery__image").height(),i=e.closest(".flex-viewport");t&amp;&amp;i&amp;&amp;i.height(t)},100)}).each(function(){this.complete&amp;&amp;t(this).trigger("load")})},i.prototype.initZoom=function(){this.initZoomForTarget(this.$images.first())},i.prototype.initZoomForTarget=function(e){if(!this.zoom_enabled)return!1;var i=this.$target.width(),o=!1;if(t(e).each(function(e,a){if(t(a).find("img").data("large_image_width")&gt;i)return o=!0,!1}),o){var a=t.extend({touch:!1,callback:function(){var t=this;setTimeout(function(){t.removeAttribute("role"),t.setAttribute("alt",""),t.setAttribute("aria-hidden","true")},100)}},wc_single_product_params.zoom_options);"ontouchstart"in document.documentElement&amp;&amp;(a.on="click"),e.trigger("zoom.destroy"),e.zoom(a),setTimeout(function(){e.find(":hover").length&amp;&amp;e.trigger("mouseover")},100)}},i.prototype.initPhotoswipe=function(){this.zoom_enabled&amp;&amp;this.$images.length&gt;0?(this.$target.prepend('&lt;a href="#" role="button" class="woocommerce-product-gallery__trigger" aria-haspopup="dialog" aria-label="'+wc_single_product_params.i18n_product_gallery_trigger_text+'"&gt;&lt;span aria-hidden="true"&gt;🔍&lt;/span&gt;&lt;/a&gt;'),this.$target.on("click",".woocommerce-product-gallery__trigger",this.openPhotoswipe),this.$target.on("click",".woocommerce-product-gallery__image a",function(t){t.preventDefault()}),this.flexslider_enabled||this.$target.on("click",".woocommerce-product-gallery__image a",this.openPhotoswipe)):this.$target.on("click",".woocommerce-product-gallery__image a",this.openPhotoswipe)},i.prototype.onResetSlidePosition=function(){this.$target.flexslider(0)},i.prototype.getGalleryItems=function(){var e=this.$images,i=[];return e.length&gt;0&amp;&amp;e.each(function(e,o){var a=t(o).find("img");if(a.length){var r=a.attr("data-large_image"),n=a.attr("data-large_image_width"),s=a.attr("data-large_image_height"),l={alt:a.attr("alt"),src:r,w:n,h:s,title:a.attr("data-caption")?a.attr("data-caption"):a.attr("title")};i.push(l)}}),i},i.prototype.openPhotoswipe=function(e){e.preventDefault();var i,o=t(".pswp")[0],a=this.getGalleryItems(),r=t(e.target),n=e.currentTarget,s=this;i=0&lt;r.closest(".woocommerce-product-gallery__trigger").length?this.$target.find(".flex-active-slide"):r.closest(".woocommerce-product-gallery__image");var l=t.extend({index:t(i).index(),addCaptionHTMLFn:function(t,e){return t.title?(e.children[0].textContent=t.title,!0):(e.children[0].textContent="",!1)},timeToIdle:0},wc_single_product_params.photoswipe_options),c=new PhotoSwipe(o,PhotoSwipeUI_Default,a,l);c.listen("afterInit",function(){s.trapFocusPhotoswipe(!0)}),c.listen("close",function(){s.trapFocusPhotoswipe(!1),n.focus()}),c.init()},i.prototype.trapFocusPhotoswipe=function(t){var e=document.querySelector(".pswp");e&amp;&amp;(t?e.addEventListener("keydown",this.handlePswpTrapFocus):e.removeEventListener("keydown",this.handlePswpTrapFocus))},i.prototype.handlePswpTrapFocus=function(t){var e=t.currentTarget.querySelectorAll("button:not([disabled])"),i=Array.from(e).filter(function(t){return"none"!==t.style.display&amp;&amp;"none"!==window.getComputedStyle(t).display});if(!(1&gt;=i.length)){var o=i[0],a=i[i.length-1];"Tab"===t.key&amp;&amp;(t.shiftKey?document.activeElement===o&amp;&amp;(t.preventDefault(),a.focus()):document.activeElement===a&amp;&amp;(t.preventDefault(),o.focus()))}},t.fn.wc_product_gallery=function(t){return new i(this,t||wc_single_product_params),this},t(".woocommerce-product-gallery").each(function(){t(this).trigger("wc-product-gallery-before-init",[this,wc_single_product_params]),e=t(this).wc_product_gallery(wc_single_product_params),t(this).trigger("wc-product-gallery-after-init",[this,wc_single_product_params])})});/*! js-cookie v3.0.5 | MIT */
!function(e,t){"object"==typeof exports&amp;&amp;"undefined"!=typeof module?module.exports=t():"function"==typeof define&amp;&amp;define.amd?define(t):(e="undefined"!=typeof globalThis?globalThis:e||self,function(){var n=e.Cookies,o=e.Cookies=t();o.noConflict=function(){return e.Cookies=n,o}}())}(this,function(){"use strict";function e(e){for(var t=1;t&lt;arguments.length;t++){var n=arguments[t];for(var o in n)e[o]=n[o]}return e}return function t(n,o){function r(t,r,i){if("undefined"!=typeof document){"number"==typeof(i=e({},o,i)).expires&amp;&amp;(i.expires=new Date(Date.now()+864e5*i.expires)),i.expires&amp;&amp;(i.expires=i.expires.toUTCString()),t=encodeURIComponent(t).replace(/%(2[346B]|5E|60|7C)/g,decodeURIComponent).replace(/[()]/g,escape);var c="";for(var u in i)i[u]&amp;&amp;(c+="; "+u,!0!==i[u]&amp;&amp;(c+="="+i[u].split(";")[0]));return document.cookie=t+"="+n.write(r,t)+c}}return Object.create({set:r,get:function(e){if("undefined"!=typeof document&amp;&amp;(!arguments.length||e)){for(var t=document.cookie?document.cookie.split("; "):[],o={},r=0;r&lt;t.length;r++){var i=t[r].split("="),c=i.slice(1).join("=");try{var u=decodeURIComponent(i[0]);if(o[u]=n.read(c,u),e===u)break}catch(f){}}return e?o[e]:o}},remove:function(t,n){r(t,"",e({},n,{expires:-1}))},withAttributes:function(n){return t(this.converter,e({},this.attributes,n))},withConverter:function(n){return t(e({},this.converter,n),this.attributes)}},{attributes:{value:Object.freeze(o)},converter:{value:Object.freeze(n)}})}({read:function(e){return'"'===e[0]&amp;&amp;(e=e.slice(1,-1)),e.replace(/(%[\dA-F]{2})+/gi,decodeURIComponent)},write:function(e){return encodeURIComponent(e).replace(/%(2[346BF]|3[AC-F]|40|5[BDE]|60|7[BCD])/g,decodeURIComponent)}},{path:"/"})});function focus_populate_live_region(){var e=["woocommerce-message","woocommerce-error","wc-block-components-notice-banner"].map(function(e){return"."+e+'[role="alert"]'}).join(", "),o=document.querySelectorAll(e);if(0!==o.length){var t=o[0];t.setAttribute("tabindex","-1");var n=setTimeout(function(){t.focus(),clearTimeout(n)},500)}}function refresh_sorted_by_live_region(){var e=document.querySelector('.woocommerce-result-count[data-is-sorted-by="true"]');if(e)var o=e.innerHTML,t=setTimeout(function(){e.innerHTML="",e.innerHTML=o,clearTimeout(t)},1e3)}function on_document_ready(){focus_populate_live_region(),refresh_sorted_by_live_region()}jQuery(function(e){e(".woocommerce-ordering").on("change","select.orderby",function(){e(this).closest("form").trigger("submit")}),e("input.qty:not(.product-quantity input.qty)").each(function(){var o=parseFloat(e(this).attr("min"));o&gt;=0&amp;&amp;parseFloat(e(this).val())&lt;o&amp;&amp;e(this).val(o)});var o="store_notice"+(e(".woocommerce-store-notice").data("noticeId")||"");"hidden"===Cookies.get(o)?e(".woocommerce-store-notice").hide():e(".woocommerce-store-notice").show(),e(".woocommerce-store-notice__dismiss-link").on("click",function(t){Cookies.set(o,"hidden",{path:"/"}),e(".woocommerce-store-notice").hide(),t.preventDefault()}),e(".woocommerce-input-wrapper span.description").length&amp;&amp;e(document.body).on("click",function(){e(".woocommerce-input-wrapper span.description:visible").prop("aria-hidden",!0).slideUp(250)}),e(".woocommerce-input-wrapper").on("click",function(e){e.stopPropagation()}),e(".woocommerce-input-wrapper :input").on("keydown",function(o){var t=e(this).parent().find("span.description");if(27===o.which&amp;&amp;t.length&amp;&amp;t.is(":visible"))return t.prop("aria-hidden",!0).slideUp(250),o.preventDefault(),!1}).on("click focus",function(){var o=e(this).parent(),t=o.find("span.description");o.addClass("currentTarget"),e(".woocommerce-input-wrapper:not(.currentTarget) span.description:visible").prop("aria-hidden",!0).slideUp(250),t.length&amp;&amp;t.is(":hidden")&amp;&amp;t.prop("aria-hidden",!1).slideDown(250),o.removeClass("currentTarget")}),e.scroll_to_notices=function(o){o.length&amp;&amp;e("html, body").animate({scrollTop:o.offset().top-100},1e3)},e('.woocommerce form .woocommerce-Input[type="password"]').wrap('&lt;span class="password-input"&gt;&lt;/span&gt;'),e(".woocommerce form input").filter(":password").parent("span").addClass("password-input"),e(".password-input").each(function(){const o=e(this).find("input").attr("id");e(this).append('&lt;button class="show-password-input" aria-label="'+woocommerce_params.i18n_password_show+'" aria-describedBy="'+o+'"&gt;&lt;/button&gt;'),e(this).on("keydown",function(e){"Enter"===e.key&amp;&amp;e.preventDefault()})}),e(".show-password-input").on("click",function(o){o.preventDefault(),e(this).hasClass("display-password")?(e(this).removeClass("display-password"),e(this).attr("aria-label",woocommerce_params.i18n_password_show)):(e(this).addClass("display-password"),e(this).attr("aria-label",woocommerce_params.i18n_password_hide)),e(this).hasClass("display-password")?e(this).siblings(['input[type="password"]']).prop("type","text"):e(this).siblings('input[type="text"]').prop("type","password"),e(this).siblings("input").focus()}),e("#customer_login .password-input").on("keydown",function(o){"Enter"===o.key&amp;&amp;e(this).closest("form").find("[type=submit]").click()}),e("a.coming-soon-footer-banner-dismiss").on("click",function(o){var t=e(o.target);e.ajax({type:"post",url:t.data("rest-url"),data:{woocommerce_meta:{coming_soon_banner_dismissed:"yes"}},beforeSend:function(e){e.setRequestHeader("X-WP-Nonce",t.data("rest-nonce"))},complete:function(){e("#coming-soon-footer-banner").hide()}})}),e(document.body).on("item_removed_from_classic_cart",focus_populate_live_region)}),document.addEventListener("DOMContentLoaded",on_document_ready);window.eae={};window.renderIconHtml=function(view,elementor,sett,control_name,wClass='',index=''){var icon_class='';let imageHtml='';let lottie_data=[];let iconHtml='';if(sett[control_name+'_graphic_type']!='none'&amp;&amp;sett[control_name+'_graphic_type']!=''){icon_class+=' eae-gbl-icon eae-graphic-type-'+sett[control_name+'_graphic_type']+' elementor-animation-'+sett[control_name+'_hover_animation'];if(wClass!=''){icon_class+=' '+wClass}
icon_class+=' eae-graphic-view-'+sett[control_name+'_view'];if(sett[control_name+'_view']!='default'){icon_class+=' eae-graphic-shape-'+sett[control_name+'_shape']}
if(sett[control_name+'_graphic_type']=='lottie'){if((sett[control_name+'_lottie_animation_url']!='')||(sett[control_name+'_source_json'].url!='')){icon_class+=' eae-lottie-animation eae-lottie';lottie_data={'loop':(sett[control_name+'_lottie_animation_loop']==='yes')?!0:!1,'reverse':(sett[control_name+'_lottie_animation_reverse']==='yes')?!0:!1,}
if(sett[control_name+'_source']=='media_file'&amp;&amp;(sett[control_name+'_source_json'].url!='')){lottie_data.url=sett[control_name+'_source_json'].url}else{lottie_data.url=sett[control_name+'_lottie_animation_url']}
view.addRenderAttribute('panel-icon-'+index,'data-lottie-settings',JSON.stringify(lottie_data))}}
view.addRenderAttribute('panel-icon-'+index,'class',icon_class);if(sett[control_name+'_graphic_type']=='lottie'){if(lottie_data.url!=undefined){iconHtml=`&lt;span ${view.getRenderAttributeString( 'panel-icon-'+ index )}&gt;&lt;/span&gt;`}}else{if(sett[control_name+'_graphic_type']==='icon'){if(sett[control_name+'_graphic_icon'].value!=''){var icon=elementor.helpers.renderIcon(view,sett[control_name+'_graphic_icon'],{'aria-hidden':!0},'i','object');imageHtml=icon.value;iconHtml=`&lt;span ${ view.getRenderAttributeString( 'panel-icon-'+ index ) }&gt;
                                ${imageHtml}
                                &lt;/span&gt;`}}else{if(sett[control_name+'_graphic_image'].url!=''){var image={id:sett[control_name+'_graphic_image'].id,url:sett[control_name+'_graphic_image'].url,size:sett[control_name+'_graphic_image_size'],dimension:sett[control_name+'_graphic_image_custom_dimension'],model:view.getEditModel()};var image_url=elementor.imagesManager.getImageUrl(image);imageHtml='&lt;img src="'+image_url+'" /&gt;';iconHtml=`&lt;span ${ view.getRenderAttributeString( 'panel-icon-'+ index ) }&gt;
                                    ${imageHtml}
                                &lt;/span&gt;`}}}}
return iconHtml}
window.eae.validateHTMLTag=function($tag,$collection=null,$fallback=null){if($collection==null){$collection=['h1','h2','h3','h4','h5','h6','p','span','div']}
if($fallback==null){$fallback='h3'}
if($collection.includes($tag)){return $tag}else{return $fallback}};jQuery(window).on('load',function(){jQuery(".ug-slider-inner").wrap("&lt;a href='#yksiktooted-galerii'&gt;&lt;/a&gt;")});jQuery(document).ready(function(){jQuery(".elementor-accordion-item &gt; div:empty").each(function(){jQuery(this).parent('div.elementor-accordion-item').hide()})});jQuery(document).ready(function($){function checkAndClick(element,index){if($(element).hasClass('active-tab')){$(".ug-thumbs-strip .ug-thumbs-strip-inner").children().eq(index).click()}}
const observer=new MutationObserver(function(mutationsList){for(let mutation of mutationsList){if(mutation.attributeName==='class'){if(mutation.target.id==='jet-tabs-control-1451'){checkAndClick('#jet-tabs-control-1451',0)}else if(mutation.target.id==='jet-tabs-control-1452'){checkAndClick('#jet-tabs-control-1452',1)}else if(mutation.target.id==='jet-tabs-control-1453'){checkAndClick('#jet-tabs-control-1453',2)}else if(mutation.target.id==='jet-tabs-control-1454'){checkAndClick('#jet-tabs-control-1454',3)}}}});observer.observe(document.getElementById('jet-tabs-control-1451'),{attributes:!0,childList:!1,subtree:!1});observer.observe(document.getElementById('jet-tabs-control-1452'),{attributes:!0,childList:!1,subtree:!1});observer.observe(document.getElementById('jet-tabs-control-1453'),{attributes:!0,childList:!1,subtree:!1});observer.observe(document.getElementById('jet-tabs-control-1454'),{attributes:!0,childList:!1,subtree:!1})});jQuery(document).ready(function(){jQuery(".jet-tabs__control &gt; div:not(:empty)").each(function(){jQuery(this).parent('div.jet-tabs__control').attr("style","display: block !important")})});document.addEventListener("DOMContentLoaded",function(){const buttons=document.querySelectorAll(".second-file-button a");buttons.forEach(button=&gt;{const hasLink=button.hasAttribute("href");if(!hasLink){button.closest(".second-file-button").style.display="none"}})});jQuery(document).ready(function($){$('.pdf-dialog-openn').on('click',function(){var pdfContainer=$('#custom-popup');var pdfHtml='&lt;div class="_df_book df-lite" id="df_10531" data-title="merendususte-kataloog" _slug="merendususte-kataloog" wpoptions="true" thumb="https://tammer.ee/wp-content/uploads/2023/11/Marinedoors_kataloog2024.png" thumbtype="bg"&gt;&lt;/div&gt;';pdfContainer.html(pdfHtml).fadeIn();$('#custom-overlay').fadeIn();var script=document.createElement('script');script.type='application/javascript';script.textContent='window.option_df_10531 = {"outline":[],"backgroundColor":"#ffffff00","forceFit":"true","autoEnableOutline":"false","autoEnableThumbnail":"false","overwritePDFOutline":"false","direction":"1","pageSize":"0","soundEnable":"false","source":"\/wp-content\/uploads\/2024\/11\/Marinedoors_kataloog2024.pdf","wpOptions":"true"}; if(window.DFLIP &amp;&amp; window.DFLIP.parseBooks){window.DFLIP.parseBooks();}';document.body.appendChild(script)});$('#custom-overlay').on('click',function(){$('#custom-popup').fadeOut();$('#custom-overlay').fadeOut()})});jQuery(document).ready(function($){setTimeout(function(){$('#jet-tabs-control-1452').addClass('hide-product-tab');$('#jet-tabs-control-1453').addClass('hide-product-tab');$('.jet-tabs__control-wrapper').children().each(function(){if(!$(this).hasClass('hide-product-tab')){$(this).click();return!1}})},100)});window.option_df_10531={"outline":[],"backgroundColor":"#ffffff00","autoEnableOutline":"false","autoEnableThumbnail":"false","overwritePDFOutline":"false","direction":"1","pageSize":"0","soundEnable":"false","source":"https:\/\/tammer.ee\/wp-content\/uploads\/2024\/11\/Marinedoors_kataloog2024.pdf","wpOptions":"true"};if(window.DFLIP&amp;&amp;window.DFLIP.parseBooks){window.DFLIP.parseBooks()};const lazyloadRunObserver=()=&gt;{const lazyloadBackgrounds=document.querySelectorAll(`.e-con.e-parent:not(.e-lazyloaded)`);const lazyloadBackgroundObserver=new IntersectionObserver((entries)=&gt;{entries.forEach((entry)=&gt;{if(entry.isIntersecting){let lazyloadBackground=entry.target;if(lazyloadBackground){lazyloadBackground.classList.add('e-lazyloaded')}
lazyloadBackgroundObserver.unobserve(entry.target)}})},{rootMargin:'200px 0px 200px 0px'});lazyloadBackgrounds.forEach((lazyloadBackground)=&gt;{lazyloadBackgroundObserver.observe(lazyloadBackground)})};const events=['DOMContentLoaded','elementor/lazyload/observe',];events.forEach((event)=&gt;{document.addEventListener(event,lazyloadRunObserver)});(function(){var c=document.body.className;c=c.replace(/woocommerce-no-js/,'woocommerce-js');document.body.className=c})();jQuery(window).on("elementor/frontend/init",(function(){elementorFrontend.hooks.addAction("frontend/element_ready/wts-gmap.default",(function(e){var t=e.find(".eae-markers");0!=t.length&amp;&amp;(map=function(a){var n=(t=e.find(".eae-markers")).data("zoom"),i=a.find(".marker"),r=t.data("style"),o=(t.data("scroll"),{zoom:n,center:new google.maps.LatLng(0,0),mapTypeId:google.maps.MapTypeId.ROADMAP,styles:r}),s=new google.maps.Map(a[0],o);return s.markers=[],i.each((function(){!function(a,n){var i=t.data("animate");t.data("show-info-window-onload");t=e.find(".eae-markers");var r=new google.maps.LatLng(a.attr("data-lat"),a.attr("data-lng"));if(icon_img=a.attr("data-icon"),""!=icon_img)var o={url:a.attr("data-icon"),scaledSize:new google.maps.Size(a.attr("data-icon-size"),a.attr("data-icon-size"))};var s=new google.maps.Marker({position:r,map:n,icon:o,animation:google.maps.Animation.DROP});"animate-yes"==i&amp;&amp;"yes"!=a.data("info-window")&amp;&amp;s.setAnimation(google.maps.Animation.BOUNCE);"animate-yes"==i&amp;&amp;google.maps.event.addListener(s,"click",(function(){s.setAnimation(null)}));if(n.markers.push(s),a.html()){var l=new google.maps.InfoWindow({content:a.html()});"yes"==a.data("info-window")&amp;&amp;l.open(n,s),google.maps.event.addListener(s,"click",(function(){l.open(n,s)}))}"animate-yes"==i&amp;&amp;google.maps.event.addListener(l,"closeclick",(function(){s.setAnimation(google.maps.Animation.BOUNCE)}))}(jQuery(this),s)})),function(e,t){var a=new google.maps.LatLngBounds;jQuery.each(e.markers,(function(e,t){var n=new google.maps.LatLng(t.position.lat(),t.position.lng());a.extend(n)})),1==e.markers.length?(e.setCenter(a.getCenter()),e.setZoom(t)):e.fitBounds(a)}(s,n),s}(e.find(".eae-markers")))})),elementorFrontend.hooks.addAction("frontend/element_ready/global",(function(e){var t,a,n,i,r,o,s,l=[],d=[],c=e.children(".eae-section-bs").children(".eae-section-bs-inner");c&amp;&amp;c.data("eae-bg-slider")&amp;&amp;(slider_images=c.data("eae-bg-slider"),t=c.data("eae-bg-slider-transition"),a=c.data("eae-bg-slider-animation"),i=("yes"==(n=c.data("eae-bg-custom-overlay"))||c.data("eae-bg-slider-overlay"),eae_editor.plugin_url+"assets/lib/vegas/overlays/"+c.data("eae-bg-slider-overlay")),r=c.data("eae-bg-slider-cover"),o=c.data("eae-bs-slider-delay"),s=c.data("eae-bs-slider-timer"),"undefined"!=typeof slider_images&amp;&amp;(l=slider_images.split(","),jQuery.each(l,(function(e,t){var a=[];a.src=t,d.push(a)})),c.vegas({slides:d,transition:t,animation:a,overlay:i,cover:r,delay:o,timer:s,init:function(){"yes"==n&amp;&amp;c.children(".vegas-overlay").css("background-image","")}})))}))}));var isEditMode=!1,popupInstance=[];!function(e){e(window).on("elementor/frontend/init",(function(){var t=function(e){e.find(".e-con").each((function(){elementorFrontend.elementsHandler.runReadyTrigger(jQuery(this))})),e.find(".elementor-section").each((function(){elementorFrontend.elementsHandler.runReadyTrigger(jQuery(this))})),e.find(".elementor-column").each((function(){elementorFrontend.elementsHandler.runReadyTrigger(jQuery(this))})),e.find(".elementor-widget").each((function(){elementorFrontend.elementsHandler.runReadyTrigger(jQuery(this))}))},a=function(e,t){function a(e){$icons=t(document).find(e).find(".eae-ic-icon-wrap"),window.innerWidth&lt;767?$icons.each((function(e,a){t(a).css("top",t(a).height()/2+8+"px"),t(a).next(".eae-info-circle-item__content-wrap").css("padding-top",t(a).height()/2+8+"px")})):$icons.each((function(e,a){t(a).css("margin-left",-.5*t(a).outerWidth()),t(a).css("margin-top",-.5*t(a).outerHeight()),$a=function(e){return e=(e-90)*Math.PI/180,{x:50+45*Math.cos(e),y:50+45*Math.sin(e)}}($angle),$b=360/$icons.length,t(a).css("left",$a.x+"%"),t(a).css("top",$a.y+"%"),$angle+=$b}))}$wrap_class=".elementor-element-"+e.data("id"),$angle=0,a(e);var n=null;function i(){"yes"==e.find(".eae-info-circle").data("autoplay")&amp;&amp;(n=setInterval(r,$autoplayDuration))}function r(){e.find(".eae-active").next().length&gt;0?e.find(".eae-active").next().addClass("eae-active").siblings().removeClass("eae-active"):e.find(".eae-info-circle-item").eq(0).addClass("eae-active").siblings().removeClass("eae-active")}$autoplayDuration=e.find(".eae-info-circle").data("delay"),i(),e.find(".eae-ic-icon-wrap").hover((function(){clearInterval(n)}),(function(){i()})),e.find(".eae-info-circle-item").length&gt;0&amp;&amp;t(e.find(".eae-info-circle-item")[0]).addClass("eae-active"),e.find(".eae-ic-icon-wrap").on("click",(function(){e.find(".eae-info-circle-item").removeClass("eae-active"),t(this).parent().addClass("eae-active")})),e.hasClass("eae-mouseenter-yes")&amp;&amp;e.find(".eae-ic-icon-wrap").on("mouseenter",(function(){e.find(".eae-info-circle-item").removeClass("eae-active"),t(this).parent().addClass("eae-active")})),window.addEventListener("resize",a.bind(this,$wrap_class))},n=function(e,t){const a=".elementor-element-"+e.data("id"),n=document.querySelector(a),i=n.querySelector(".eae-timeline"),r=i.dataset.topOffset,o=n.querySelectorAll(".eae-timeline-item"),s=n.querySelectorAll(".eae-tl-icon-wrapper"),l=n.querySelector(".eae-timline-progress-bar");n.querySelector(".eae-pb-inner-line"),s[s.length-1].getBoundingClientRect().bottom;function d(){const e=o[0].getBoundingClientRect(),t=(o[o.length-1].getBoundingClientRect(),s[0].getBoundingClientRect().bottom-e.top),a=s[0].getBoundingClientRect(),n=s[0].offsetLeft+s[0].offsetWidth/2,i=s[s.length-1].getBoundingClientRect();l.style.height=i.top-a.bottom+"px",l.style.top=t+"px",l.style.left=n+"px",l.style.display="block"}function c(){const e=n.querySelector(".eae-pb-inner-line"),t=Math.abs(window.scrollY+parseFloat(r)),a=i.getBoundingClientRect().top+window.scrollY;s[s.length-1].getBoundingClientRect().bottom,window.scrollY;t&gt;a?(e.style.height=t-a+"px",o.forEach(((e,a)=&gt;{let n=e.getBoundingClientRect().top+window.scrollY;t&gt;n?e.classList.add("eae-tl-item-focused"):e.classList.remove("eae-tl-item-focused")}))):o[0].classList.remove("eae-tl-item-focused")}d(),c(),window.addEventListener("resize",(()=&gt;{d()})),document.addEventListener("scroll",(()=&gt;{window.requestAnimationFrame?window.requestAnimationFrame((()=&gt;{c()})):c()}))};function i(e,t,a){var n=new Date;n.setTime(n.getTime()+60*a*60*1e3);var i="expires="+n.toUTCString();document.cookie=e+"="+t+";"+i+";path=/"}function r(e){for(var t=e+"=",a=decodeURIComponent(document.cookie).split(";"),n=0;n&lt;a.length;n++){for(var i=a[n];" "==i.charAt(0);)i=i.substring(1);if(0==i.indexOf(t))return i.substring(t.length,i.length)}return""}var o=function(e,t){$is_rtl=jQuery("body").hasClass("rtl"),$wrapper=e.find(".eae-progress-bar");$wrapper.attr("data-skill");var a=$wrapper.attr("data-value"),n=$wrapper.attr("data-skin"),i=($wrapper.find(".eae-pb-bar-skill"),$wrapper.find(".eae-pb-bar-value")),r=$wrapper.find(".eae-pb-bar"),o=$wrapper.find(".eae-pb-bar-inner");"skin1"===n&amp;&amp;t(o).attr("style","width : "+a+"%"),"skin2"===n&amp;&amp;t(o).attr("style","width : "+a+"%"),"skin3"===n&amp;&amp;(t(i).addClass("eae-pb-bar-value--aligned-value"),$is_rtl?t(i).attr("style","right :"+a+"%"):t(i).attr("style","left :"+a+"%"),t(o).attr("style","width :"+a+"%")),"skin4"===n&amp;&amp;(t(i).addClass("eae-pb-bar-value--aligned-value"),$is_rtl?t(i).attr("style","right :"+a+"%"):t(i).attr("style","left :"+a+"%"),t(o).attr("style","width :"+a+"%"),t(r).addClass("eae-pb-bar--no-overflow")),"skin5"===n&amp;&amp;(t(i).addClass("eae-pb-bar-value--aligned-value"),$is_rtl?t(i).attr("style","right :"+a+"%"):t(i).attr("style","left :"+a+"%"),t(o).attr("style","width :"+a+"%")),$wrapper.each((function(e,t){let a=window.scrollY;const n=new IntersectionObserver((e=&gt;{e.forEach((e=&gt;{const t=window.scrollY;if(e.isIntersecting){let t=e.target.querySelector(".eae-pb-bar-value"),a=e.target.querySelector(".eae-pb-bar-skill"),n=e.target.querySelector(".eae-pb-bar-inner");null==t||t.classList.contains("js-animated")||t.classList.add("js-animated"),null==a||a.classList.contains("js-animated")||a.classList.add("js-animated"),null==n||n.classList.contains("js-animated")||n.classList.add("js-animated")}else e.isIntersecting||e.target.classList.remove("animate");a=t}))}),{root:null,rootMargin:"0px 0px -100px 0px",threshold:0});n.observe(t)}))},s=function(e,t){var a=e.find(".eae-content-switcher-wrapper"),n=(e.data("id"),a.find(".eae-content-switch-button"));n.each((function(e,i){t(this).on("click",(function(e){e.preventDefault();let i=t(this).find(".eae-content-switch-label");if(!t(this).hasClass("active")){t(n).removeClass("active");let e=t(i).attr("id");t(this).addClass("active");var r=t(a).find(".eae-cs-content-section");t(r).removeClass("active");let o=t(a).find(".eae-content-section-"+e);t(o).addClass("active"),window.dispatchEvent(new Event("resize"))}}))}))},l=function(e,t){let a=e.find(".eae-content-switcher-wrapper"),n=(e.data("id"),a.find(".eae-cs-switch-label")),i=a.find(".eae-content-switch-label.primary-label");const r=t(i).attr("item_id");let o=a.find(".eae-content-switch-label.secondary-label");const s=t(o).attr("item_id");let l=a.find(".eae-cs-content-section.eae-content-section-"+r),d=a.find(".eae-cs-content-section.eae-content-section-"+s);t(n).on("click",(function(e){t(this).find("input.eae-content-toggle-switch").is(":checked")?(o.addClass("active"),d.addClass("active"),i.removeClass("active"),l.removeClass("active")):(i.addClass("active"),l.addClass("active"),o.removeClass("active"),d.removeClass("active")),window.dispatchEvent(new Event("resize"))}))};e.fn.EAEHoverDirection=function(t){var a=e.extend({inaccuracy:30,speed:200},t);this.find(".overlay").css({top:-9999999}),this.mouseenter((function(t){container=e(this),overlay=container.find(".overlay"),parentOffset=container.offset(),relX=t.pageX-parentOffset.left,relY=t.pageY-parentOffset.top,overlay.css({top:0,left:0,width:container.width(),height:container.height()}),relX&gt;container.width()-a.inaccuracy?overlay.css({top:0,left:container.width()}):relX&lt;a.inaccuracy?overlay.css({top:0,left:-container.width()}):relY&gt;container.height()-a.inaccuracy?overlay.css({top:container.width(),left:0}):relY&lt;a.inaccuracy&amp;&amp;overlay.css({top:-container.width(),left:0}),overlay.animate({top:0,left:0},a.speed)})),this.mouseleave((function(t){container=e(this),overlay=container.find(".overlay"),parentOffset=container.offset(),relX=t.pageX-parentOffset.left,relY=t.pageY-parentOffset.top,relX&lt;=0&amp;&amp;overlay.animate({top:0,left:-container.width()},a.speed),relX&gt;=container.width()&amp;&amp;overlay.animate({top:0,left:container.width()},a.speed),relY&lt;=0&amp;&amp;overlay.animate({left:0,top:-container.height()},a.speed),relY&gt;=container.height()&amp;&amp;overlay.animate({left:0,top:container.height()},a.speed)}))};let d=function(e,t){const a=e.find(".eae-chart-outer-container"),n=".elementor-element-"+e.data("id"),i=document.querySelector(n+" .eae-chart-outer-container"),r=e.find("#eae-chart-canvas");let o=a.data("settings");e.find(".eae-chart-outer-container");new IntersectionObserver(((e,t)=&gt;{e.forEach((e=&gt;{const a=e.target;e.isIntersecting&amp;&amp;(a.classList.contains("trigger")||(a.classList.add("trigger"),new Chart(r,o)),t.unobserve(a))}))}),{root:null,threshold:.3}).observe(i)};const c=function(e,t,a=null,n){let i={},r=[],o=".elementor-element-"+t+" .eae-swiper-container",s=elementorFrontend.config.responsive.activeBreakpoints;const l={slidesPerView:"slidesPerView",slidesPerGroup:"slidesPerGroup",spaceBetween:"spaceBetween"},d=".elementor-element-"+t;if(null!==a){t=a.data("id");o=d+' .eae-swiper-container[data-eae-slider-id="'+a.find(".swiper-container").data("eae-slider-id")+'"]'}if("yes"===n.data("show-thumbnail")){i=function(e,t,a,n){let i={};const r={};if(e.hasOwnProperty("mobile"))for(const e in t)a.hasOwnProperty(e)&amp;&amp;(i[e]=a[e].mobile);return n&amp;&amp;Object.keys(n).map((e=&gt;{const t=parseInt(n[e]);"desktop"===e&amp;&amp;(e="default");const i=parseInt(a.spaceBetween[e]),o=parseInt(a.slidesPerView[e]);r[t-1]={spaceBetween:i,slidesPerView:o}})),i.breakpoints=r,i.direction="horizontal",i.watchSlidesVisibility=!0,i.watchSlidesProgress=!0,i.freeMode=!0,i.slideToClickedSlide=!0,i}(s,l,n.data("thumb-settings"),e.breakpoints_value),i.el=jQuery(".elementor-element-"+t+" .eae-thumb-container")}if(void 0===e)return!1;if(r={direction:e.direction,speed:e.speed,autoHeight:e.autoHeight,autoplay:e.autoplay,effect:e.effect,loop:e.loop,zoom:e.zoom,wrapperClass:"eae-swiper-wrapper",slideClass:"eae-swiper-slide",observer:!0,observeParents:!0},s.hasOwnProperty("mobile"))for(const t in l)e.hasOwnProperty(t)&amp;&amp;(r[t]=e[t].mobile);e.loop&amp;&amp;e.hasOwnProperty("slidersPerView")&amp;&amp;document.querySelectorAll(d+" .eae-swiper-slide").length&lt;e.slidesPerView.tablet&amp;&amp;(r.loop=!1);const c={};if(e.hasOwnProperty("breakpoints_value")&amp;&amp;Object.keys(e.breakpoints_value).map((t=&gt;{const a=parseInt(e.breakpoints_value[t]);"desktop"===t&amp;&amp;(t="default");const n=parseInt(e.spaceBetween[t]),i=parseInt(e.slidesPerView[t]),r=parseInt(e.slidesPerGroup[t]);c[a-1]={spaceBetween:n,slidesPerView:i,slidesPerGroup:r}})),r.breakpoints=c,r.keyboard="yes"===e.keyboard&amp;&amp;{enabled:!0,onlyInViewport:!0},"yes"===e.navigation&amp;&amp;(r.navigation={nextEl:d+" .eae-swiper-button-next",prevEl:d+" .eae-swiper-button-prev"}),""!==e.ptype&amp;&amp;(r.pagination={el:d+" .eae-swiper-pagination",type:e.ptype,clickable:e.clickable}),"yes"==e.scrollbar&amp;&amp;(r.scrollbar={el:d+" .eae-swiper-scrollbar",hide:!0}),r.thumbs={swiper:i},"undefined"==typeof Swiper){new(0,elementorFrontend.utils.swiper)(jQuery(o),r).then((a=&gt;{let n=a;p(n);const i=e.pause_on_hover;"yes"==i&amp;&amp;e.autoplay&amp;&amp;f(n,i,t)}))}else{const a=new Swiper(".elementor-element-"+t+" .eae-swiper-container",r);p(a);const n=e.pause_on_hover;"yes"==n&amp;&amp;f(a,n,t)}jQuery(".elementor-element-"+t+" .eae-swiper-container").css("visibility","visible")},p=function(e){e.length&gt;0?e.forEach((function(t){t.on("slideChangeTransitionStart",(function(){t.$wrapperEl.find(".ae-featured-bg-yes").each((function(){if("none"==jQuery(this).css("background-image")){let e=jQuery(this).attr("data-ae-bg");jQuery(this).css("background-image","url("+e+")")}})),t.$wrapperEl.find(".ae-bg-color-yes").each((function(){let e=jQuery(this).attr("data-ae-bg-color");"rgba(0, 0, 0, 0)"===jQuery(this).css("background-color")&amp;&amp;jQuery(this).css("background-color",e)})),t.$wrapperEl.find(".swiper-slide-duplicate").find(".elementor-invisible").each((function(){elementorFrontend.elementsHandler.runReadyTrigger(jQuery(this))})),t.$wrapperEl.find(".swiper-slide").find(".animated").each((function(){elementorFrontend.elementsHandler.runReadyTrigger(jQuery(this))}))})),t.on("click",(function(){const t=e.clickedSlide;if(void 0===t)return;const a=t.querySelector(".ae-link-yes");if(null!==a&amp;&amp;0!=a.length){void 0!==jQuery(a).data("ae-url")&amp;&amp;(jQuery(a).data("ae-url")&amp;&amp;jQuery(a).hasClass("ae-new-window-yes")?window.open(jQuery(a).data("ae-url")):location.href=jQuery(a).data("ae-url"))}})),t.init()})):(e.on("slideChangeTransitionStart",(function(){e.$wrapperEl.find(".ae-featured-bg-yes").each((function(){if("none"==jQuery(this).css("background-image")){let e=jQuery(this).attr("data-ae-bg");jQuery(this).css("background-image","url("+e+")")}})),e.$wrapperEl.find(".ae-bg-color-yes").each((function(){let e=jQuery(this).attr("data-ae-bg-color");"rgba(0, 0, 0, 0)"===jQuery(this).css("background-color")&amp;&amp;jQuery(this).css("background-color",e)})),e.$wrapperEl.find(".swiper-slide-duplicate").find(".elementor-invisible").each((function(){elementorFrontend.elementsHandler.runReadyTrigger(jQuery(this))})),e.$wrapperEl.find(".swiper-slide").find(".animated").each((function(){elementorFrontend.elementsHandler.runReadyTrigger(jQuery(this))}))})),e.on("click",(function(){const t=e.clickedSlide;if(void 0===t)return;const a=t.querySelector(".ae-link-yes");if(null!==a&amp;&amp;0!=a.length){void 0!==jQuery(a).data("ae-url")&amp;&amp;(jQuery(a).data("ae-url")&amp;&amp;jQuery(a).hasClass("ae-new-window-yes")?window.open(jQuery(a).data("ae-url")):location.href=jQuery(a).data("ae-url"))}})),e.init())},f=function(e,t,a){jQuery(".elementor-element-"+a+" .eae-swiper-container").hover((function(){e.autoplay.stop()}),(function(){e.autoplay.start()}))};var u,m=elementorModules.frontend.handlers.Base;u=m.extend({getDefaultSettings:function(){return{settings:this.getElementSettings()}},getDefaultElements:function(){const e=this.$element.data("id"),t=document.querySelector(".elementor-element-"+e),a=t.querySelector(".wts-eae-coupon-code-wrapper");return{eid:e,element:t,wrapper:a}},onInit:function(){const{settings:t}=this.getDefaultSettings(),{wrapper:a}=this.getDefaultElements(),{element:n}=this.getDefaultElements();var i=n.querySelector(".eae-cc-button"),r=n.querySelector(".eae-code");if(n.querySelectorAll(".wts-eae-coupon-code-wrapper").forEach((e=&gt;{let t=e.querySelector(".eae-lottie");if(null!=t){let e=JSON.parse(t.getAttribute("data-lottie-settings")),a=lottie.loadAnimation({container:t,path:e.url,renderer:"svg",loop:e.loop});1==e.reverse&amp;&amp;a.setDirection(-1)}})),null!=i&amp;&amp;i.addEventListener("click",(function(){const e=r.getAttribute("data-code-value"),a=document.createElement("textarea");a.value=e,document.body.appendChild(a),a.select(),document.execCommand("copy"),document.body.removeChild(a);const n=i.innerHTML;let o;"scratch"==t.coupon_type||"peel"==t.coupon_type||"slide"==t.coupon_type?i.innerText=t.peel_after_copy_button:i.innerText=t.after_copy_button,o="standard"==t.coupon_type?t.sta_speed:t.peel_speed,setTimeout((function(){i.innerHTML=n}),o)})),"peel"==t.coupon_type&amp;&amp;""!=t.dynamic_coupon){var o=new Peel("#fade-out",{corner:Peel.Corners.TOP_RIGHT});o.setFadeThreshold(.9),o.handleDrag((function(e,t,a){this.setPeelPosition(t,a),1===o.getAmountClipped()&amp;&amp;o.removeEvents()})),o.setPeelPosition(440,100)}if("pop"==t.sta_layout&amp;&amp;""!=t.dynamic_coupon){const C=a.querySelector(".eae-coupon-popup-link"),x=n.getAttribute("data-id");"svg"==t.pop_icon.library?($close_btn_html="",$close_btn_html='&lt;svg class="eae-close" style="-webkit-mask-image: url('+t.pop_icon.value.url+"); mask-image: url("+t.pop_icon.value.url+'); "&gt;&lt;/svg&gt;'):$close_btn_html='&lt;i class="eae-close '+t.pop_icon.value+'"&gt; &lt;/i&gt;',e(C).eaePopup({type:"inline",midClick:!0,mainClass:"eae-coupon-popup eae-popup  eae-cc-"+x,closeMarkup:$close_btn_html,closeBtnInside:"yes"==t.btn_in_out,callbacks:{beforeOpen:function(){""!=t.effect&amp;&amp;(this.st.mainClass=" eae-coupon-popup eae-popup  eae-cc-"+x+" mfp-"+t.effect)},open:function(){var e=C.getAttribute("data-id");const a=document.querySelector(".eae-coupon-popup-"+e);var n=a.querySelector(".eae-cc-button"),i=a.querySelector(".eae-code");const r=n.innerText;n.addEventListener("click",(function(){const e=i.getAttribute("data-code-value"),o=document.createElement("textarea");o.value=e,a.appendChild(o),o.select(),document.execCommand("copy"),a.removeChild(o),n.innerText=t.after_copy_button,setTimeout((function(){n.innerText=r}),t.sta_speed)}))}}}),"yes"==t.preview_modal&amp;&amp;elementorFrontend.isEditMode()&amp;&amp;C.click()}if("slide"==t.coupon_type&amp;&amp;""!=t.dynamic_coupon){var s=a.querySelector(".eae-slide-fr");if("yes"==t.preview_modal&amp;&amp;elementorFrontend.isEditMode())s.style.display="none";else{var l=0,d=0,c=0;function p(e){c=e.clientX-l,e.clientY-d,c&gt;2||c&lt;t.Peel_scratch_width||(s.style.left=c+"px")}s.addEventListener("mousedown",(function(e){e.preventDefault(),l=e.clientX-s.offsetLeft,d=e.clientY-s.offsetTop,window.addEventListener("mousemove",p,!1)}),!1),window.addEventListener("mouseup",(function(){window.removeEventListener("mousemove",p,!1)}),!1);const S=s;let T;S.addEventListener("touchstart",(e=&gt;{const t=e.touches[0];T=t.clientX-S.getBoundingClientRect().left,S.style.cursor="grabbing"})),S.addEventListener("touchmove",(e=&gt;{if(void 0===T)return;const a=e.touches[0].clientX-T;a&gt;4||a&lt;t.Peel_scratch_width||(S.style.left=a+"px")})),S.addEventListener("touchend",(()=&gt;{T=void 0,S.style.cursor="grab"}))}}if("scratch"===t.coupon_type&amp;&amp;""!=t.dynamic_coupon)if("yes"==t.preview_modal&amp;&amp;elementorFrontend.isEditMode())a.querySelector("#eae-scratch-canvas").style.display="none";else{var f,u;canvas=a.querySelector("#eae-scratch-canvas");var m=canvas.width,g=canvas.height,h=canvas.getContext("2d"),v=new Image,w=new Image;if(null==t.item_bg_image&amp;&amp;null==t.item_bg_color&amp;&amp;null==t.item_bg_color_b&amp;&amp;(v.src=eae.plugin_url+"assets/img/coupon/scratch_img.png",v.onload=function(){h.drawImage(v,0,0,m,g)}),null!=t.item_bg_image)v.src=t.item_bg_image.url,v.onload=function(){h.drawImage(v,0,0,m,g)};else if(null==t.item_bg_color_b&amp;&amp;"classic"==t.item_bg_background&amp;&amp;null==t.item_bg_image){if(null!=t.item_bg_color){let E=h.createLinearGradient(0,0,135,135);E.addColorStop(0,t.item_bg_color),h.fillStyle=E,h.fillRect(0,0,m,g)}}else if(null!=t.item_bg_color_b&amp;&amp;null!=t.item_bg_color&amp;&amp;"gradient"==t.item_bg_background&amp;&amp;null==t.item_bg_image){let L=h.createLinearGradient(0,0,t.item_bg_color_stop.size,t.item_bg_color_b_stop.size);L.addColorStop(0,t.item_bg_color),L.addColorStop(1,t.item_bg_color_b),h.fillStyle=L,h.fillRect(0,0,m,g)}function y(e,t){var a=0,n=0;if(void 0!==t.offsetParent)do{a+=t.offsetLeft,n+=t.offsetTop}while(t=t.offsetParent);return{x:(e.pageX||e.touches[0].clientX)-a,y:(e.pageY||e.touches[0].clientY)-n}}function b(e){f=!0,u=y(e,canvas)}function _(e){if(f){e.preventDefault();for(var t,n,i,r,o,s=y(e,canvas),l=(i=u,r=s,Math.sqrt(Math.pow(r.x-i.x,2)+Math.pow(r.y-i.y,2))),d=function(e,t){return Math.atan2(t.x-e.x,t.y-e.y)}(u,s),c=0;c&lt;l;c++)t=u.x+Math.sin(d)*c-25,n=u.y+Math.cos(d)*c-25,h.globalCompositeOperation="destination-out",h.drawImage(w,t,n);u=s,o=function(e){(!e||e&lt;1)&amp;&amp;(e=1);for(var t=h.getImageData(0,0,m,g).data,a=t.length,n=a/e,i=0,r=i=0;r&lt;a;r+=e)0===parseInt(t[r])&amp;&amp;i++;return Math.round(i/n*100)}(32),(o=o||0)&gt;40&amp;&amp;(a.querySelector(".eae-back-wrapper").style.zIndex="1",a.querySelector(".eae-coupon-canvas").remove())}}function k(e){f=!1}w.src=eae.plugin_url+"assets/img/coupon/brush.png",canvas.addEventListener("mousedown",b,!1),canvas.addEventListener("touchstart",b,!1),canvas.addEventListener("mousemove",_,!1),canvas.addEventListener("touchmove",_,!1),canvas.addEventListener("mouseup",k,!1),canvas.addEventListener("touchend",k,!1)}},onElementChange:function(e){const{wrapper:t}=this.getDefaultElements(),{settings:a}=this.getDefaultSettings();if((""!=a.dynamic_coupon&amp;&amp;"dynamic"==a.source||"static"==a.source)&amp;&amp;"scratch"===a.coupon_type)var n=t.querySelector("#eae-scratch-canvas");if("item_bg_background"==e||"item_bg_color"==e||"item_bg_color_b"==e||"item_bg_color_stop"==e||"item_bg_color_b_stop"==e){var i=n.width,r=n.height,o=n.getContext("2d");if(null==a.item_bg_color_b&amp;&amp;"classic"==a.item_bg_background&amp;&amp;(o.fillStyle=a.item_bg_color,o.fillRect(0,0,i,r)),null!=a.item_bg_color_b&amp;&amp;"gradient"==a.item_bg_background){let e=o.createLinearGradient(0,0,a.item_bg_color_stop.size,a.item_bg_color_b_stop.size);e.addColorStop(0,a.item_bg_color),e.addColorStop(1,a.item_bg_color_b),o.fillStyle=e,o.fillRect(0,0,i,r)}}}});var g;m=elementorModules.frontend.handlers.Base;g=m.extend({getDefaultSettings:function(){return{settings:this.getElementSettings()}},getDefaultElements:function(){const e=this.$element.data("id"),t=document.querySelector(".elementor-element-"+e),a=t.querySelector(".eae-dropbar-wrapper");return{eid:e,element:t,wrapper:a}},onInit:function(){const{settings:e}=this.getDefaultSettings(),{wrapper:t}=this.getDefaultElements(),{element:a}=this.getDefaultElements(),n=t.querySelector(".eae-drop-content");if("hover"===e.content_mode){let a;t.addEventListener("mouseenter",(()=&gt;{clearTimeout(a),a=setTimeout((()=&gt;{t.classList.add("eae-active")}),e.show_delay.size),t.classList.add("eae-animation")})),t.addEventListener("mouseleave",(()=&gt;{e.caption_animation_out||t.classList.remove("eae-animation"),a=setTimeout((()=&gt;{t.classList.remove("eae-active")}),e.hide_delay.size)}))}"click"===e.content_mode&amp;&amp;t.addEventListener("click",(()=&gt;{t.classList.toggle("eae-active"),t.classList.contains("eae-active")?t.classList.add("eae-animation"):e.caption_animation_out||t.classList.remove("eae-animation")})),function(t,a,n){const i=t.parentElement.getBoundingClientRect(),r=t.getBoundingClientRect(),o=t.parentElement,s=window.innerWidth,l={"bottom-left":()=&gt;({top:e.off_set.size?`${o.offsetHeight+e.off_set.size}`:"unset",left:0}),"bottom-center":()=&gt;({top:e.off_set.size?`${o.offsetHeight+e.off_set.size}`:"unset",left:(i.width-r.width)/2}),"bottom-right":()=&gt;({top:e.off_set.size?`${o.offsetHeight+e.off_set.size}`:"unset",left:i.width-r.width}),"top-left":()=&gt;({top:-(r.height+e.off_set.size),left:0}),"top-center":()=&gt;({top:-(r.height+e.off_set.size),left:(i.width-r.width)/2}),"top-right":()=&gt;({top:-(r.height+e.off_set.size),left:i.width-r.width}),"left-top":()=&gt;({top:0,left:-(r.width+e.off_set.size)}),"left-center":()=&gt;({top:(i.height-r.height)/2,left:-(r.width+e.off_set.size)}),"left-bottom":()=&gt;({top:i.height-r.height,left:-(r.width+e.off_set.size)}),"right-top":()=&gt;({top:0,left:i.width+e.off_set.size}),"right-center":()=&gt;({top:(i.height-r.height)/2,left:i.width+e.off_set.size}),"right-bottom":()=&gt;({top:i.height-r.height,left:i.width+e.off_set.size})};if(!l[a])return void console.error("Invalid position provided");let{top:d,left:c}=l[a]();d="string"==typeof d?parseFloat(d):d,c="string"==typeof c?parseFloat(c):c;const p=r.width,f=i.left+c,u=f+p;f&lt;0?c=-i.left:u&gt;s&amp;&amp;(c-=u-s),t.style.top=`${d}px`,t.style.left=`${c}px`;const m={"slide-left":()=&gt;{t.style.clipPath="inset(0 100% 0 0)"},"slide-top":()=&gt;{t.style.clipPath="inset(0 0 100% 0)"},"slide-bottom":()=&gt;{t.style.clipPath="inset(100% 0 0 0)"},"slide-right":()=&gt;{t.style.clipPath="inset(0 0 0 100%)"},"animation-fade":()=&gt;{t.style.opacity="0"}};if(m[n]){if(m[n](),o){const a=e=&gt;{const a={"slide-left":()=&gt;t.style.clipPath=e?"inset(0 0 0 0)":"inset(0 100% 0 0)","slide-top":()=&gt;t.style.clipPath=e?"inset(0 0 0 0)":"inset(0 0 100% 0)","slide-bottom":()=&gt;t.style.clipPath=e?"inset(0 0 0 0)":"inset(100% 0 0 0)","slide-right":()=&gt;t.style.clipPath=e?"inset(0 0 0 0)":"inset(0 0 0 100%)","animation-fade":()=&gt;t.style.opacity=e?"1":"0"};a[n]&amp;&amp;a[n]()};let i,r=!1;"hover"===e.content_mode?(o.addEventListener("mouseenter",(()=&gt;{clearTimeout(i),a(!0)})),o.addEventListener("mouseleave",(()=&gt;{i=setTimeout((()=&gt;{a(!1)}),e.hide_delay.size)}))):o.addEventListener("click",(()=&gt;{r=!r,a(r)}))}}else console.error("Invalid animation type provided")}(n,e.content_position,e.content_animation);var i=t.querySelector(".eae-lottie-animation");if(null!=i){let e=JSON.parse(i.getAttribute("data-lottie-settings")),t=lottie.loadAnimation({container:i,path:e.url,renderer:"svg",loop:e.loop});1==e.reverse&amp;&amp;t.setDirection(-1)}}}),elementorFrontend.hooks.addAction("frontend/element_ready/wts-ab-image.default",(function(e,t){e.find(".eae-img-comp-container").imagesLoaded().done((function(){ab_style=e.find(".eae-img-comp-container").data("ab-style"),slider_pos=e.find(".eae-img-comp-container").data("slider-pos"),"horizontal"===ab_style?(separator_width=parseInt(e.find(".eae-img-comp-overlay").css("border-right-width")),function(e){var t,a;function n(t){var n,i,r,o=0;function s(e){e.preventDefault(),o=1,window.addEventListener("mousemove",d),n.addEventListener("touchmove",c)}function l(){o=0}function d(e){var t;if(0==o)return!1;(t=f(e))&lt;0&amp;&amp;(t=0),t&gt;i&amp;&amp;(t=i),u(t)}function c(e){var t;if(0==o)return!1;(t=p(e))&lt;0&amp;&amp;(t=0),t&gt;i&amp;&amp;(t=i),u(t)}function p(e){var a;return a=t.getBoundingClientRect(),e.changedTouches[0].clientX-a.left}function f(e){var a;return e=e||window.event,a=t.getBoundingClientRect(),e.pageX-a.left}function u(e){t.style.width=e+"px",n.style.left=t.offsetWidth-n.offsetWidth/2-separator_width/2+"px"}i=t.offsetWidth,r=t.offsetHeight,t.style.width=a+"px",(n=(n=e.find(".eae-img-comp-slider"))[0]).style.top=r/2-n.offsetHeight/2+"px",n.style.left=a-n.offsetWidth/2-separator_width/2+"px",e.hasClass("elementor-element-edit-mode")||(n.addEventListener("mousedown",s),window.addEventListener("mouseup",l),n.addEventListener("touchstart",s),window.addEventListener("touchstop",l))}t=e.find(".eae-img-comp-overlay"),a=(a=t.width())*slider_pos/100,n(t[0])}(e)):(separator_width=parseInt(e.find(".eae-img-comp-overlay").css("border-bottom-width")),function(e){var t;function a(t){var a,n,i,r=0;function o(e){e.preventDefault(),r=1,window.addEventListener("mousemove",l),a.addEventListener("touchmove",c)}function s(){r=0}function l(e){var t;if(0==r)return!1;(t=d(e))&lt;0&amp;&amp;(t=0),t&gt;i&amp;&amp;(t=i),f(t)}function d(e){var a,n=0;return e=e||window.event,a=t.getBoundingClientRect(),n=e.pageY-a.top,n-=window.pageYOffset}function c(e){var t;if(0==r)return!1;(t=p(e))&lt;0&amp;&amp;(t=0),t&gt;i&amp;&amp;(t=i),f(t)}function p(e){var a;return a=t.getBoundingClientRect(),e.changedTouches[0].clientY-a.top}function f(e){t.style.height=e+"px",a.style.top=t.offsetHeight-a.offsetHeight/2-separator_width/2+"px"}n=t.offsetWidth,i=t.offsetHeight,t.style.height=start_pos+"px",(a=(a=e.find(".eae-img-comp-slider"))[0]).style.top=start_pos-a.offsetHeight/2-separator_width/2+"px",a.style.left=n/2-a.offsetWidth/2+"px",e.hasClass("elementor-element-edit-mode")||(a.addEventListener("mousedown",o),window.addEventListener("mouseup",s),a.addEventListener("touchstart",o),window.addEventListener("touchstop",s))}t=e.find(".eae-img-comp-overlay"),start_pos=t.height(),start_pos=start_pos*slider_pos/100,a(t[0])}(e))}))})),elementorFrontend.hooks.addAction("frontend/element_ready/global",(function(e,t){e.hasClass("eae-particle-yes")&amp;&amp;(id=e.data("id"),element_type=e.data("element_type"),pdata=e.data("eae-particle"),pdata_wrapper=e.find(".eae-particle-wrapper").data("eae-pdata"),"undefined"!=typeof pdata&amp;&amp;""!=pdata?e.find(".eae-section-bs").length&gt;0?(e.find(".eae-section-bs").after('&lt;div class="eae-particle-wrapper" id="eae-particle-'+id+'"&gt;&lt;/div&gt;'),particlesJS("eae-particle-"+id,pdata)):("column"==element_type?e.prepend('&lt;div class="eae-particle-wrapper" id="eae-particle-'+id+'"&gt;&lt;/div&gt;'):e.prepend('&lt;div class="eae-particle-wrapper " id="eae-particle-'+id+'"&gt;&lt;/div&gt;'),particlesJS("eae-particle-"+id,pdata)):"undefined"!=typeof pdata_wrapper&amp;&amp;""!=pdata_wrapper&amp;&amp;(element_type,e.prepend('&lt;div class="eae-particle-wrapper eae-particle-area" id="eae-particle-'+id+'"&gt;&lt;/div&gt;'),particlesJS("eae-particle-"+id,JSON.parse(pdata_wrapper))))})),elementorFrontend.hooks.addAction("frontend/element_ready/global",(function(e,t){if(e.hasClass("eae-animated-gradient-yes"))if(id=e.data("id"),color=e.data("color"),angle=e.data("angle"),e.hasClass("elementor-element-edit-mode"))color=e.find(".animated-gradient").data("color"),angle=e.find(".animated-gradient").data("angle"),gradient_color_editor="linear-gradient("+angle+","+color+")",e.prepend('&lt;div class="animated-gradient" style="background-image : '+gradient_color_editor+' "&gt;&lt;/div&gt;');else{var a="linear-gradient("+angle+","+color+")";e.css("background-image",a)}})),elementorFrontend.hooks.addAction("frontend/element_ready/wts-modal-popup.default",(function(e,a){new Event("eaePopupLoaded");$preview_modal=e.find(".eae-popup-wrapper").data("preview-modal");var n=e.find(".eae-popup-wrapper").data("effect");$close_btn_type=e.find(".eae-popup-wrapper").data("close-button-type"),$close_btn=e.find(".eae-popup-wrapper").data("close-btn"),"icon"==$close_btn_type?$close_btn_html='&lt;i class="eae-close '+$close_btn+'"&gt; &lt;/i&gt;':$close_btn_html='&lt;svg class="eae-close" style="-webkit-mask: url('+$close_btn+"); mask: url("+$close_btn+'); "&gt;&lt;/svg&gt;';var i=e.find(".eae-popup-container"),r=i.attr("id");void 0!==popupInstance[r]&amp;&amp;null!==popupInstance[r]||(popupInstance[r]=i.find(".eae-popup-content").html(),i.find(".eae-popup-content").html("")),e.find(".eae-popup-wrapper .eae-popup-link").on("click",(function(){r=jQuery(this).data("id"),eae_popup_arr=jQuery(".eae-popup-container.eae-popup-"+r),eae_popup_arr.each((function(e,t){jQuery(t).find(".eae-popup-content").html(popupInstance[r])}))})),$magnific=e.find(".eae-popup-link").eaePopup({type:"inline",disableOn:0,key:null,midClick:!1,mainClass:"eae-popup eae-popup-"+e.find(".eae-popup-link").data("id")+" eae-wrap-"+e.find(".eae-popup-link").data("ctrl-id"),preloader:!0,focus:"",closeOnContentClick:!1,closeOnBgClick:!0,closeBtnInside:e.find(".eae-popup-wrapper").data("close-in-out"),showCloseBtn:!0,enableEscapeKey:!0,modal:!1,alignTop:!1,removalDelay:200,prependTo:null,fixedContentPos:!0,fixedBgPos:"auto",overflowY:"auto",closeMarkup:$close_btn_html,tClose:"Close (Esc)",tLoading:"Loading...",autoFocusLast:!0,callbacks:{beforeOpen:function(){""!=n&amp;&amp;(this.st.mainClass="eae-popup eae-popup-"+e.find(".eae-popup-link").data("id")+" eae-wrap-"+e.find(".eae-popup-link").data("ctrl-id")+" mfp-"+n)},open:function(){var a=e.find(".eae-popup-link").data("id"),n=jQuery(".eae-popup-"+a+".eae-popup-container .eae-modal-content");t(n);var i=n.find(".wpcf7-form");i.length&gt;0&amp;&amp;i.each((function(e,t){wpcf7.init(t)}))},afterClose:function(){e.find(".eae-popup-container").find(".eae-popup-content").html("")}}}),"yes"==$preview_modal&amp;&amp;e.hasClass("elementor-element-edit-mode")&amp;&amp;e.find(".eae-popup-link").click()})),elementorFrontend.hooks.addAction("frontend/element_ready/wts-testimonial-slider.default",(function(e,t){if(e.find(".eae-grid-wrapper").hasClass("eae-masonry-yes")){var a=e.find(".eae-grid").masonry({});a.imagesLoaded().progress((function(){a.masonry("layout")}))}if(e.find(".eae-layout-carousel").length){outer_wrapper=e.find(".eae-swiper-outer-wrapper"),wid=e.data("id"),wclass=".elementor-element-"+wid;var n=outer_wrapper.data("direction"),i=outer_wrapper.data("speed"),r=outer_wrapper.data("autoplay"),o=outer_wrapper.data("duration"),s=outer_wrapper.data("effect"),l=outer_wrapper.data("space"),d=outer_wrapper.data("loop");d="yes"==d;var c=outer_wrapper.data("slides-per-view"),p=outer_wrapper.data("slides-per-group"),f=outer_wrapper.data("ptype"),u=outer_wrapper.data("navigation"),m=outer_wrapper.data("clickable"),g=outer_wrapper.data("keyboard"),h=outer_wrapper.data("scrollbar");adata={direction:n,effect:s,spaceBetween:l.desktop,loop:d,speed:i,slidesPerView:c.desktop,slidesPerGroup:p.desktop,observer:!0,mousewheel:{invert:!0},breakpoints:{1024:{spaceBetween:l.tablet,slidesPerView:c.tablet,slidesPerGroup:p.tablet},767:{spaceBetween:l.mobile,slidesPerView:c.mobile,slidesPerGroup:p.mobile}}},"fade"==s&amp;&amp;(adata.fadeEffect={crossFade:!1}),adata.autoplay="yes"==r&amp;&amp;{delay:o,disableOnInteraction:!1},"yes"==u&amp;&amp;(adata.navigation={nextEl:".swiper-button-next",prevEl:".swiper-button-prev"}),""!=f&amp;&amp;(adata.pagination={el:".swiper-pagination",type:f}),"bullets"==f&amp;&amp;"yes"==m&amp;&amp;(adata.pagination={el:".swiper-pagination",clickable:!0,type:f}),"yes"==h&amp;&amp;(adata.scrollbar={el:".swiper-scrollbar",draggable:!0}),"yes"==g&amp;&amp;(adata.keyboard={enabled:!0,onlyInViewport:!0}),0==d&amp;&amp;(adata.autoplay={delay:o,stopOnLastSlide:!0,disableOnInteraction:!1}),window.mswiper=new Swiper(".elementor-element-"+wid+" .eae-swiper-outer-wrapper .swiper-container",adata),t(".elementor-element-"+wid+" .eae-swiper-outer-wrapper .swiper-container").css("visibility","visible")}})),elementorFrontend.hooks.addAction("frontend/element_ready/eae-info-circle.skin1",a),elementorFrontend.hooks.addAction("frontend/element_ready/eae-info-circle.skin2",a),elementorFrontend.hooks.addAction("frontend/element_ready/eae-info-circle.skin3",a),elementorFrontend.hooks.addAction("frontend/element_ready/eae-info-circle.skin4",a),elementorFrontend.hooks.addAction("frontend/element_ready/eae-timeline.skin1",n),elementorFrontend.hooks.addAction("frontend/element_ready/eae-timeline.skin2",n),elementorFrontend.hooks.addAction("frontend/element_ready/eae-timeline.skin3",n),elementorFrontend.hooks.addAction("frontend/element_ready/eae-timeline.skin4",n),elementorFrontend.hooks.addAction("frontend/element_ready/eae-evergreen-timer.skin1",(function(e,t){var a=e.find(".eae-evergreen-wrapper").data("egtime"),n=e.find(".eae-evergreen-wrapper").data("egt-expire"),o=e.find(".eae-evergreen-wrapper").data("element-type"),s="eae-"+e.find(".eae-evergreen-wrapper").data("id"),l="eae-temp-"+e.find(".eae-evergreen-wrapper").data("id"),d=e.find(".eae-evergreen-wrapper").data("actions"),c=e.find(".eae-evergreen-wrapper").data("unqid"),p=(new Date).getTime();if(!e.hasClass("elementor-element-edit-mode"))if("countdown"===o){m=new Date(a),a=m.getTime();var f="expires="+m.toUTCString();document.cookie=l+"="+m.getTime()+";"+f+";path=/"}else{var u=r(s),m="";if(""!==u){(m=new Date(parseInt(u))).setSeconds(m.getSeconds()+e.find(".eae-evergreen-wrapper").data("egtime")),a=m.getTime();var g=new Date(parseInt(u));g.setTime(g.getTime()+60*n*60*1e3);var h="expires="+g.toUTCString();document.cookie=s+"="+u+";"+h+";path=/";var v=new Date(parseInt(u));v.setTime(v.getTime()+1e3*e.find(".eae-evergreen-wrapper").data("egtime"));f="expires="+v.toUTCString();a-p&gt;0&amp;&amp;(document.cookie=l+"="+u+";"+f+";path=/")}else{temp_date=a,(m=new Date).setSeconds(m.getSeconds()+e.find(".eae-evergreen-wrapper").data("egtime")),a=m.getTime(),i(s,(new Date).getTime(),n);var w=new Date;w.setTime(w.getTime()+1e3*temp_date);var y="expires="+w.toUTCString();document.cookie=l+"="+(new Date).getTime()+";"+y+";path=/"}}if(!e.hasClass("elementor-element-edit-mode")&amp;&amp;a-p&lt;0)return d.length&gt;0&amp;&amp;d.forEach((function(a){"redirect"===a&amp;&amp;($url=e.find(".eae-evergreen-wrapper").data("redirected-url"),""!==t.trim($url)&amp;&amp;(window.location.href=$url1)),"hide"===a&amp;&amp;(e.hasClass("elementor-element-edit-mode")||(e.find("#eaeclockdiv").css("display","none"),e.find(".egt-title").css("display","none"))),"message"===a&amp;&amp;e.find(".eae-egt-message").css("display","block"),"hide_parent"===a&amp;&amp;(e.hasClass("elementor-element-edit-mode")||($p_secs=e.closest("section"),$p_secs.css("display","none")))})),days="00",hours="00",minutes="00",seconds="00",e.find("."+c).find("#eaedivDays").html(days),e.find("."+c).find("#eaedivHours").html(hours.slice(-2)),e.find("."+c).find("#eaedivMinutes").html(minutes.slice(-2)),void e.find("."+c).find("#eaedivSeconds").html(seconds.slice(-2));e.hasClass("elementor-element-edit-mode")&amp;&amp;("countdown"===o?(m=new Date(a),a=m.getTime()):((m=new Date).setSeconds(m.getSeconds()+e.find(".eae-evergreen-wrapper").data("egtime")),a=m.getTime()));var b=setInterval((function(){var n=(new Date).getTime(),i=a-n,r=0,o=0,s=0,l=0;i&gt;0?(r=Math.floor(i/864e5),o="0"+Math.floor(i%864e5/36e5),s="0"+Math.floor(i%36e5/6e4),l="0"+Math.floor(i%6e4/1e3)):(d.length&gt;0&amp;&amp;(e.hasClass("elementor-element-edit-mode")||d.forEach((function(a){"redirect"===a&amp;&amp;($url1=e.find(".eae-evergreen-wrapper").data("redirected-url"),""!==t.trim($url1)&amp;&amp;(window.location.href=$url1)),"hide"===a&amp;&amp;(e.find("#eaeclockdiv").css("display","none"),e.find(".egt-title").css("display","none")),"message"===a&amp;&amp;e.find(".eae-egt-message").css("display","block"),"hide_parent"===a&amp;&amp;(e.hasClass("elementor-element-edit-mode")||($p_secs=e.closest("section"),$p_secs.css("display","none")))}))),clearInterval(b),r="0",o="00",s="00",l="00"),r&lt;10&amp;&amp;(r="0"+r),e.find("."+c).find("#eaedivDays").html(r),e.find("."+c).find("#eaedivHours").html(o.slice(-2)),e.find("."+c).find("#eaedivMinutes").html(s.slice(-2)),e.find("."+c).find("#eaedivSeconds").html(l.slice(-2))}),1e3)})),elementorFrontend.hooks.addAction("frontend/element_ready/eae-evergreen-timer.skin2",(function(e,t){var a=e.find(".eae-evergreen-wrapper").data("egtime"),n=e.find(".eae-evergreen-wrapper").data("egt-expire"),o=e.find(".eae-evergreen-wrapper").data("element-type"),s="eae-"+e.find(".eae-evergreen-wrapper").data("id"),l="eae-temp-"+e.find(".eae-evergreen-wrapper").data("id"),d=e.find(".eae-evergreen-wrapper").data("actions"),c=e.find(".eae-evergreen-wrapper").data("unqid"),p=(new Date).getTime();if(!e.hasClass("elementor-element-edit-mode"))if("countdown"===o){m=new Date(a),a=m.getTime();var f="expires="+m.toUTCString();document.cookie=l+"="+m.getTime()+";"+f+";path=/"}else{var u=r(s),m="";if(""!==u){(m=new Date(parseInt(u))).setSeconds(m.getSeconds()+e.find(".eae-evergreen-wrapper").data("egtime")),a=m.getTime();var g=new Date(parseInt(u));g.setTime(g.getTime()+60*n*60*1e3);var h="expires="+g.toUTCString();document.cookie=s+"="+u+";"+h+";path=/";var v=new Date(parseInt(u));v.setTime(v.getTime()+1e3*e.find(".eae-evergreen-wrapper").data("egtime"));f="expires="+v.toUTCString();a-p&gt;0&amp;&amp;(document.cookie=l+"="+u+";"+f+";path=/")}else{temp_date=a,(m=new Date).setSeconds(m.getSeconds()+e.find(".eae-evergreen-wrapper").data("egtime")),a=m.getTime(),i(s,(new Date).getTime(),n);var w=new Date;w.setTime(w.getTime()+1e3*temp_date);var y="expires="+w.toUTCString();document.cookie=l+"="+(new Date).getTime()+";"+y+";path=/"}}if(!e.hasClass("elementor-element-edit-mode")&amp;&amp;a-p&lt;0)return void(d.length&gt;0&amp;&amp;d.forEach((function(a){"redirect"===a&amp;&amp;($url=e.find(".eae-evergreen-wrapper").data("redirected-url"),""!==t.trim($url)&amp;&amp;(window.location.href=$url)),"hide"===a&amp;&amp;(e.find("."+c).find(".timer-container").css("display","none"),e.find("."+c).find(".egt-title").css("display","none")),"message"===a&amp;&amp;e.find("."+c).find(".eae-egt-message").css("display","block"),"hide_parent"===a&amp;&amp;(e.hasClass("elementor-element-edit-mode")||($p_secs=e.closest("section"),$p_secs.css("display","none")))})));e.hasClass("elementor-element-edit-mode")&amp;&amp;("countdown"===o?(m=new Date(a),a=m.getTime()):((m=new Date).setSeconds(m.getSeconds()+e.find(".eae-evergreen-wrapper").data("egtime")),a=m.getTime()));var b=setInterval((function(){var n=(new Date).getTime(),i=a-n,r=Math.floor(i/864e5),o=Math.floor(i%864e5/36e5),s=Math.floor(i%36e5/6e4),l=Math.floor(i%6e4/1e3);if(e.find("."+c).find("#eaeulSec1").find(".flip-clock-active").removeClass("flip-clock-active"),e.find("."+c).find("#eaeulSec1").find(".flip-clock-before").removeClass("flip-clock-before"),e.find("."+c).find("#eaeulSec").find(".flip-clock-active").removeClass("flip-clock-active"),e.find("."+c).find("#eaeulSec").find(".flip-clock-before").removeClass("flip-clock-before"),i&lt;0)return clearInterval(b),void(d.length&gt;0&amp;&amp;d.forEach((function(a){"redirect"===a&amp;&amp;(e.hasClass("elementor-element-edit-mode")||($url1=e.find(".eae-evergreen-wrapper").data("redirected-url"),""!==t.trim($url1)&amp;&amp;(window.location.href=$url1))),"hide"===a&amp;&amp;(e.hasClass("elementor-element-edit-mode")||(e.find("."+c).find(".timer-container").css("display","none"),e.find("."+c).find(".egt-title").css("display","none"))),"message"===a&amp;&amp;(e.hasClass("elementor-element-edit-mode")||e.find("."+c).find(".eae-egt-message").css("display","block")),"hide_parent"===a&amp;&amp;(e.hasClass("elementor-element-edit-mode")||($p_secs=e.closest("section"),$p_secs.css("display","none")))})));if(2===t.trim(l).length){var p="#eaeulSec1 li:eq( "+t.trim(l).charAt(1)+" )",f="#eaeulSec li:eq( "+t.trim(l).charAt(0)+" )";e.find("."+c).find(p).next().length&gt;0?(e.find("."+c).find(p).addClass("flip-clock-active"),e.find("."+c).find(p).next().addClass("flip-clock-before")):(e.find("."+c).find("#eaeulSec1 li:last-child").addClass("flip-clock-active"),e.find("."+c).find("#eaeulSec1 li:first-child").addClass("flip-clock-before")),e.find("."+c).find(f).next().length&gt;0?(e.find("."+c).find(f).addClass("flip-clock-active"),e.find("."+c).find(f).next().addClass("flip-clock-before")):(e.find("."+c).find("#eaeulSec li:last-child").addClass("flip-clock-active"),e.find("."+c).find("#eaeulSec li:first-child").addClass("flip-clock-before"))}else{p="#eaeulSec1 li:eq( "+t.trim(l).charAt(0)+" )",f="#eaeulSec li:eq( 0 )";e.find("."+c).find(p).next().length&gt;0?(e.find("."+c).find(p).addClass("flip-clock-active"),e.find("."+c).find(p).next().addClass("flip-clock-before")):(e.find("."+c).find("#eaeulSec1 li:last-child").addClass("flip-clock-active"),e.find("."+c).find("#eaeulSec1 li:first-child").addClass("flip-clock-before")),e.find("."+c).find(f).next().length&gt;0?(e.find("."+c).find(f).addClass("flip-clock-active"),e.find("."+c).find(f).next().addClass("flip-clock-before")):(e.find("."+c).find("#eaeulSec li:last-child").addClass("flip-clock-active"),e.find("."+c).find("#eaeulSec li:first-child").addClass("flip-clock-before"))}if(e.find("."+c).find("#eaeulMin1").find(".flip-clock-active").removeClass("flip-clock-active"),e.find("."+c).find("#eaeulMin1").find(".flip-clock-before").removeClass("flip-clock-before"),e.find("."+c).find("#eaeulMin").find(".flip-clock-active").removeClass("flip-clock-active"),e.find("."+c).find("#eaeulMin").find(".flip-clock-before").removeClass("flip-clock-before"),2==t.trim(s).length){p="#eaeulMin1 li:eq( "+t.trim(s).charAt(1)+" )",f="#eaeulMin li:eq( "+t.trim(s).charAt(0)+" )";e.find("."+c).find(p).next().length&gt;0?(e.find("."+c).find(p).addClass("flip-clock-active"),e.find("."+c).find(p).next().addClass("flip-clock-before")):(e.find("."+c).find("#eaeulMin1 li:last-child").addClass("flip-clock-active"),e.find("."+c).find("#eaeulMin1 li:first-child").addClass("flip-clock-before")),e.find("."+c).find(f).next().length&gt;0?(e.find("."+c).find(f).addClass("flip-clock-active"),e.find("."+c).find(f).next().addClass("flip-clock-before")):(e.find("."+c).find("#eaeulMin li:last-child").addClass("flip-clock-active"),e.find("."+c).find("#eaeulMin li:first-child").addClass("flip-clock-before"))}else{p="#eaeulMin1 li:eq( "+t.trim(s).charAt(0)+" )",f="#eaeulMin li:eq( 0 )";e.find("."+c).find(p).next().length&gt;0?(e.find("."+c).find(p).addClass("flip-clock-active"),e.find("."+c).find(p).next().addClass("flip-clock-before")):(e.find("."+c).find("#eaeulMin1 li:last-child").addClass("flip-clock-active"),e.find("."+c).find("#eaeulMin1 li:first-child").addClass("flip-clock-before")),e.find("."+c).find(f).next().length&gt;0?(e.find("."+c).find(f).addClass("flip-clock-active"),e.find("."+c).find(f).next().addClass("flip-clock-before")):(e.find("."+c).find("#eaeulMin li:last-child").addClass("flip-clock-active"),e.find("."+c).find("#eaeulMin li:first-child").addClass("flip-clock-before"))}if(e.find("."+c).find("#eaeulHour1").find(".flip-clock-active").removeClass("flip-clock-active"),e.find("."+c).find("#eaeulHour1").find(".flip-clock-before").removeClass("flip-clock-before"),e.find("."+c).find("#eaeulHour").find(".flip-clock-active").removeClass("flip-clock-active"),e.find("."+c).find("#eaeulHour").find(".flip-clock-before").removeClass("flip-clock-before"),2==t.trim(o).length){p="#eaeulHour1 li:eq( "+t.trim(o).charAt(1)+" )",f="#eaeulHour li:eq( "+t.trim(o).charAt(0)+" )";e.find("."+c).find(p).next().length&gt;0?(e.find("."+c).find(p).addClass("flip-clock-active"),e.find("."+c).find(p).next().addClass("flip-clock-before")):(e.find("."+c).find("#eaeulHour1 li:last-child").addClass("flip-clock-active"),e.find("."+c).find("#eaeulHour1 li:first-child").addClass("flip-clock-before")),e.find("."+c).find(f).next().length&gt;0?(e.find("."+c).find(f).addClass("flip-clock-active"),e.find("."+c).find(f).next().addClass("flip-clock-before")):(e.find("."+c).find("#eaeulHour li:last-child").addClass("flip-clock-active"),e.find("."+c).find("#eaeulHour li:first-child").addClass("flip-clock-before"))}else{p="#eaeulHour1 li:eq( "+t.trim(o).charAt(0)+" )",f="#eaeulHour li:eq( 0 )";e.find("."+c).find(p).next().length&gt;0?(e.find("."+c).find(p).addClass("flip-clock-active"),e.find("."+c).find(p).next().addClass("flip-clock-before")):(e.find("."+c).find("#eaeulHour1 li:last-child").addClass("flip-clock-active"),e.find("."+c).find("#eaeulHour li:first-child").addClass("flip-clock-before")),e.find("."+c).find(f).next().length&gt;0?(e.find("."+c).find(f).addClass("flip-clock-active"),e.find("."+c).find(f).next().addClass("flip-clock-before")):(e.find("."+c).find("#eaeulHour li:last-child").addClass("flip-clock-active"),e.find("."+c).find("#eaeulHour li:first-child").addClass("flip-clock-before"))}if(e.find("."+c).find("#eaeulDay1").find(".flip-clock-active").removeClass("flip-clock-active"),e.find("."+c).find("#eaeulDay1").find(".flip-clock-before").removeClass("flip-clock-before"),e.find("."+c).find("#eaeulDay").find(".flip-clock-active").removeClass("flip-clock-active"),e.find("."+c).find("#eaeulDay").find(".flip-clock-before").removeClass("flip-clock-before"),2==t.trim(r).length){p="#eaeulDay1 li:eq( "+t.trim(r).charAt(1)+" )",f="#eaeulDay li:eq( "+t.trim(r).charAt(0)+" )";e.find("."+c).find(p).next().length&gt;0?(e.find("."+c).find(p).addClass("flip-clock-active"),e.find("."+c).find(p).next().addClass("flip-clock-before")):(e.find("."+c).find("#eaeulDay1 li:last-child").addClass("flip-clock-active"),e.find("."+c).find("#eaeulDay1 li:first-child").addClass("flip-clock-before")),e.find("."+c).find(f).next().length&gt;0?(e.find("."+c).find(f).addClass("flip-clock-active"),e.find("."+c).find(f).next().addClass("flip-clock-before")):(e.find("."+c).find("#eaeulDay li:last-child").addClass("flip-clock-active"),e.find("."+c).find("#eaeulDay li:first-child").addClass("flip-clock-before"))}else{p="#eaeulDay1 li:eq( "+t.trim(r).charAt(0)+" )",f="#eaeulDay li:eq( 0 )";e.find("."+c).find(p).next().length&gt;0?(e.find("."+c).find(p).addClass("flip-clock-active"),e.find("."+c).find(p).next().addClass("flip-clock-before")):(e.find("."+c).find("#eaeulDay1 li:last-child").addClass("flip-clock-active"),e.find("."+c).find("#eaeulDay li:first-child").addClass("flip-clock-before")),e.find("."+c).find(f).next().length&gt;0?(e.find("."+c).find(f).addClass("flip-clock-active"),e.find("."+c).find(f).next().addClass("flip-clock-before")):(e.find("."+c).find("#eaeulDay li:last-child").addClass("flip-clock-active"),e.find("."+c).find("#eaeulDay li:first-child").addClass("flip-clock-before"))}}),1e3)})),elementorFrontend.hooks.addAction("frontend/element_ready/eae-evergreen-timer.skin3",(function(e,t){var a,n=e.find(".eae-evergreen-wrapper").data("egtime"),o=e.find(".eae-evergreen-wrapper").data("egt-expire"),s=e.find(".eae-evergreen-wrapper").data("element-type"),l="eae-"+e.find(".eae-evergreen-wrapper").data("id"),d="eae-temp-"+e.find(".eae-evergreen-wrapper").data("id"),c=e.find(".eae-evergreen-wrapper").data("actions"),p=e.find(".eae-evergreen-wrapper").data("days"),f=e.find(".eae-evergreen-wrapper").data("hours"),u=e.find(".eae-evergreen-wrapper").data("mins"),m=e.find(".eae-evergreen-wrapper").data("seconds"),g=e.find(".eae-evergreen-wrapper").data("unqid"),h=(new Date).getTime();if(!e.hasClass("elementor-element-edit-mode"))if("countdown"===s){y=new Date(n),n=y.getTime();var v="expires="+y.toUTCString();document.cookie=d+"="+y.getTime()+";"+v+";path=/"}else{var w=r(l),y="";if(""!==w){(y=new Date(parseInt(w))).setSeconds(y.getSeconds()+e.find(".eae-evergreen-wrapper").data("egtime")),n=y.getTime();var b=new Date(parseInt(w));b.setTime(b.getTime()+60*o*60*1e3);var _="expires="+b.toUTCString();document.cookie=l+"="+w+";"+_+";path=/";var k=new Date(parseInt(w));k.setTime(k.getTime()+1e3*e.find(".eae-evergreen-wrapper").data("egtime"));v="expires="+k.toUTCString();n-h&gt;0&amp;&amp;(document.cookie=d+"="+w+";"+v+";path=/")}else{temp_date=n,(y=new Date).setSeconds(y.getSeconds()+e.find(".eae-evergreen-wrapper").data("egtime")),n=y.getTime(),i(l,(new Date).getTime(),o);var C=new Date;C.setTime(C.getTime()+1e3*temp_date);var x="expires="+C.toUTCString();document.cookie=d+"="+(new Date).getTime()+";"+x+";path=/"}}if(!e.hasClass("elementor-element-edit-mode")){var S=E(n);if(parseInt(S.all)&lt;1){if(c.length&gt;0&amp;&amp;(c.forEach((function(t){"redirect"===t&amp;&amp;(e.hasClass("elementor-element-edit-mode")||($url=e.find(".eae-evergreen-wrapper").data("redirected-url"),""!==$url&amp;&amp;(window.location.href=$url))),"hide_parent"===t&amp;&amp;(e.hasClass("elementor-element-edit-mode")||($p_secs=e.closest("section"),$p_secs.css("display","none"))),"hide"===t&amp;&amp;(e.find("#timer").css("display","none"),e.find(".egt-title").css("display","none"),e.find(".desc").css("display","none")),"message"===t&amp;&amp;e.find(".eae-egt-message").css("display","block")})),1===c.length&amp;&amp;(""===c[0]||"message"===c[0]))){var T=e.find("."+g).find("#timer")[0];"yes"===p&amp;&amp;(T.innerHTML="&lt;span class='egt-time eae-time-wrapper'&gt;&lt;div&gt;00&lt;/div&gt;&lt;/span&gt;"),"yes"===f&amp;&amp;("yes"===p?t(T).append("&lt;span class='egt-time eae-time-wrapper'&gt;&lt;div&gt;00&lt;/div&gt;&lt;/span&gt;"):T.innerHTML="&lt;span class='egt-time eae-time-wrapper'&gt;&lt;div&gt;00&lt;/div&gt;&lt;/span&gt;"),"yes"===u&amp;&amp;("yes"===p||"yes"===f?t(T).append("&lt;span class='egt-time eae-time-wrapper'&gt;&lt;div&gt;00&lt;/div&gt;&lt;/span&gt;"):T.innerHTML="&lt;span class='egt-time eae-time-wrapper'&gt;&lt;div&gt;00&lt;/div&gt;&lt;/span&gt;"),"yes"===m&amp;&amp;("yes"===p||"yes"===f||"yes"===u?t(T).append("&lt;span class='egt-time eae-time-wrapper'&gt;&lt;div&gt;00&lt;/div&gt;&lt;/span&gt;"):T.innerHTML="&lt;span class='egt-time eae-time-wrapper'&gt;&lt;div&gt;00&lt;/div&gt;&lt;/span&gt;")}return}}function E(e){var t=n-new Date;return{days:Math.floor(t/864e5),hours:"0"+Math.floor(t/36e5%24),minutes:"0"+Math.floor(t/6e4%60),seconds:"0"+Math.floor(t/1e3%60),all:t}}function L(e){e.classList.add("fade"),setTimeout((function(){e.classList.remove("fade")}),700)}e.hasClass("elementor-element-edit-mode")&amp;&amp;("countdown"===s?(y=new Date(n),n=y.getTime()):((y=new Date).setSeconds(y.getSeconds()+e.find(".eae-evergreen-wrapper").data("egtime")),n=y.getTime())),E(n).all&gt;1&amp;&amp;(a=setInterval((function(){var i=e.find("."+g).find("#timer")[0],r=E(n);"yes"===p&amp;&amp;(r.days&lt;10&amp;&amp;(r.days="0"+r.days),i.innerHTML="&lt;span class='egt-time eae-time-wrapper'&gt;&lt;div&gt;"+r.days+"&lt;/div&gt;&lt;/span&gt;"),"yes"===f&amp;&amp;("yes"===p?t(i).append("&lt;span class='egt-time eae-time-wrapper'&gt;&lt;div&gt;"+r.hours.slice(-2)+"&lt;/div&gt;&lt;/span&gt;"):i.innerHTML="&lt;span class='egt-time eae-time-wrapper'&gt;&lt;div&gt;"+r.hours.slice(-2)+"&lt;/div&gt;&lt;/span&gt;"),"yes"===u&amp;&amp;("yes"===p||"yes"===f?t(i).append("&lt;span class='egt-time eae-time-wrapper'&gt;&lt;div&gt;"+r.minutes.slice(-2)+"&lt;/div&gt;&lt;/span&gt;"):i.innerHTML="&lt;span class='egt-time eae-time-wrapper'&gt;&lt;div&gt;"+r.minutes.slice(-2)+"&lt;/div&gt;&lt;/span&gt;"),"yes"===m&amp;&amp;("yes"===p||"yes"===f||"yes"===u?t(i).append("&lt;span class='egt-time eae-time-wrapper'&gt;&lt;div&gt;"+r.seconds.slice(-2)+"&lt;/div&gt;&lt;/span&gt;"):i.innerHTML="&lt;span class='egt-time eae-time-wrapper'&gt;&lt;div&gt;"+r.seconds.slice(-2)+"&lt;/div&gt;&lt;/span&gt;");var o=i.getElementsByTagName("span");"yes"===p&amp;&amp;59==r.hours&amp;&amp;59==r.minutes&amp;&amp;59==r.seconds&amp;&amp;L(o[0]),"yes"===f&amp;&amp;("yes"===p?59==r.minutes&amp;&amp;59==r.seconds&amp;&amp;L(o[1]):59==r.minutes&amp;&amp;59==r.seconds&amp;&amp;L(o[0])),"yes"===u&amp;&amp;("yes"===p?"yes"===f?59==r.seconds&amp;&amp;L(o[2]):59==r.seconds&amp;&amp;L(o[1]):"yes"===f?59==r.seconds&amp;&amp;L(o[1]):59==r.seconds&amp;&amp;L(o[0])),"yes"===m&amp;&amp;("yes"===p?"yes"===f?"yes"===u&amp;&amp;L(o[3]):L("yes"===u?o[2]:o[1]):"yes"===f?"yes"===u&amp;&amp;L(o[2]):L("yes"===u?o[1]:o[0])),r.all&lt;=1&amp;&amp;(clearInterval(a),"yes"===p&amp;&amp;(i.innerHTML="&lt;span class='egt-time eae-time-wrapper'&gt;&lt;div&gt;00&lt;/div&gt;&lt;/span&gt;"),"yes"===f&amp;&amp;("yes"===p?t(i).append("&lt;span class='egt-time eae-time-wrapper'&gt;&lt;div&gt;00&lt;/div&gt;&lt;/span&gt;"):i.innerHTML="&lt;span class='egt-time eae-time-wrapper'&gt;&lt;div&gt;00&lt;/div&gt;&lt;/span&gt;"),"yes"===u&amp;&amp;("yes"===p||"yes"===f?t(i).append("&lt;span class='egt-time eae-time-wrapper'&gt;&lt;div&gt;00&lt;/div&gt;&lt;/span&gt;"):i.innerHTML="&lt;span class='egt-time eae-time-wrapper'&gt;&lt;div&gt;00&lt;/div&gt;&lt;/span&gt;"),"yes"===m&amp;&amp;("yes"===p||"yes"===f||"yes"===u?t(i).append("&lt;span class='egt-time eae-time-wrapper'&gt;&lt;div&gt;00&lt;/div&gt;&lt;/span&gt;"):i.innerHTML="&lt;span class='egt-time eae-time-wrapper'&gt;&lt;div&gt;00&lt;/div&gt;&lt;/span&gt;"),e.hasClass("elementor-element-edit-mode")||c.length&gt;0&amp;&amp;c.forEach((function(t){"redirect"===t&amp;&amp;($url1=e.find(".eae-evergreen-wrapper").data("redirected-url"),""!==$url1&amp;&amp;(window.location.href=$url1)),"hide"===t&amp;&amp;(e.find("#timer").css("display","none"),e.find(".egt-title").css("display","none"),e.find(".desc").css("display","none")),"message"===t&amp;&amp;e.find(".eae-egt-message").css("display","block"),"hide_parent"===t&amp;&amp;($p_secs=e.closest("section"),$p_secs.css("display","none"))})))}),1e3))})),elementorFrontend.hooks.addAction("frontend/element_ready/eae-comparisontable.default",(function(e,t){t(e.find(".eae-ct-heading")[0]).addClass("active"),e.find("ul").on("click","li",(function(){var a=t(this).index()+2;e.find("tr").find("td:not(:eq(0))").hide(),e.find("td:nth-child("+a+")").css("display","table-cell"),e.find("tr").find("th:not(:eq(0))").hide(),e.find("li").removeClass("active"),t(this).addClass("active")}));var a=window.matchMedia("(min-width: 767px)");function n(t){t.matches?e.find(".sep").attr("colspan",5):e.find(".sep").attr("colspan",2)}a.addListener(n),n(a)})),elementorFrontend.hooks.addAction("frontend/element_ready/eae-progress-bar.skin1",o),elementorFrontend.hooks.addAction("frontend/element_ready/eae-progress-bar.skin2",o),elementorFrontend.hooks.addAction("frontend/element_ready/eae-progress-bar.skin3",o),elementorFrontend.hooks.addAction("frontend/element_ready/eae-progress-bar.skin4",o),elementorFrontend.hooks.addAction("frontend/element_ready/eae-progress-bar.skin5",o),elementorFrontend.hooks.addAction("frontend/element_ready/eae-filterableGallery.default",(function(e,t){var a=e.find(".eae-fg-wrapper"),n=e.data("id"),i=a.attr("data-maxtilt"),r=a.attr("data-perspective"),o=a.attr("data-speed"),s=a.attr("data-tilt-axis"),l=a.attr("data-glare"),d=parseInt(a.attr("data-overlay-speed"));if(s="x"===s?"y":"y"===s?"x":"both","yes"===l)var c=a.attr("data-max-glare");l="yes"===l;var p=t(".elementor-element-"+n+" .eae-fg-image"),f=a.hasClass("masonry-yes")?"masonry":"fitRows";p.outerHeight();adata={percentPosition:!0,animationOptions:{duration:750,easing:"linear",queue:!1}},"fitRows"===f&amp;&amp;(adata.layoutMode="fitRows"),"masonry"===f&amp;&amp;(adata.masonry={columnWidth:".eae-gallery-item",horizontalOrder:!0}),e.hasClass("eae-show-all-yes")||(e.find(".eae-gallery-filter a").first().addClass("current"),adata.filter=e.find(".eae-gallery-filter a").first().attr("data-filter"));var u=p.isotope(adata);u.imagesLoaded().progress((function(){u.isotope("layout")})),e.find(".eae-tilt-yes")&amp;&amp;(atilt={maxTilt:i,perspective:r,easing:"linear",scale:1,speed:o,disableAxis:s,transition:!0,reset:!0,glare:l,maxGlare:c},e.find(".el-tilt").tilt(atilt)),t(".elementor-element-"+n+" .eae-gallery-filter a").on("click",(function(){e.find(".eae-gallery-filter .current").removeClass("current"),t(this).addClass("current");var a=t(this).attr("data-filter");adata.filter=a;var n=p.isotope(adata);return n.imagesLoaded().progress((function(){if(n.isotope("layout"),isEditMode)return!1;e.find(".eae-tilt-yes")&amp;&amp;(e.find(".el-tilt").tilt(atilt),e.find(".el-tilt").tilt.reset.call(e.find(".el-tilt")))})),!1})),a.hasClass("eae-hover-direction-effect")||e.find(".eae-gallery-item-inner").hover((function(){t(this).find(".eae-grid-overlay").addClass("animated")})),a.hasClass("eae-hover-direction-effect")&amp;&amp;(e.find(".eae-gallery-item-inner").hover((function(){t(this).find(".eae-grid-overlay").addClass("overlay")})),a.find(".eae-gallery-item-inner").EAEHoverDirection({speed:d}))})),elementorFrontend.hooks.addAction("frontend/element_ready/eae-content-switcher.skin1",s),elementorFrontend.hooks.addAction("frontend/element_ready/eae-content-switcher.skin2",s),elementorFrontend.hooks.addAction("frontend/element_ready/eae-content-switcher.skin3",l),elementorFrontend.hooks.addAction("frontend/element_ready/eae-content-switcher.skin4",l),elementorFrontend.hooks.addAction("frontend/element_ready/global",(function(e,t){isEditMode||e.data("wts-url")&amp;&amp;"yes"==e.data("wts-link")&amp;&amp;e.on("click",(function(t){e.data("wts-url")&amp;&amp;"yes"==e.data("wts-new-window")?window.open(e.data("wts-url")):location.href=e.data("wts-url")}))})),elementorFrontend.hooks.addAction("frontend/element_ready/eae-thumbgallery.default",(function(e,t){swiper_outer_wrapper=e.find(".eae-swiper-outer-wrapper"),wid=e.data("id"),wClass=".elementor-element-"+wid,thumb_outer_wrapper=e.find(".eae-gallery-thumbs");let a=swiper_outer_wrapper.data("swiper-settings"),n=(swiper_outer_wrapper.data("slides-per-view"),swiper_outer_wrapper.data("space"),elementorFrontend.config.responsive.activeBreakpoints);sliderData={direction:"horizontal",effect:a.effect,keyboard:{enabled:a.keyboard},speed:a.speed,loop:"yes"===a.loop,thumbs:{swiper:{el:wClass+" .eae-gallery-thumbs",direction:"horizontal",navigation:{nextEl:wClass+" .eae-swiper-button-next",prevEl:wClass+" .eae-swiper-button-prev"},speed:a.speed,loop:"yes"===a.loop,freeMode:!0,watchSlidesVisibility:!0,watchSlidesProgress:!0,slideToClickedSlide:!0}}};const i={slidesPerView:"slidesPerView",slidesPerGroup:"slidesPerGroup",spaceBetween:"spaceBetween"};if(n.hasOwnProperty("mobile"))for(const e in i)a.hasOwnProperty(e)&amp;&amp;(sliderData[e]=a[e].mobile),a.thumbs.hasOwnProperty(e)&amp;&amp;(sliderData.thumbs.swiper[e]=a.thumbs[e].mobile);const r={},o={};a.hasOwnProperty("breakpoints_value")&amp;&amp;Object.keys(a.breakpoints_value).map((e=&gt;{const t=parseInt(a.breakpoints_value[e]);if("desktop"===e&amp;&amp;(e="default"),"mobile"!==e){const n=parseInt(a.spaceBetween[e]);r[t-1]={spaceBetween:n};const i=parseInt(a.thumbs.spaceBetween[e]),s=parseInt(a.thumbs.slidesPerView[e]);o[t-1]={spaceBetween:i,slidesPerView:s}}})),sliderData.breakpoints=r,sliderData.thumbs.swiper.breakpoints=o,void 0!==a.autoplay&amp;&amp;(sliderData.thumbs.swiper.autoplay={delay:a.autoplay.duration,disableOnInteraction:a.autoplay.disableOnInteraction,reverseDirection:a.autoplay.reverseDirection}),"yes"==a.navigation&amp;&amp;(sliderData.navigation={nextEl:wClass+" .eae-swiper-button-next",prevEl:wClass+" .eae-swiper-button-prev"}),""!==a.pagination&amp;&amp;(sliderData.pagination={type:a.pagination,el:wClass+" .swiper-pagination",clickable:a.clickable}),void 0!==a.autoplay&amp;&amp;(sliderData.autoplay={delay:a.autoplay.duration,disableOnInteraction:a.autoplay.disableOnInteraction,reverseDirection:a.autoplay.reverseDirection}),swiperContainer=jQuery(".elementor-element-"+wid+" .eae-swiper-outer-wrapper .eae-swiper-container");const s=elementorFrontend.utils.swiper;null!==swiperContainer&amp;&amp;0===swiperContainer.length||new s(jQuery(swiperContainer),sliderData).then((e=&gt;{const t=e,n=a.pauseOnHover;if("yes"==a.loop&amp;&amp;p(t,wid),"yes"==n&amp;&amp;f(t,n,wid,a),void 0!==a.autoplay){"yes"==a.pauseOnHover&amp;&amp;jQuery(wClass+" .eae-swiper-container").hover((function(){null!=t&amp;&amp;(t.autoplay.stop(),t.thumbs.swiper.autoplay.stop())}),(function(){null!=t&amp;&amp;(t.autoplay.start(),t.thumbs.swiper.autoplay.start())}))}}))})),elementorFrontend.hooks.addAction("frontend/element_ready/eae-chart.bar",d),elementorFrontend.hooks.addAction("frontend/element_ready/eae-chart.horizontalBar",d),elementorFrontend.hooks.addAction("frontend/element_ready/eae-chart.line",d),elementorFrontend.hooks.addAction("frontend/element_ready/eae-data-table.default",(function(e,t){const a=e.find(".eae-table"),n=e.find(".eae-table-container");lottie_class=e.find(".eae-lottie"),settings=a.data("settings"),lottie_class.each((function(){let e=t(this).data("lottie-settings"),a=lottie.loadAnimation({container:document.getElementById(e.id),path:e.url,renderer:"svg",loop:e.loop});1==e.reverse&amp;&amp;a.setDirection(-1)})),!0===settings.sort?(head_class=t(".eae-table thead tr:not(:last-child)").addClass("eae-sort__ignoreRow"),a.tablesorter({sortReset:!1,sortRestart:!0})):head_class=t(".eae-table thead tr:not(:last-child)").removeClass("eae-sort__ignoreRow"),settings.search&amp;&amp;n.find("#eae-searchable").keyup((function(){_this=this,a.find(".eae-table__body tr").each((function(){-1===t(this).text().toLowerCase().indexOf(t(_this).val().toLowerCase())?t(this).addClass("eae-table-search-hide"):t(this).removeClass("eae-table-search-hide")}))}))})),elementorFrontend.hooks.addAction("frontend/element_ready/CfStyler.default",(function(e,t){if(e.hasClass("elementor-element-edit-mode")&amp;&amp;t("#error-field-hidden").hasClass("validation-field-box")){e.find(".wpcf7-validates-as-required").parent().append("&lt;p class='error-field'&gt;The field is required.&lt;/p&gt;")}})),elementorFrontend.hooks.addAction("frontend/element_ready/eae-anythingcarousel.default",(function(e,t){const a=e.find(".eae-swiper-outer-wrapper"),n=e.data("id"),i=a.data("swiper-settings");c(i,n,e,a)})),elementorFrontend.hooks.addAction("frontend/element_ready/wts-content-ticker.default",(function(e){let t=e.data("id"),a=e.find(".swiper");swiper_outer=e.find(".eae-content-ticker-wrapper");let n=swiper_outer.data("swiper"),i={};if(i={effect:n.effect,loop:n.loop,speed:n.speed,slidesPerView:1,spaceBetween:30,fadeEffect:{crossFade:!0}},null!=n.autoplayDuration&amp;&amp;(i.autoplay={delay:n.autoplayDuration,disableOnInteraction:!0}),0!=n.keyboardControl&amp;&amp;(i.keyboard={enabled:!0}),"yes"===n.arrows&amp;&amp;(i.navigation={nextEl:".eae-navigation-icon-wrapper .eae-swiper-button-next",prevEl:".eae-navigation-icon-wrapper .eae-swiper-button-prev"}),"null"!=n.direction&amp;&amp;"slide"==n.effect&amp;&amp;(i.direction=n.direction),null!==jQuery(a)&amp;&amp;0===jQuery(a).length)return;new(0,elementorFrontend.utils.swiper)(jQuery(a),i).then((e=&gt;{let a=e;"true"==n.pauseOnHover&amp;&amp;jQuery(".elementor-element-"+t+" .eae-content-ticker-content-wrapper").hover((function(){a.autoplay.stop()}),(function(){a.autoplay.start()}))}))})),elementorFrontend.hooks.addAction("frontend/element_ready/eae-radial-charts.default",(function(e){let t=null;$wid=e.data("id");const a=document.querySelector(".elementor-element-"+$wid),n=a.querySelector(".eae-radial-chart"),i=(a.querySelector(".eae-radial-chart-container").dataset.chart,e.find(".eae-radial-chart-container")),r=e.find(".eae-radial-chart");let o=i.data("chart");"polarArea"==o.type&amp;&amp;"true"==o.enablePercentage&amp;&amp;(o.options.scales.r.ticks.callback=function(e,t,a){return`${e}%`});new IntersectionObserver(((e,a)=&gt;{e.forEach((e=&gt;{if(e.isIntersecting){e.target.classList.add("trigger"),null==t&amp;&amp;(t=new Chart(r,o))}}))}),{root:null,rootMargin:"0px 0px -300px 0px"}).observe(n)})),elementorFrontend.hooks.addAction("frontend/element_ready/eae-coupon-code.default",(function(e){elementorFrontend.elementsHandler.addHandler(u,{$element:e})})),elementorFrontend.hooks.addAction("frontend/element_ready/eae-dropbar.default",(function(e){elementorFrontend.elementsHandler.addHandler(g,{$element:e})}))}))}(jQuery);(()=&gt;{var e={734:()=&gt;{!function(e){const t=function(e){const t=e.attr("data-id");var n=document.querySelector(".elementor-element-"+t).querySelector(".eae-lottie-animation");if(null!=n){let e=JSON.parse(n.getAttribute("data-lottie-settings")),t=lottie.loadAnimation({container:n,path:e.url,renderer:"svg",loop:e.loop});1==e.reverse&amp;&amp;t.setDirection(-1)}};e(window).on("elementor/frontend/init",(function(){elementorFrontend.hooks.addAction("frontend/element_ready/eae-add-to-calendar.default",t)}))}(jQuery)},211:()=&gt;{!function(e){const t=function(e){const t=e.attr("data-id"),n=document.querySelector(".elementor-element-"+t);var i=n.querySelector(".eae-ah-icon.eae-lottie-animation"),a=n.querySelector(".eae-ah-title-icon.eae-lottie-animation"),o=n.querySelector(".eae-sep-icon.eae-lottie-animation");if(null!=i){let e=JSON.parse(i.getAttribute("data-lottie-settings")),t=lottie.loadAnimation({container:i,path:e.url,renderer:"svg",loop:e.loop});1==e.reverse&amp;&amp;t.setDirection(-1)}if(null!=a){let e=JSON.parse(a.getAttribute("data-lottie-settings")),t=lottie.loadAnimation({container:a,path:e.url,renderer:"svg",loop:e.loop});1==e.reverse&amp;&amp;t.setDirection(-1)}if(null!=o){let e=JSON.parse(o.getAttribute("data-lottie-settings")),t=lottie.loadAnimation({container:o,path:e.url,renderer:"svg",loop:e.loop});1==e.reverse&amp;&amp;t.setDirection(-1)}};e(window).on("elementor/frontend/init",(function(){elementorFrontend.hooks.addAction("frontend/element_ready/eae-advanced-heading.default",t)}))}(jQuery)},327:()=&gt;{!function(e){const t=function(e){const t=e.attr("data-id");document.querySelector(".elementor-element-"+t).querySelector(".eae-list-wrapper").querySelectorAll(".eae-list-item").forEach((e=&gt;{if(isLottiePanle=e.querySelector(".eae-lottie"),null!=isLottiePanle){let e=JSON.parse(isLottiePanle.getAttribute("data-lottie-settings")),t=lottie.loadAnimation({container:isLottiePanle,path:e.url,renderer:"svg",loop:e.loop});1==e.reverse&amp;&amp;t.setDirection(-1)}}))};e(window).on("elementor/frontend/init",(function(){elementorFrontend.hooks.addAction("frontend/element_ready/eae-advanced-list.default",t)}))}(jQuery)},259:()=&gt;{!function(e){const t=function(t){const i=t.attr("data-id"),a=document.querySelector(".elementor-element-"+i).querySelector(".eae-price-table");window.addEventListener("resize",(function(){let e=a.getAttribute("data-stacked");this.window.innerWidth&lt;=e?a.classList.add("enable-stacked"):a.classList.remove("enable-stacked")})),function(e){let t=e.find(".eae-price-table"),n=t.find(".eae-apt-switch-label"),i=t.find(".eae-apt-content-switch-button-text.eae-label-tab-1"),a=t.find(".eae-apt-content-switch-button-text.eae-label-tab-2"),o=t.find(".eae-apt-tab-1.eae-apt-tab-content-section"),r=t.find(".eae-apt-tab-2.eae-apt-tab-content-section");n.on("click",(function(e){n.find(".eae-pt-content-toggle-switch").is(":checked")?(a.addClass("active-button"),r.addClass("active"),i.removeClass("active-button"),o.removeClass("active")):(i.addClass("active-button"),o.addClass("active"),a.removeClass("active-button"),r.removeClass("active"))}))}(t),function(t){var n=t.find(".eae-price-table"),i=(t.data("id"),n.find(".eae-apt-content-switch-button"));i.each((function(t,a){e(this).on("click",(function(t){t.preventDefault();let o=a.getAttribute("data-active-tab");i.removeClass("active-button"),e(this).addClass("active-button");let r=n.find(".eae-apt-"+o);n.find(".eae-apt-tab-content-section").removeClass("active"),r.addClass("active")}))}))}(t),n(a.querySelectorAll(".eae-price-table-wrapper"),".eae-apt-icon.eae-lottie"),a.querySelectorAll(".eae-apt-features-container"),n(a.querySelectorAll(".eae-apt-features-list-item"),".eae-apt-feature-icon.eae-lottie")};function n(e,t){e.forEach((e=&gt;{if(isLottiePanle=e.querySelector(t),null!=isLottiePanle){let e=JSON.parse(isLottiePanle.getAttribute("data-lottie-settings")),t=lottie.loadAnimation({container:isLottiePanle,path:e.url,renderer:"svg",loop:e.loop});1==e.reverse&amp;&amp;t.setDirection(-1)}}))}e(window).on("elementor/frontend/init",(function(){elementorFrontend.hooks.addAction("frontend/element_ready/eae-advanced-price-table.default",t)}))}(jQuery)},305:(e,t,n)=&gt;{"use strict";n.d(t,{Y:()=&gt;i});class i{constructor(e,t,n=null){let i=[],a=".elementor-element-"+t+" .eae-swiper-container",o=elementorFrontend.config.responsive.activeBreakpoints;var r=".elementor-element-"+t;if(null!==n){t=n.data("id");const e=n.find(".eae-swiper-container").data("eae-slider-id");a=".elementor-element-"+t+' .eae-swiper-container[data-eae-slider-id="'+e+'"]',r=".elementor-element-"+t+" .eae-slider-id-"+e}if(void 0===e)return!1;i={direction:e.direction,speed:e.speed,autoHeight:e.autoHeight,autoplay:e.autoplay,grid:e.grid,effect:e.effect,loop:e.loop,zoom:e.zoom,wrapperClass:"eae-swiper-wrapper",slideClass:"eae-swiper-slide",observer:!0,observeParents:!0},e.hasOwnProperty("pause_on_interaction")&amp;&amp;(i.autoplay.disableOnInteraction=!0,i.autoplay.pauseOnMouseEnter=!0);const s={slidesPerView:"slidesPerView",slidesPerGroup:"slidesPerGroup",spaceBetween:"spaceBetween"};if(o.hasOwnProperty("mobile"))for(const t in s)e.hasOwnProperty(t)&amp;&amp;(i[t]=e[t].mobile);e.loop&amp;&amp;e.hasOwnProperty("slidersPerView")&amp;&amp;document.querySelectorAll(r+" .eae-swiper-slide").length&lt;e.slidesPerView.tablet&amp;&amp;(i.loop=!1);const l={};e.hasOwnProperty("breakpoints_value")&amp;&amp;Object.keys(e.breakpoints_value).map((t=&gt;{const n=parseInt(e.breakpoints_value[t]);"desktop"===t&amp;&amp;(t="default");const i=parseInt(e.spaceBetween[t]),a=parseInt(e.slidesPerView[t]),o=parseInt(e.slidesPerGroup[t]);l[n-1]={spaceBetween:i,slidesPerView:a,slidesPerGroup:o}})),eae.breakpoints,i.breakpoints=l,i.keyboard="yes"===e.keyboard&amp;&amp;{enabled:!0,onlyInViewport:!0},"yes"===e.navigation&amp;&amp;(i.navigation={nextEl:r+" .eae-swiper-button-next",prevEl:r+" .eae-swiper-button-prev"}),""!==e.ptype&amp;&amp;(i.pagination={el:r+" .eae-swiper-pagination",type:e.ptype,clickable:e.clickable}),"yes"==e.scrollbar&amp;&amp;(i.scrollbar={el:r+" .eae-swiper-scrollbar",hide:!0}),i.on={resize:function(){0!=e.autoplay&amp;&amp;this.autoplay.start()}},new(0,elementorFrontend.utils.swiper)(jQuery(a),i).then((n=&gt;{const i=n,a=e.pause_on_hover;"yes"==e.loop&amp;&amp;this.after_swiper_load_func(i,t),"yes"==a&amp;&amp;this.pause_on_hover_func(i,a,t,e)})),jQuery(".elementor-element-"+t+" .ae-swiper-container").css("visibility","visible")}pause_on_hover_func(e,t,n,i=""){jQuery(".elementor-element-"+n+" .eae-swiper-container").hover((function(){e.autoplay.stop()}),(function(){i.hasOwnProperty("pause_on_interaction")||"yes"==i.pause_on_interaction||e.autoplay.start()}))}after_swiper_load_func(e,t=""){e.length&gt;0?e.forEach((function(e){})):(e.on("slideChangeTransitionStart",(function(){e.$wrapperEl.find(".swiper-slide-duplicate").each((function(n){if(null!==n.closest(".eae-vg-video-container")){let e=n.querySelector(".eae-vg-element");e.addEventListener("click",(function(t){let n=e;if(n.classList.remove("eae-vg-image-overlay"),n.getAttribute("data-video-url"),"hosted"!=n.getAttribute("data-video-type")){let e=n.getAttribute("data-video-url");n.innerHTML="";var i=document.createElement("iframe");i.classList.add("eae-vg-video-iframe"),i.setAttribute("src",e),i.setAttribute("frameborder","0"),i.setAttribute("allowfullscreen","1"),i.setAttribute("allow","accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture"),n.append(i)}else if(null==n.querySelector(".eae-hosted-video")){let e=n.getAttribute("data-hosted-html");n.innerHTML="";let t=JSON.parse(e);n.innerHTML+=t;let i=n.querySelector("video");i.setAttribute("autoplay","autoplay"),n.hasAttribute("data-video-downaload")&amp;&amp;i.setAttribute("controlslist","nodownload"),n.hasAttribute("data-controls")&amp;&amp;i.setAttribute("controls","")}}))}n.querySelectorAll(".open-popup-link").forEach((e=&gt;jQuery(e).eaePopup({type:"inline",midClick:!0,mainClass:"eae-wp-modal-box eae-wp-"+t,callbacks:{open:function(){jQuery(window).trigger("resize")}}})));const i=n.closest(".eae-testimonial-wrapper");if(null!==i){const e=parseInt(i.getAttribute("data-stacked")),t=i.querySelectorAll(".eae-additional-image.eae-preset-2");null!==i&amp;&amp;window.addEventListener("resize",(function(){this.window.innerWidth&lt;=e?t.forEach((e=&gt;{e.style.display="none"})):t.forEach((e=&gt;{e.style.display="flex"}))}))}e.init()}))})),e.init())}}},340:()=&gt;{!function(e){const t=function(e){const t=document.querySelectorAll(".wta-eae-business-heading-wrapper"),n=e.attr("data-id"),i=document.querySelector(".elementor-element-"+n),a=i.querySelector(".wts-eae-business-days");let o=i.querySelector(".eae-tile-icon.eae-lottie-animation");if(a.querySelectorAll(".eae-business-weekdays-wrapper").forEach((e=&gt;{if(isLottiePanle=e.querySelector(".eae-lottie"),null!=isLottiePanle){let e=JSON.parse(isLottiePanle.getAttribute("data-lottie-settings")),t=lottie.loadAnimation({container:isLottiePanle,path:e.url,renderer:"svg",loop:e.loop});1==e.reverse&amp;&amp;t.setDirection(-1)}})),null!=o){let e=JSON.parse(o.getAttribute("data-lottie-settings")),t=lottie.loadAnimation({container:o,path:e.url,renderer:"svg",loop:e.loop});1==e.reverse&amp;&amp;t.setDirection(-1)}t.forEach((t=&gt;{const n=e.attr("data-id"),i=(document.querySelector(".elementor-element-"+n),t.getAttribute("data-timezone"));let a=t.getAttribute("data-format");a="true"==a;let o=JSON.parse(t.getAttribute("data-settings"));const r={hour:"numeric",minute:"numeric",second:"numeric",hour12:a};function s(e){const n=new Date;let i;if(/^(\+|\-)\d{1,2}:\d{2}$/.test(e)){const[t,n]=e.split(":").map(Number);i=60*(60*t+n)}else if(Intl.DateTimeFormat(void 0,{timeZone:e}).resolvedOptions().timeZone===e){let i=new Date;i=i.toLocaleString("en-US",{timeZone:e}),n.setTime(Date.parse(i));var a=n;glbCurrenttime=n.getTime(),t.querySelector(".eae-indicator-time").innerHTML=a.toLocaleString("en-US",r)}if(i&gt;=0||i&lt;=0){const e=n.getTime()+6e4*n.getTimezoneOffset();n.setTime(e+1e3*i),a=n;let t=new Date;const o=t.getTime()+1e3*i;t.setTime(o),glbCurrenttime=Math.ceil(t.getTime()/1e3)}const o=t.querySelector(".eae-indicator-time");null!=o&amp;&amp;(o.innerHTML=a.toLocaleString("en-US",r))}function l(){openWrn=t.querySelector(".eae-bh-bi-open-wmsg"),closeWrn=t.querySelector(".eae-bh-bi-close-wmsg");const e=t.querySelector(".currentday");if(null!=e){const n=e.querySelectorAll(".bultr-bh-label-wrap"),i=Object.values(n);for(const e of i){const n=parseInt(e.getAttribute("data-open")),i=parseInt(e.getAttribute("data-close"));if("yes"==o.indctLabel&amp;&amp;(incicatorLabel=t.querySelector(".bultr-labelss"),incicatorLabel)){if(glbCurrenttime&gt;n&amp;&amp;glbCurrenttime&lt;i){incicatorLabel.innerHTML=o.openLableTxt,incicatorLabel.classList.add("bultr-lbl-open"),incicatorLabel.classList.remove("bultr-lbl-close");break}incicatorLabel.innerHTML=o.closeLabelTxt,incicatorLabel.classList.add("bultr-lbl-close"),incicatorLabel.classList.remove("bultr-lbl-open")}}for(const e of i){const n=parseInt(e.getAttribute("data-open")),i=parseInt(e.getAttribute("data-close"));if(openWrn=t.querySelector(".eae-bh-bi-open-wmsg"),closeWrn=t.querySelector(".eae-bh-bi-close-wmsg"),n&gt;glbCurrenttime){openmints=Math.ceil((n-glbCurrenttime)/60),openmints&lt;=parseInt(o.openMints)&amp;&amp;"yes"==o.openWrnMsg&amp;&amp;(openWrn||(openWrn=document.createElement("div"),openWrn.setAttribute("class","bultr-bh-bi-open-wmsg")),openWrn.innerHTML=o.openWrnMsgTxt+" "+openmints+" Minutes");break}openWrn&amp;&amp;(openWrn.innerHTML=""),(glbCurrenttime&lt;i||glbCurrenttime&gt;n)&amp;&amp;(closemints=Math.ceil((i-glbCurrenttime)/60),closemints&lt;=parseInt(o.closeMints)&amp;&amp;(closemints&gt;0?"yes"==o.closeWrnMsg&amp;&amp;(closeWrn||(closeWrn=document.createElement("div"),closeWrn.setAttribute("class","bultr-bh-bi-close-wmsg")),closeWrn.innerHTML=o.closeWrnMsgText+" "+closemints+" Minutes",closeWrn.innerHTML=o.closeWrnMsgText+" "+closemints+" Minutes"):closeWrn&amp;&amp;(closeWrn.innerHTML="")))}}}"yes"==o.businessIndicator&amp;&amp;(s(i),setInterval(s,1e3,i),l(),setInterval(l,1e3))}))};e(window).on("elementor/frontend/init",(function(){elementorFrontend.hooks.addAction("frontend/element_ready/eae-business-hours.default",t)}))}(jQuery)},107:()=&gt;{!function(e){const t=function(e){const t=e.attr("data-id"),n=document.querySelector(".elementor-element-"+t);let i=n.querySelector(".eae-cta-icon.eae-lottie");if(null!=i){let e=JSON.parse(i.getAttribute("data-lottie-settings")),t=lottie.loadAnimation({container:i,path:e.url,renderer:"svg",loop:e.loop});1==e.reverse&amp;&amp;t.setDirection(-1)}let a=n.querySelector(".eae-cta-button").querySelectorAll(".eae-lottie");null!=a&amp;&amp;a.forEach((function(e){let t=JSON.parse(e.getAttribute("data-lottie-settings")),n=lottie.loadAnimation({container:e,path:t.url,renderer:"svg",loop:t.loop});1==t.reverse&amp;&amp;n.setDirection(-1)}))};e(window).on("elementor/frontend/init",(function(){elementorFrontend.hooks.addAction("frontend/element_ready/eae-call-to-action.default",t)}))}(jQuery)},45:()=&gt;{jQuery(window).on("elementor/frontend/init",(function(){var e,t=elementorModules.frontend.handlers.Base;e=t.extend({getDefaultElements:function(){const e=this.$element.data("id"),t=document.querySelector(".elementor-element-"+e),n=t.querySelector(".eae-cp-wrapper"),i=JSON.parse(n.getAttribute("data-settings"));return{eid:e,element:t,wrapper:n,data:i}},onInit:function(){const e=this,{wrapper:t,data:n}=this.getDefaultElements();if(e.getLottie(t),e.contentBoxSize(),null!=n){const i=t.querySelector(".eae-cp-canvas-wrapper"),a=(t,i)=&gt;{t.forEach((t=&gt;{if(t.isIntersecting){const i=t.target;i.classList.contains("trigger")||(i.classList.add("trigger"),e.getTrack(i,n))}}))};new IntersectionObserver(a,{root:null,rootMargin:"0px 0px -30% 0px"}).observe(i)}},onElementChange:function(e){"cp_track_width"!==e&amp;&amp;"cp_track_width"!==e||this.contentBoxSize()},getTrack:function(e,t){const n=this.getElementSettings(),i=e.querySelector(".eae-cp-canvas"),a=i.width/2,o=i.width*(t.progress_width/100)/2,r=i.width*(t.track_width/100)/2,s=e.querySelector(".eae-cp-procent"),l=i.getContext("2d"),c=t.start_angle,d=t.value,u=t.layout_type,p="full-circle"==u?360:180,f=i.width/2;let g=0,m=0;const h="percentage"==n.cp_value_type?"100":n.cp_max_value,v=t.animation_duration/(d/h*p);let y=0,w=0,b=0,S=0;S=o&gt;=r?a-o/2:a-r/2,"full-circle"==u?(w=d/h*360,y=d,g=i.height/2,b="butt"==t.track_layout?"reverse"==t.animation_direction?Math.PI/180*(360-(c+90)):Math.PI/180*(360-(90-c)):"reverse"==t.animation_direction?Math.PI/180*(360-(c+90)+t.progress_width/2):Math.PI/180*(360-(90-c)-t.progress_width/2)):(w=d/h*180,g=i.height,y=d),l.lineCap=t.track_layout;let L=0,A="";if("gradient"==t.progress_color_type){const e=l.createConicGradient(b,f,g),n=t.progress_gradient_color;let i=0,a="";n.forEach((function(n){""!==n.cp_progress_gradient_color&amp;&amp;("full-circle"==u?(i=1*n.cp_progress_color_stop.size/100,"reverse"==t.animation_direction&amp;&amp;(i=1-i)):i="reverse"==t.animation_direction?1-.5*n.cp_progress_color_stop.size/100:.5*n.cp_progress_color_stop.size/100+.5,a=n.cp_progress_gradient_color,e.addColorStop(i,a))})),A=e}else A=t.progress_color;let q=0;if(null!==s||"yes"==t.hide_value&amp;&amp;""!=d){let e=setInterval((function(){if("full-circle"==u?("percentage"==n.cp_value_type?(L+=1,m=L/360*100):(L+=1,m=h*(L/360)),q=L,trackStartA=Math.PI/180*270,trackEndA=Math.PI/180*630,"reverse"==t.animation_direction?(progStartA=Math.PI/180*(360-(c+90)-L),progEndA=Math.PI/180*(360-(c+90))):(progStartA=Math.PI/180*(360-(90-c)),progEndA=Math.PI/180*(360-(90-c)+L)),"yes"!==t.hide_value&amp;&amp;(s.innerHTML=parseInt(m))):"half-circle"==u&amp;&amp;("percentage"==n.cp_value_type?(0!=d&amp;&amp;(L+=1),m=L/180*100):(0!=d&amp;&amp;(L+=1),m=h*(L/180*100)/100),q=L,trackStartA=1*Math.PI,trackEndA=0*Math.PI,"reverse"==t.animation_direction?(progEndA=Math.PI/180*720,progStartA=Math.PI/180*(360-L+360)):(progStartA=Math.PI/180*540,progEndA=Math.PI/180*(180+L)),"yes"!==t.hide_value&amp;&amp;(s.innerHTML=parseInt(m))),l.clearRect(0,0,i.width,i.height),""!==t.track_width&amp;&amp;0!==t.track_width&amp;&amp;(l.beginPath(),l.arc(f,g,S,trackStartA,trackEndA),l.strokeStyle=t.track_color,l.lineWidth=r,l.stroke()),""!=h&amp;&amp;0!=d&amp;&amp;""!==t.progress_width&amp;&amp;0!==t.progress_width&amp;&amp;(l.beginPath(),l.strokeStyle=A,l.lineWidth=o,l.arc(f,g,S,progStartA,progEndA)),l.stroke(),"full-circle"==u){for(;q&lt;L+.99;)q.toFixed(2)==w&amp;&amp;(clearInterval(e),null!==s&amp;&amp;(s.innerHTML=d)),q+=.01;m&gt;=y&amp;&amp;(clearInterval(e),null!==s&amp;&amp;(s.innerHTML=d))}else{for(;q&lt;L+.99;)q.toFixed(2)==w&amp;&amp;(clearInterval(e),null!==s&amp;&amp;(s.innerHTML=d)),q+=.01;(m&gt;=y||1==y)&amp;&amp;(clearInterval(e),null!==s&amp;&amp;(s.innerHTML=d))}0!=d&amp;&amp;""!=d||clearInterval(e)}),v)}},getLottie:function(e){if(isLottiePanel=e.querySelector(".eae-lottie"),null!=isLottiePanel){let e=JSON.parse(isLottiePanel.getAttribute("data-lottie-settings")),t=lottie.loadAnimation({container:isLottiePanel,path:e.url,renderer:"svg",loop:e.loop});1==e.reverse&amp;&amp;t.setDirection(-1)}},contentBoxSize:function(){let e=this.getElementSettings(),t=e.cp_content_box_size,n=e.cp_track_width,i=e.cp_progress_width;const{wrapper:a,data:o}=this.getDefaultElements();let r=a.querySelector(".eae-cp-text-contain");if(null!=r){let e=0;n.size&gt;=i.size?""!==n.size&amp;&amp;(e=n.size):""!==i.size&amp;&amp;(e=i.size);let a=e,s=e;r.style.width="calc("+t.size+"% - "+a+"%)",r.style.height="calc("+t.size+"% - "+s+"%)","half-circle"==o.layout_type&amp;&amp;(borderRadius=r.offsetHeight+"px "+r.offsetHeight+"px  0 0",r.style.borderRadius=borderRadius)}}}),elementorFrontend.hooks.addAction("frontend/element_ready/eae-circular-progress.default",(function(t){elementorFrontend.elementsHandler.addHandler(e,{$element:t})}))}))},234:()=&gt;{},289:()=&gt;{"use strict";!function(e){const t=function(e){const t=e.attr("data-id"),n=document.querySelector(".elementor-element-"+t),i=n.querySelector(".eae-device-video-outer-wrapper"),a=n.querySelector(".orientation i"),o=n.querySelector(".eae-wrapper");if(n.querySelector(".device-content").hasAttribute("data-settings")){var r=e.find(".device-content"),s=r.find(".device-img-content"),l=r.data("settings"),c=r.find("img"),d=l.direction,u=l.reverse,p=null;let g=n.querySelector(".eae-device-wrapper");function m(){c.css("transform",("vertical"===d?"translateY":"translateX")+"( -"+p+"px)")}function h(){c.css("transform",("vertical"===d?"translateY":"translateX")+"(0px)")}function v(){p=g.classList.contains("device-iphone11")?"vertical"===d?c.height()-r.height():c.width()-2.5*r.width():"vertical"===d?c.height()-r.height():c.width()-2*r.width()}"scroll"===l.trigger?(r.addClass("eae-container-scroll"),"vertical"===d&amp;&amp;s.addClass("scroll-vertical")):("yes"===u&amp;&amp;r.imagesLoaded((function(){r.addClass("eae_scroll"),v(),m()})),"vertical"===d&amp;&amp;s.removeClass("eae-image-scroll-ver"),r.mouseenter((function(){v(),"yes"===u?h():m()})),r.mouseleave((function(){"yes"===u?m():h()})))}if(n.querySelectorAll(".device-img-content").forEach((e=&gt;{let t=e.querySelector(".eae-lottie");if(null!=t){let e=JSON.parse(t.getAttribute("data-lottie-settings")),n=lottie.loadAnimation({container:t,path:e.url,renderer:"svg",loop:e.loop});1==e.reverse&amp;&amp;n.setDirection(-1)}})),null!=a||null!=a){function y(e,t){e.classList.toggle("rotate"),t.classList.toggle("landscape")}a.addEventListener("click",(function(e){y(a,o)}))}if(null!=i){i.getAttribute("data-video-type");let w=i.getAttribute("data-autoplay");i.addEventListener("click",(function(e){elementorFrontend.isEditMode()||f(this)})),"1"!=w||elementorFrontend.isEditMode()||new IntersectionObserver(((e,t)=&gt;{e.forEach((e=&gt;{e.isIntersecting&amp;&amp;f(e.target,"autoplay")}))}),{root:null,rootMargin:"0px 0px -300px 0px"}).observe(i)}function f(e,t="null"){let i=e.getAttribute("data-video-type"),a=e.querySelector(".eae-device-video-play"),o="",r="";if(n.querySelector(".device-text").style.visibility="hidden","hosted"!=i&amp;&amp;(o=a.getAttribute("data-src")),"hosted"==i&amp;&amp;(r=e.getAttribute("data-hosted-html")),"hosted"!=i){var s=document.createElement("iframe");s.classList.add("eae-video-iframe"),s.setAttribute("src",o),s.setAttribute("frameborder","0"),s.setAttribute("allowfullscreen","1"),s.setAttribute("allow","accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture"),a.innerHTML="",e.classList.contains(".eae-sticky-apply")||null==e.querySelector(".eae-video-display-details")||(e.querySelector(".eae-video-display-details").style.display="none"),a.append(s)}else if("hosted"==i&amp;&amp;null==a.querySelector(".eae-hosted-video")){a.innerHTML="";let e=JSON.parse(r);a.innerHTML+=e,a.querySelector("video").setAttribute("autoplay","autoplay"),a.querySelector("video").style.width="100%",a.querySelector("video").style.height="100%"}}};e(window).on("elementor/frontend/init",(function(){elementorFrontend.hooks.addAction("frontend/element_ready/eae-devices.default",t)}))}(jQuery)},482:()=&gt;{!function(e){const t=function(t){const n=t.attr("data-id"),i=document.querySelector(".elementor-element-"+n);let a=t.find(".eae-faq-wrapper").data("settings");if("accordion"===a.faq_layout){let n=a.faq_trigger_action,i=a.faq_accordion_transition_speed,o=a.faq_accordion_toggle,r=t.find(".eae-faq-item-wrapper &gt; .eae-faq-answer");t.find(".eae-faq-question").on(`${n}`,(function(t){if(t.preventDefault(),$this=e(this),"yes"!==o){if($this.hasClass("eae-faq-active")){if("click"===n)return!1;$this.removeClass("eae-faq-active"),$this.next(".eae-faq-answer").slideUp(i,"swing",(function(){e(this).prev().removeClass("eae-faq-active"),$this.attr("aria-expanded","false")}))}else r.hasClass("eae-faq-active")&amp;&amp;r.removeClass("eae-faq-active"),r.slideUp(i,"swing",(function(){e(this).prev().removeClass("eae-faq-active")})),$this.addClass("eae-faq-active"),$this.next(".eae-faq-answer").slideDown(i,"swing",(function(){e(this).prev().addClass("eae-faq-active"),$this.attr("aria-expanded","true")}));return!1}$this.hasClass("eae-faq-active")?($this.removeClass("eae-faq-active"),$this.attr("aria-expanded","false")):($this.addClass("eae-faq-active"),$this.attr("aria-expanded","true")),$this.next(".eae-faq-answer").slideToggle(i,"swing")}))}i.querySelector(".eae-faq-wrapper").querySelectorAll(".eae-faq-item-wrapper").forEach((e=&gt;{let t=e.querySelector(".eae-lottie");if(null!=t){let e=JSON.parse(t.getAttribute("data-lottie-settings")),n=lottie.loadAnimation({container:t,path:e.url,renderer:"svg",loop:e.loop});1==e.reverse&amp;&amp;n.setDirection(-1)}}))};e(window).on("elementor/frontend/init",(function(){elementorFrontend.hooks.addAction("frontend/element_ready/eae-faq.default",t)}))}(jQuery)},867:()=&gt;{!function(e){const t=function(t){const n=t.attr("data-id"),i=document.querySelector(".elementor-element-"+n).querySelector(".wta-eae-floating-image-wrapper");let a=i.querySelectorAll(".wts-eae-image.lottie-animation");i.querySelectorAll(".wts-eae-image").forEach((t=&gt;{let n=t.getAttribute("data-settings"),i=JSON.parse(n),a="",o="";if(i.hasOwnProperty("isRotate")&amp;&amp;"yes"==i.isRotate&amp;&amp;(i.rotateX,i.rotateY,i.rotateZ,a="rotateX("+i.rotateX.from+"deg) rotateY("+i.rotateY.from+"deg) rotateZ("+i.rotateZ.from+"deg)",o="rotateX("+i.rotateX.to+"deg) rotateY("+i.rotateY.to+"deg) rotateZ("+i.rotateZ.to+"deg)"),i.hasOwnProperty("isTranslate")&amp;&amp;"yes"==i.isTranslate){let e=i.translateX,t=i.translateY;a=a+"translateX("+e.from+"px) translateY("+t.from+"px)",o=o+"translateX("+e.to+"px) translateY("+t.to+"px)"}if(i.hasOwnProperty("isScale")&amp;&amp;"yes"==i.isScale){let e=i.scaleX,t=i.scaleZ;a=a+" scaleX("+e.from+") scaleY("+t.from+")",o=o+"scaleX("+e.to+") scaleY("+t.to+")"}let r="crazy"+Math.random().toString(36).substring(2,7);jQuery.keyframe.define({name:r,from:{transform:a},to:{transform:o}}),e(t).playKeyframe({name:r,duration:i.Duration+"ms",timingFunction:"linear",delay:(""==i.Delay?0:i.Delay)+"ms",iterationCount:"infinite",direction:i.animationDirection,fillMode:"forwards",complete:function(){}})})),a.forEach((e=&gt;{if(isLottiePanle=e.querySelector(".eae-lottie"),null!=isLottiePanle){let e=JSON.parse(isLottiePanle.getAttribute("data-lottie-settings")),t=lottie.loadAnimation({container:isLottiePanle,path:e.url,renderer:"svg",loop:e.loop});1==e.reverse&amp;&amp;t.setDirection(-1)}}))};e(window).on("elementor/frontend/init",(function(){elementorFrontend.hooks.addAction("frontend/element_ready/eae-floating-element.default",t)}))}(jQuery)},839:(e,t,n)=&gt;{"use strict";var i=n(305);jQuery(window).on("elementor/frontend/init",(function(){var e,t=elementorModules.frontend.handlers.Base;e=t.extend({getDefaultSettings:function(){return{settings:this.getElementSettings()}},getDefaultElements:function(){const e=this.$element.data("id"),t=this.$element,n=document.querySelector(".elementor-element-"+e),i=n.querySelector(".eae-rw-container");return{eid:e,scope:t,element:n,wrapper:i}},onInit:function(){const e=this,{eid:t,scope:n,element:a,wrapper:o}=this.getDefaultElements(),{settings:r}=this.getDefaultSettings();if(null!=o){if(o.classList.contains("eae-rw-swiper")){const e=n.find(".eae-swiper-outer-wrapper").data("swiper-settings");new i.Y(e,t,n)}e.getLottie(o)}},getLottie:function(e){const t=e.querySelectorAll(".eae-lottie");null!=t&amp;&amp;t.forEach((function(e){let t=JSON.parse(e.getAttribute("data-lottie-settings")),n=lottie.loadAnimation({container:e,path:t.url,renderer:"svg",loop:t.loop});1==t.reverse&amp;&amp;n.setDirection(-1)}))}}),elementorFrontend.hooks.addAction("frontend/element_ready/eae-google-reviews.default",(function(t){elementorFrontend.elementsHandler.addHandler(e,{$element:t})}))}))},404:()=&gt;{!function(e){const t=function(e){const t=e.attr("data-id"),a=document.querySelector(".elementor-element-"+t).querySelector(".eae-img-acc-wrapper"),o=a.getAttribute("data-items");a.style.setProperty("--eae-panels",Number(o)-1);const r=a.getAttribute("data-action");a.querySelectorAll(".eae-img-panel").forEach((e=&gt;{if("hover"==r?(e.addEventListener("mousemove",(function(t){this.classList.contains("active")||(n(a),e.classList.add("active"),i(a))})),e.addEventListener("mouseleave",(function(t){e.classList.remove("active"),i(a)}))):e.addEventListener("click",(function(t){this.classList.contains("active")||(n(a),e.classList.add("active"))})),isLottiePanle=e.querySelector(".eae-lottie"),null!=isLottiePanle){let e=JSON.parse(isLottiePanle.getAttribute("data-lottie-settings")),t=lottie.loadAnimation({container:isLottiePanle,path:e.url,renderer:"svg",loop:e.loop});1==e.reverse&amp;&amp;t.setDirection(-1)}})),window.addEventListener("resize",(function(){let e=a.getAttribute("data-stacked");this.window.innerWidth&lt;=e?a.classList.add("enable-stacked"):a.classList.remove("enable-stacked")}))};function n(e){e.querySelectorAll(".eae-img-panel").forEach((e=&gt;{e.classList.remove("active")}))}function i(e){let t=e.getAttribute("data-defult-panel");e.querySelectorAll(".eae-img-panel.active").length&gt;0||e.querySelectorAll(".eae-img-panel")[t-1].classList.add("active")}e(window).on("elementor/frontend/init",(function(){elementorFrontend.hooks.addAction("frontend/element_ready/eae-image-accordion.default",t)}))}(jQuery)},361:()=&gt;{jQuery(window).on("elementor/frontend/init",(function(){var e,t=elementorModules.frontend.handlers.Base;e=t.extend({getDefaultElements:function(){const e=this.$element.data("id"),t=document.querySelector(".elementor-element-"+e),n=t.querySelector(".eae-ih-wrapper");return{eid:e,element:t,wrapper:n,settings:this.getElementSettings()}},onInit:function(){const{wrapper:e,settings:t}=this.getDefaultElements(),n=e.querySelectorAll(".eae-ih-marker"),i=e.querySelectorAll(".eae-ih-tooltip"),a=t.tooltip_animation_type,o=e.querySelectorAll(".eae-ih-tooltip-show"),r=e.querySelectorAll(".eae-ih-rep-tooltip-show");this.getLottie();const s=[];n.forEach((function(e,l){const c=i[l].innerHTML;s[l]=tippy(e,{content:c,appendTo:"parent",placement:"auto",allowHTML:!0,hideOnClick:!1,arrow:!0,trigger:t.trigger,maxWidth:"none",onCreate:function(t){t.popper.classList.add("eae-ih-add-tooltip"),t.popper.childNodes.forEach((function(e){e.classList&amp;&amp;(e.classList.add("animated"),e.classList.add("eae-ih-tooltip-animtion"),e.classList.add(a))}));const i=t.popper.querySelector(".eae-ih-tooltip-prev");null!=i&amp;&amp;i.addEventListener("click",(function(){const e=this.getAttribute("data-tooltip-id")-1;s[e].hide(),s[e-1].show()}));const r=t.popper.querySelector(".eae-ih-tooltip-next");null!=r&amp;&amp;r.addEventListener("click",(function(){const e=this.getAttribute("data-tooltip-id")-1;s[e].hide(),s[e+1].show()}));const c=t.popper.querySelector(".eae-ih-end-tour-btn");null!=c&amp;&amp;c.addEventListener("click",(function(){const t=this.getAttribute("data-tooltip-id");s[t-1].hide(),o.length&gt;0&amp;&amp;elementorFrontend.isEditMode()&amp;&amp;s[0].show(),e.classList.contains("eae-ih-rep-tooltip-show")&amp;&amp;s[l].show()}));const d=t.popper.querySelector(".eae-ih-tooltip-close-icon");null!=d&amp;&amp;d.addEventListener("click",(function(){const t=this.getAttribute("data-tooltip-id");s[t-1].hide(),o.length&gt;0&amp;&amp;elementorFrontend.isEditMode()&amp;&amp;s[0].show(),e.classList.contains("eae-ih-rep-tooltip-show")&amp;&amp;s[l].show()})),0==l&amp;&amp;null!=i&amp;&amp;(i.style.display="none"),l==n.length-1&amp;&amp;null!=r&amp;&amp;(r.style.display="none")}}),e.addEventListener("click",(function(){s.forEach(((t,n)=&gt;{if(o.length&gt;0||r.length&gt;0){const t=this.getAttribute("data-marker")-1;e.classList.contains("eae-ih-tooltip-show")||e.classList.contains("eae-ih-rep-tooltip-show")?s[t]&amp;&amp;s[t].show():s[t]&amp;&amp;s[t].hide()}0==o.length&amp;&amp;0==r.length&amp;&amp;n!==l&amp;&amp;t.hide(),elementorFrontend.isEditMode()||n!==l&amp;&amp;t.hide()}))}))})),o.length&gt;0&amp;&amp;s[0].show(),r.length&gt;0&amp;&amp;r.forEach((e=&gt;{const t=e.getAttribute("data-marker")-1;s[t]&amp;&amp;s[t].show()}))},getLottie:function(){const{wrapper:e}=this.getDefaultElements();e.querySelectorAll(".eae-lottie").forEach((function(e){if(null!=e){let t=JSON.parse(e.getAttribute("data-lottie-settings")),n=lottie.loadAnimation({container:e,appendTo:"parent",path:t.url,renderer:"svg",loop:t.loop});1==t.reverse&amp;&amp;n.setDirection(-1)}}))}}),elementorFrontend.hooks.addAction("frontend/element_ready/eae-image-hotspot.default",(function(t){elementorFrontend.elementsHandler.addHandler(e,{$element:t})}))}))},537:()=&gt;{!function(e){const t=function(e){var t=e.find(".wts-eae-image-scroll"),n=(t.find(".image-scroll-wrapper::before"),t.find(".image-scroll-wrapper")),i=t.data("settings"),a=t.find("img"),o=i.direction,r=i.reverse,s=null;const l=e.attr("data-id");var c=document.querySelector(".elementor-element-"+l).querySelector(".eae-lottie-animation");if(null!=c){let e=JSON.parse(c.getAttribute("data-lottie-settings")),t=lottie.loadAnimation({container:c,path:e.url,renderer:"svg",loop:e.loop});1==e.reverse&amp;&amp;t.setDirection(-1)}function d(){a.css("transform",("vertical"===o?"translateY":"translateX")+"( -"+s+"px)")}function u(){a.css("transform",("vertical"===o?"translateY":"translateX")+"(0px)")}function p(){s="vertical"===o?a.height()-t.height():a.width()-t.width()}"scroll"===i.trigger?(t.addClass("eae-container-scroll"),"vertical"===o&amp;&amp;n.addClass("eae-image-scroll-ver")):("yes"===r&amp;&amp;t.imagesLoaded((function(){t.addClass("eae_scroll"),p(),d()})),"vertical"===o&amp;&amp;n.removeClass("eae-image-scroll-ver"),t.mouseenter((function(){p(),"yes"===r?u():d()})),t.mouseleave((function(){"yes"===r?d():u()})))};e(window).on("elementor/frontend/init",(function(){elementorFrontend.hooks.addAction("frontend/element_ready/eae-image-scroll.default",t)}))}(jQuery)},210:()=&gt;{!function(e){const t=function(e){const t=e.attr("data-id");document.querySelector(".elementor-element-"+t).querySelector(".eae-image-stack").querySelectorAll(".img-stack-item.eae-is-ct-lottie-animation").forEach((e=&gt;{if(isLottiePanle=e.querySelector(".eae-lottie"),null!=isLottiePanle){let e=JSON.parse(isLottiePanle.getAttribute("data-lottie-settings")),t=lottie.loadAnimation({container:isLottiePanle,path:e.url,renderer:"svg",loop:e.loop});1==e.reverse&amp;&amp;t.setDirection(-1)}}))};e(window).on("elementor/frontend/init",(function(){elementorFrontend.hooks.addAction("frontend/element_ready/eae-image-stack.default",t)}))}(jQuery)},898:()=&gt;{jQuery(window).on("elementor/frontend/init",(function(){var e,t=elementorModules.frontend.handlers.Base;e=t.extend({getDefaultSettings:function(){return{settings:this.getElementSettings()}},getDefaultElements:function(){const e=this.$element.data("id"),t=document.querySelector(".elementor-element-"+e),n=t.querySelector(".eae-ig-wrapper");return{eid:e,element:t,wrapper:n}},onInit:function(){const{element:e,wrapper:t}=this.getDefaultElements(),{settings:n}=this.getDefaultSettings();isLottiePanel=t.querySelectorAll(".eae-ig-lottie"),null!=isLottiePanel&amp;&amp;isLottiePanel.forEach((e=&gt;{let t=JSON.parse(e.getAttribute("data-lottie-settings")),n=lottie.loadAnimation({container:e,path:t.url,renderer:"svg",loop:t.loop});1==t.reverse&amp;&amp;n.setDirection(-1)}));let i="",a="";const o=e.querySelectorAll(".eae-ig-item-wrapper");o.forEach((e=&gt;{e.classList.contains("eae-ig-active-item")&amp;&amp;(t.classList.add("eae-ig-active"),e.classList.contains("slide")?this.infoSlideDown(e):this.infoFadeIn(e),i=e,a=e)})),e.querySelectorAll(".eae-ig-close-button").forEach((e=&gt;{e.addEventListener("click",(()=&gt;{o.forEach((e=&gt;{e.classList.contains("eae-ig-active-item")&amp;&amp;(this.cloAnimation(e,n.description_animtion_type),e.classList.remove("eae-ig-active-item"),t.classList.remove("eae-ig-active"),i="",a="")}))}))})),"button"==n.description_trigger_on?e.querySelectorAll(".eae-ig-link").forEach((e=&gt;{e.addEventListener("click",(()=&gt;{if(o.forEach((e=&gt;{e.classList.contains("eae-ig-active-item")&amp;&amp;(this.cloAnimation(e,n.description_animtion_type),e.classList.remove("eae-ig-active-item"),t.classList.remove("eae-ig-active"))})),i!==e){let o=e.parentElement.parentElement;o.classList.add("eae-ig-active-item"),t.classList.add("eae-ig-active"),this.opAnimation(o,n.description_animtion_type),i=e,a=""}else i=""}))})):o.forEach((e=&gt;{e.addEventListener("click",(()=&gt;{o.forEach((e=&gt;{e.classList.contains("eae-ig-active-item")&amp;&amp;(e.classList.remove("eae-ig-active-item"),t.classList.remove("eae-ig-active"),this.cloAnimation(e,n.description_animtion_type))})),a!=e?(e.classList.add("eae-ig-active-item"),t.classList.add("eae-ig-active"),this.opAnimation(e,n.description_animtion_type),a=e):a="",i=""}))}))},opAnimation:function(e,t){"slide"==t?setTimeout(this.infoSlideDown,400,e):setTimeout(this.infoFadeIn,400,e)},cloAnimation:function(e,t){"slide"==t?this.infoSlideUp(e):this.infoFadeOut(e)},infoSlideUp:function(e){let t=e.nextSibling.nextElementSibling;jQuery(t).slideUp()},infoSlideDown:function(e){let t=e.nextSibling.nextElementSibling;jQuery(t).slideDown()},infoFadeIn:function(e){let t=e.nextSibling.nextElementSibling;jQuery(t).fadeIn()},infoFadeOut:function(e){let t=e.nextSibling.nextElementSibling;jQuery(t).fadeOut()}}),elementorFrontend.hooks.addAction("frontend/element_ready/eae-info-group.default",(function(t){elementorFrontend.elementsHandler.addHandler(e,{$element:t})}))}))},862:(e,t,n)=&gt;{"use strict";var i=n(305);jQuery(window).on("elementor/frontend/init",(function(){var e,t=elementorModules.frontend.handlers.Base;e=t.extend({getDefaultSettings:function(){return{selectors:{container:".eae-post-collection",item:".eae-insta-post",grid_gap:".grid-gap",swiper_wrapper:".eae-swiper-outer-wrapper"},settings:this.getElementSettings()}},getDefaultElements:function(){const e=this.getSettings("selectors");return{container:this.$element.find(e.container),items:this.$element.find(e.item),grid_gap:this.$element.find(e.grid_gap),swiper_wrapper:this.$element.find(e.swiper_wrapper)}},onInit:function(){const{container:e}=this.getDefaultElements(),{settings:t}=this.getSettings(),n=this;"masonry"==t.insta_feed_layout&amp;&amp;e.imagesLoaded().done((function(){n.runMasonry()})),window.addEventListener("resize",this.runMasonry.bind(this)),this.runSwiper(),this.runLightbox()},onElementChange:function(e){"insta_feed_row_gap"===e&amp;&amp;this.runMasonry()},runMasonry:function(){const{settings:e}=this.getSettings();if("masonry"!=e.insta_feed_layout)return;const{container:t,items:n,grid_gap:i}=this.getDefaultElements();var a,o,r=[],s=0;s=t.position().top,a=t.css("grid-template-columns").split(" ").length,o=i.width(),s+=parseInt(t.css("margin-top"),10),n.each((function(e){var t=Math.floor(e/a),n=jQuery(this),i=n[0].getBoundingClientRect().height+o;if(t){var l=n.position(),c=e%a,d=l.top-s-r[c];d*=-1,n.css("margin-top",d+"px"),r[c]+=i}else r.push(i),n.css("margin-top",0);n.css("visibility","visible")}))},runSwiper:function(){const{settings:e}=this.getSettings();if("carousel"!=e.insta_feed_layout)return;const t=this.$element.data("id"),{swiper_wrapper:n}=this.getDefaultElements(),a=n.data("swiper-settings");new i.Y(a,t)},runLightbox:function(){const{container:e}=this.getDefaultElements();if(!e.hasClass("lightbox"))return;var t={selector:".eae-insta-post-link"};const n=this.$element.data("id");var i=document.getElementById("insta-grid-"+n),a=JSON.parse(e.attr("data-lg-settings"));t={...t,...a};var o={plugins:[lgVideo,lgShare,lgZoom,lgHash,lgRotate,lgFullscreen,lgThumbnail]};t={...t,...o},lightGallery(i,t)}}),elementorFrontend.hooks.addAction("frontend/element_ready/eae-instagram-feed.default",(function(t){elementorFrontend.elementsHandler.addHandler(e,{$element:t})}))}))},994:()=&gt;{jQuery(window).on("elementor/frontend/init",(function(){var e,t=elementorModules.frontend.handlers.Base;e=t.extend({getDefaultSettings:function(){return{settings:this.getElementSettings()}},getDefaultElements:function(){const e=this.$element.data("id"),t=document.querySelector(".elementor-element-"+e),n=t.querySelector(".eae-toc-wrapper");return{eid:e,element:t,wrapper:n}},onInit:function(){const{settings:e}=this.getDefaultSettings(),{wrapper:t}=this.getDefaultElements(),n=this,i=e.anchors_by_tags.join(",");this.getLottie();let a="";a=null!=e.included_container&amp;&amp;""!=e.included_container?document.querySelector(e.included_container):document.querySelector(".elementor");let o=[],r=[];if(""!=i){const s=a.querySelectorAll(i);let l=0;s.forEach((function(e,t){e.classList.contains("eae-toc-heading")&amp;&amp;l++,0==l?o[t]=e:l=0})),o=this.excludeHeadings(o),this.addAnchors(o),o.forEach((function(e,t){r.push({tag:e.nodeName.slice(1),text:e.textContent,class:e.className})})),"yes"==e.hierarchical_view?r=this.addLevel(r):r.forEach((function(e){e.level=0}));let c=this.getHeadings(0,r,0);if(""!=c.html&amp;&amp;(t.querySelector(".eae-toc-headings-wrapper").innerHTML=c.html),"yes"==e.collapse_box&amp;&amp;this.minimizeBox(t),"yes"==e.toc_sticky&amp;&amp;this.stickyToc(),"yes"==e.follow_heading){let i=t.querySelectorAll(".eae-toc-heading-anchor-wrapper"),a=[],o="";o=""!=e.follow_heading_offset.size?e.follow_heading_offset.size+e.follow_heading_offset.unit:"50%",""!=i&amp;&amp;(i.forEach((function(e,t){a[t]=document.querySelector("#eae-toc-heading-anchor-"+t)})),a.forEach((function(e,t){null!=e&amp;&amp;n.followHeading(e,t,i,o)})))}}this.getScrollEffect()},getScrollEffect:function(){let e=document.querySelector("html");e.classList.contains("eae-toc-scroll")||e.classList.add("eae-toc-scroll")},getLottie:function(){const{wrapper:e}=this.getDefaultElements();if(isLottiePanel=e.querySelector(".eae-lottie"),null!=isLottiePanel){let e=JSON.parse(isLottiePanel.getAttribute("data-lottie-settings")),t=lottie.loadAnimation({container:isLottiePanel,path:e.url,renderer:"svg",loop:e.loop});1==e.reverse&amp;&amp;t.setDirection(-1)}},addAnchors:function(e){let t=0;e.forEach((function(e,n){newNode="&lt;span id='eae-toc-heading-anchor-"+t+"'&gt;&lt;/span&gt;",e.insertAdjacentHTML("beforebegin",newNode),t++}))},addLevel:function(e){const{settings:t}=this.getDefaultSettings();return e.forEach((function(t,n){t.level=0;for(var i=n-1;i&gt;=0;i--){let n=e[i];if(n.tag&lt;=t.tag){t.level=n.level,n.tag&lt;t.tag&amp;&amp;t.level++;break}}})),e},excludeHeadings:function(e){const{settings:t}=this.getDefaultSettings();if(""!==t.anchors_by_selector&amp;&amp;void 0!==t.anchors_by_selector){let n=t.anchors_by_selector.split(",");return e.filter((e=&gt;{for(flag=0,i=0;i&lt;n.length;i++){if(e.class==n[i]||null!=e.closest(n[i])){flag=0;break}flag++}return 0!=flag?item=e:item="",item}))}return e},getHeadings:function(e,t,n){const{settings:i}=this.getDefaultSettings();let a="",o='&lt;div class="eae-toc-heading-anchor-wrapper"&gt;',r="&lt;/div&gt;";if(0!=t.length){a="&lt;ul&gt;";for(var s=n;s&lt;t.length&amp;&amp;!(e&gt;t[s].level);s++)if(e===t[s].level){let l="&lt;a class='eae-toc-heading-anchor eae-toc-heading-anchor-"+s+"' href='#eae-toc-heading-anchor-"+s+"'&gt;"+t[s].text+"&lt;/a&gt;&lt;/div&gt;";if(l="bullets"==i.marker_type?o+'&lt;i class="'+i.icon.value+'"&gt;&lt;/i&gt;'+l+r:o+l+r,a+="&lt;li&gt;"+l,n++,nextItem=t[n],null!=nextItem&amp;&amp;e&lt;nextItem.level){let e=this.getHeadings(nextItem.level,t,n);a+=e.html,n=e.listItemIn}a+="&lt;/li&gt;"}a+="&lt;/ul&gt;"}else a="No headings were found on this page.";return{html:a,listItemIn:n}},minimizeBox:function(e){const{settings:t}=this.getDefaultSettings();let n=e.querySelector(".eae-toc-heading-container"),i=e.querySelector(".eae-toc-headings-wrapper");1440==t.toc_collapse_devices&amp;&amp;1440==screen.width&amp;&amp;n.classList.add("eae-toc-active"),window.addEventListener("resize",(function(){let e=t.toc_collapse_devices;this.window.innerWidth&lt;e?(jQuery(i).slideUp(),n.classList.remove("eae-toc-active")):(jQuery(i).slideDown(),n.classList.add("eae-toc-active"))})),n.classList.contains("eae-toc-active")&amp;&amp;jQuery(i).slideDown(),n.addEventListener("click",(e=&gt;{n.classList.contains("eae-toc-active")?(jQuery(i).slideUp(),n.classList.remove("eae-toc-active")):(jQuery(i).slideDown(),n.classList.add("eae-toc-active")),i.classList.contains("eae-toc-hide")&amp;&amp;i.classList.remove("eae-toc-hide")}))},stickyToc:function(){const{settings:e}=this.getDefaultSettings(),{wrapper:t}=this.getDefaultElements(),{element:n}=this.getDefaultElements(),i=t.querySelector(".eae-toc-heading-container"),a=this;let o=0,r=this.offsetCal();if("yes"==e.toc_sticky)if(this.stickyDevices(),new Waypoint({element:t,handler:function(e){t.classList.contains("eae-toc-sticky-type-on-place")&amp;&amp;("down"==e?t.classList.contains("eae-toc-sticky")||t.classList.add("eae-toc-sticky"):t.classList.contains("eae-toc-sticky")&amp;&amp;t.classList.remove("eae-toc-sticky"))},offset:"1%"}),"yes"==e.toc_stay_in_column){const s=new Waypoint({element:n.parentElement,handler:function(i,r){t.classList.contains("eae-toc-sticky-type-on-place")&amp;&amp;("down"==i?(t.classList.contains("eae-toc-sticky")&amp;&amp;t.classList.remove("eae-toc-sticky"),n.classList.contains("eae-toc-fix")||n.classList.add("eae-toc-fix")):"up"==i&amp;&amp;(n.classList.contains("eae-toc-fix")&amp;&amp;n.classList.remove("eae-toc-fix"),t.classList.contains("eae-toc-sticky")||t.classList.add("eae-toc-sticky"))),"yes"==e.collapse_box&amp;&amp;0==o&amp;&amp;(s.destroy(),a.addParentWaypoint(),o++)},offset:"-"+r+"px"});i.classList.contains("eae-toc-active")&amp;&amp;"yes"==e.collapse_box&amp;&amp;0==o&amp;&amp;(s.destroy(),setTimeout(a.addParentWaypoint,400),o++)}else"yes"!=e.collapse_box&amp;&amp;(t.parentElement.style.height=t.clientHeight+"px")},addParentWaypoint:function(){const{settings:e}=this.getDefaultSettings(),{wrapper:t}=this.getDefaultElements(),{element:n}=this.getDefaultElements(),i=this;let a=0,o=this.offsetCal();const r=new Waypoint({element:n.parentElement,handler:function(o){t.classList.contains("eae-toc-sticky-type-on-place")&amp;&amp;("down"==o?(t.classList.contains("eae-toc-sticky")&amp;&amp;t.classList.remove("eae-toc-sticky"),n.classList.contains("eae-toc-fix")||n.classList.add("eae-toc-fix")):"up"==o&amp;&amp;(n.classList.contains("eae-toc-fix")&amp;&amp;n.classList.remove("eae-toc-fix"),t.classList.contains("eae-toc-sticky")||t.classList.add("eae-toc-sticky")),"yes"==e.collapse_box&amp;&amp;0==a&amp;&amp;(r.destroy(),i.addParentWaypoint(),a++))},offset:"-"+o+"px"});return r},offsetCal:function(){const{settings:e}=this.getDefaultSettings(),{wrapper:t}=this.getDefaultElements(),{element:n}=this.getDefaultElements();let i=n.parentElement.clientHeight-t.clientHeight;return"top"==e.vertical_alignment?""!=e.top_spacing.size&amp;&amp;(i-=e.top_spacing.size):"bottom"==e.vertical_alignment&amp;&amp;""!==e.bottom_spacing.size&amp;&amp;(i-=screen.height-t.clientHeight-e.bottom_spacing.size),i},stickyDevices:function(){const{wrapper:e}=this.getDefaultElements(),{settings:t}=this.getDefaultSettings(),n=t.toc_sticky_devices;e.classList.contains("eae-toc-sticky-type-on-place")&amp;&amp;e.classList.remove("eae-toc-sticky-type-on-place"),e.classList.contains("eae-toc-sticky")&amp;&amp;e.classList.remove("eae-toc-sticky"),n.forEach((function(t){t==elementorFrontend.getCurrentDeviceMode()&amp;&amp;(e.classList.contains("eae-toc-sticky-type-on-place")||e.classList.add("eae-toc-sticky-type-on-place"))})),window.addEventListener("resize",(function(){let t=elementorFrontend.getCurrentDeviceMode();e.classList.contains("eae-toc-sticky-type-on-place")&amp;&amp;e.classList.remove("eae-toc-sticky-type-on-place"),e.classList.contains("eae-toc-sticky")&amp;&amp;e.classList.remove("eae-toc-sticky"),n.forEach((function(n){n==t&amp;&amp;(e.classList.contains("eae-toc-sticky-type-on-place")||e.classList.add("eae-toc-sticky-type-on-place"))}))}))},followHeading:function(e,t,n,i){let a="";new Waypoint({element:document.getElementById(e.id),handler:function(t){n.forEach((function(t,n){a=t.querySelector(".eae-toc-heading-anchor"),a.classList.contains(e.id)?t.classList.contains("eae-toc-active-heading")||t.classList.add("eae-toc-active-heading"):t.classList.contains("eae-toc-active-heading")&amp;&amp;t.classList.remove("eae-toc-active-heading")}))},offset:i})}}),elementorFrontend.hooks.addAction("frontend/element_ready/eae-table-of-content.default",(function(t){elementorFrontend.elementsHandler.addHandler(e,{$element:t})}))}))},784:(e,t,n)=&gt;{"use strict";var i=n(305);!function(e){const t=function(e){if(e.find(".eae-tm-swiper-container").hasClass("eae-swiper")){const t=e.data("id"),n=e.find(".eae-tm-swiper-container").data("swiper-settings");new i.Y(n,t,e)}};e(window).on("elementor/frontend/init",(function(){elementorFrontend.hooks.addAction("frontend/element_ready/eae-team-member.default",t)}))}(jQuery)},793:(e,t,n)=&gt;{"use strict";var i=n(305);jQuery(window).on("elementor/frontend/init",(function(){var e,t=elementorModules.frontend.handlers.Base;e=t.extend({getDefaultSettings:function(){return{settings:this.getElementSettings()}},getDefaultElements:function(){const e=this.$element.data("id"),t=this.$element,n=document.querySelector(".elementor-element-"+e),i=n.querySelector(".eae-testimonial-wrapper");return{eid:e,element:n,wrapper:i,scope:t}},onInit:function(){const{settings:e}=this.getDefaultSettings(),{wrapper:t,scope:n}=this.getDefaultElements();let{element:a}=this.getDefaultElements();const{eid:o}=this.getDefaultElements(),r=t.querySelectorAll(".eae-additional-image.eae-preset-2"),s=(t.querySelectorAll(".eae-ts-content-section"),parseInt(t.getAttribute("data-stacked")));if(t.classList.contains("eae-testimonial-slider")){const e=n.find(".eae-swiper-outer-wrapper").data("swiper-settings");new i.Y(e,o,n)}window.addEventListener("resize",(function(){this.window.innerWidth&lt;=s?r.forEach((e=&gt;{e.style.display="none"})):r.forEach((e=&gt;{e.style.display="flex"}))}))}}),elementorFrontend.hooks.addAction("frontend/element_ready/eae-testimonial.default",(function(t){elementorFrontend.elementsHandler.addHandler(e,{$element:t})}))}))},393:()=&gt;{!function(e){let t=0,n=0;const i=function(e){const t=e.attr("data-id"),i=document.querySelector(".elementor-element-"+t),r=i.querySelector(".eae-video-outer-wrapper");if(n=r.getBoundingClientRect().top+window.scrollY,null!=r){let e=r.getAttribute("data-video-type"),t="",n="",l="";r.hasAttribute("data-video-sticky")&amp;&amp;(t=r.getAttribute("data-video-sticky")),r.hasAttribute("data-autoplay")&amp;&amp;(n=r.getAttribute("data-autoplay")),r.hasAttribute("data-lightbox")&amp;&amp;(l=r.getAttribute("data-lightbox"));var s=i.querySelector(".eae-lottie-animation");if("yes"==t){let e=r.getAttribute("data-preview-sticky");if(elementorFrontend.isEditMode()&amp;&amp;"yes"==e||!elementorFrontend.isEditMode()){a(r),document.addEventListener("scroll",(()=&gt;{window.requestAnimationFrame?window.requestAnimationFrame((()=&gt;{a(r)})):a(r)}));const e=r.querySelector(".eae-video-sticky-close");null!=e&amp;&amp;e.addEventListener("click",(function(e){e.stopPropagation(),r.classList.remove("eae-sticky-apply"),r.classList.add("eae-sticky-hide")}))}}if(null!=s){let e=JSON.parse(s.getAttribute("data-lottie-settings")),t=lottie.loadAnimation({container:s,path:e.url,renderer:"svg",loop:e.loop});1==e.reverse&amp;&amp;t.setDirection(-1)}if("yes"!=l&amp;&amp;r.addEventListener("click",(function(e){elementorFrontend.isEditMode()||o(this)})),"1"!=n||elementorFrontend.isEditMode()||new Waypoint({element:r,handler:function(e){"down"==e&amp;&amp;o(r)},offset:"bottom-in-view"}),"yes"==l){let t=r.querySelector(".eae-video-wrappper").getAttribute("data-gallery-id");null!=t&amp;&amp;""!=t||(t="1");let n=[lgVideo,lgHash];"yes"==r.querySelector(".eae-video-wrappper").getAttribute("data-share")&amp;&amp;n.push(lgShare),"yes"==r.querySelector(".eae-video-wrappper").getAttribute("data-fullscreen")&amp;&amp;n.push(lgFullscreen);let i={selector:".eae-video-play",download:!1,counter:!1,galleryId:t,autoplayFirstVideo:!0,plugins:n,videojs:!0,videojsOptions:{muted:!0}};"hosted"!=e?i[`${e}PlayerParams`]=JSON.parse(r.querySelector(".eae-video-wrappper").getAttribute("data-params")):i.videojsOptions=JSON.parse(r.querySelector(".eae-video-wrappper").getAttribute("data-params")),elementorFrontend.isEditMode()||lightGallery(r,i)}}};function a(e){e.getBoundingClientRect().top;let i=window.scrollY;window.scrollY+150&gt;=n?(e.classList.remove("eae-sticky-hide"),e.classList.add("eae-sticky-apply"),null!=e.querySelector(".eae-video-display-details")&amp;&amp;(e.querySelector(".eae-video-display-details").style.display="block")):(e.classList.remove("eae-sticky-apply"),e.classList.add("eae-sticky-hide"),null!=e.querySelector(".eae-video-display-details")&amp;&amp;(e.querySelector(".eae-video-display-details").style.display="none")),t=i&lt;=0?0:i}function o(e){let t=e.getAttribute("data-video-type"),n=e.querySelector(".eae-video-play"),i="",a="";if("hosted"!=t&amp;&amp;(i=n.getAttribute("data-src")),"hosted"==t&amp;&amp;(a=e.getAttribute("data-hosted-html")),e.querySelector("iframe"),"hosted"!=t){var o=document.createElement("iframe");o.classList.add("eae-video-iframe"),o.setAttribute("src",i),o.setAttribute("frameborder","0"),o.setAttribute("allowfullscreen","1"),o.setAttribute("allow","accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture"),n.innerHTML="",e.classList.contains(".eae-sticky-apply")||null==e.querySelector(".eae-video-display-details")||(e.querySelector(".eae-video-display-details").style.display="none"),n.append(o)}else if("hosted"==t&amp;&amp;null==n.querySelector(".eae-hosted-video")){n.innerHTML="";let e=JSON.parse(a);n.innerHTML+=e;let t=n.querySelector("video");t.setAttribute("autoplay","autoplay"),n.hasAttribute("data-video-downaload")&amp;&amp;t.setAttribute("controlslist","nodownload"),n.hasAttribute("data-controls")&amp;&amp;t.setAttribute("controls",""),n.querySelector("video").style.width="100%",n.querySelector("video").style.height="100%"}}e(window).on("elementor/frontend/init",(function(){elementorFrontend.hooks.addAction("frontend/element_ready/eae-video-box.default",i)}))}(jQuery)},322:(e,t,n)=&gt;{"use strict";var i=n(305);!function(e){const t=function(e){const t=e.attr("data-id"),a=document.querySelector(".elementor-element-"+t),o=a.querySelector(".eae-vg-video-container");if(null!==o){const t=o.querySelectorAll(".eae-vg-element-wrapper");if(o.querySelectorAll(".eae-vg-element-wrapper"),elementorFrontend.isEditMode()||o.classList.contains("lightbox")||function(e){e.querySelectorAll(".eae-vg-element").forEach((function(e,t){e.addEventListener("click",(function(t){if(e.classList.remove("eae-vg-image-overlay"),e.getAttribute("data-video-url"),"hosted"!=e.getAttribute("data-video-type")){let t=e.getAttribute("data-video-url");e.innerHTML="";var n=document.createElement("iframe");n.classList.add("eae-vg-video-iframe"),n.setAttribute("src",t),n.setAttribute("frameborder","0"),n.setAttribute("allowfullscreen","1"),n.setAttribute("allow","accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture"),e.append(n)}else if(null==e.querySelector(".eae-hosted-video")){let t=e.getAttribute("data-hosted-html");e.innerHTML="";let n=JSON.parse(t);e.innerHTML+=n;let i=e.querySelector("video");i.setAttribute("autoplay","autoplay"),e.hasAttribute("data-video-downaload")&amp;&amp;i.setAttribute("controlslist","nodownload"),e.hasAttribute("data-controls")&amp;&amp;i.setAttribute("controls","")}}))}))}(o),function(e){e.forEach((function(e,t){const n=e.querySelector(".eae-vg-element");if(null!==n){let e=n.querySelector(".eae-lottie");if(null!=e){let t=JSON.parse(e.getAttribute("data-lottie-settings")),n=lottie.loadAnimation({container:e,path:t.url,renderer:"svg",loop:t.loop});1==t.reverse&amp;&amp;n.setDirection(-1)}}}))}(t),e.find(".eae-vg-wrapper").hasClass("eae-vg-filter")){const t=a.querySelector(".eae-vg-filter-button-container");if(t.querySelectorAll(".eae-vg-filter-tab").length&gt;1){const i=t.querySelectorAll(".eae-filter-button"),r=o.querySelectorAll(".eae-vg-element-wrapper"),s=t.querySelector(".eae-vg-dropdown-tab");let l=t.querySelector(".eae-vg-active-button");s.querySelectorAll(".eae-vg-filters-item").forEach((function(e){let t=e.querySelector(".eae-filter-button");l.getAttribute("data-filter")==t.getAttribute("data-filter")&amp;&amp;t.classList.add("eae-vg-active-button")})),i.forEach((function(t,a){t.classList.contains("eae-vg-active-button")&amp;&amp;r.forEach((function(e){"all"==t.getAttribute("data-filter")||e.classList.contains(t.getAttribute("data-filter"))?e.classList.add("eae-vg-active"):e.classList.add("eae-vg-filter-hidden")})),t.addEventListener("click",(function(a){r.forEach((function(e){e.classList.contains("eae-vg-filter-hidden")&amp;&amp;e.classList.remove("eae-vg-filter-hidden"),e.classList.contains("eae-vg-active")&amp;&amp;e.classList.remove("eae-vg-active")})),r.forEach((function(e){"all"==t.getAttribute("data-filter")?e.classList.contains("eae-vg-active")||(e.classList.add("transit-in"),setTimeout(n,500,e)):(e.classList.contains("eae-vg-active")&amp;&amp;e.classList.remove("eae-vg-active"),e.classList.contains(t.getAttribute("data-filter"))&amp;&amp;(e.classList.add("transit-in"),setTimeout(n,500,e)),function(e,t){t.forEach((function(t){t.classList.contains(e)||(t.classList.add("transit-out"),function(e){e.classList.add("eae-vg-filter-hidden"),e.classList.remove("transit-out"),e.classList.contains("eae-vg-active")&amp;&amp;e.classList.remove("eae-vg-active")}(t))}))}(t.getAttribute("data-filter"),r))})),i.forEach((function(e){e.classList.contains("eae-vg-active-button")&amp;&amp;e.classList.remove("eae-vg-active-button")})),t.classList.add("eae-vg-active-button"),s.querySelectorAll(".eae-vg-filters-item").forEach((function(e){let n=e.querySelector(".eae-filter-button");t.getAttribute("data-filter")==n.getAttribute("data-filter")&amp;&amp;n.classList.add("eae-vg-active-button")})),function(e){const t=e.attr("data-id"),n=document.querySelector(".elementor-element-"+t).querySelector(".eae-vg-filter-button-container").querySelector(".eae-vg-filter-tab").querySelector(".eae-vg-filter-dropdown");let i="";if(null!=n&amp;&amp;(i=n.querySelector(".eae-vg-active-button")),null==i){let e=n.getAttribute("data-button-text");n.querySelector(".eae-vg-dropdown-filter-text").textContent=e,n.classList.contains("eae-vg-active-button")&amp;&amp;n.classList.remove("eae-vg-active-button")}}(e)}))}));const c=a.querySelector(".eae-vg-wrapper"),d=c.querySelectorAll(".eae-vg-filter-tab");let u="";window.addEventListener("resize",(function(){let e=c.getAttribute("data-stacked");this.window.innerWidth&lt;=e?d.forEach((function(e){e.classList.contains("eae-vg-dropdown-tab")?(e.classList.add("enable-vg-dropdown-layout"),e.classList.remove("disable-vg-dropdown-layout")):e.classList.add("disable-vg-dropdown-layout")})):d.forEach((function(e){if(e.classList.contains("eae-vg-dropdown-tab"))e.classList.add("disable-vg-dropdown-layout"),e.classList.remove("enable-vg-dropdown-layout");else{e.classList.remove("disable-vg-dropdown-layout");let t=e.querySelector(".eae-vg-collapse");null!=t&amp;&amp;t.querySelectorAll(".eae-vg-filters-item").forEach((function(e){let n=e.querySelector(".eae-vg-active-button");if(null!=n){let e=n.textContent;t.querySelector(".eae-vg-dropdown-filter-text").textContent=e,t.classList.contains("eae-vg-active-button")||t.classList.add("eae-vg-active-button")}}))}}));const t=c.querySelector(".eae-vg-dropdown-tab");let n=t.querySelector(".eae-vg-filter-dropdown");p=t.querySelectorAll(".eae-vg-filters-item"),p.forEach((function(e){let t=e.querySelector(".eae-vg-active-button");if(null!=t){let e=t.textContent;u.querySelector(".eae-vg-dropdown-filter-text").textContent=e,n.classList.add("eae-vg-active-button")}}))})),d.forEach((function(e){e.classList.contains("eae-vg-dropdown-tab")&amp;&amp;(u=e.querySelector(".eae-vg-filter-dropdown"))})),u.classList.remove("eae-vg-visible");let p=u.querySelector(".eae-vg-collaps-item-list").querySelectorAll(".eae-vg-filters-item");const f=e=&gt;{e.stopPropagation(),e.preventDefault(),u.classList.toggle("eae-vg-visible"),p.forEach((function(e){let t="";if(t=e.querySelector(".eae-vg-active-button"),null!=t){let e=t.textContent;u.querySelector(".eae-vg-dropdown-filter-text").textContent=e,function(e,t){t.forEach((function(t){t.classList.contains("disable-vg-dropdown-layout")&amp;&amp;t.querySelectorAll(".eae-filter-button").forEach((function(t){e.getAttribute("data-filter")==t.getAttribute("data-filter")&amp;&amp;t.classList.add("eae-vg-active-button")}))}))}(t,d),u.classList.add("eae-vg-active-button")}}))};u.removeEventListener("click",f),u.addEventListener("click",f)}}if(!elementorFrontend.isEditMode()&amp;&amp;o.classList.contains("lightbox")){var r={selector:".eae-vg-element"},s=JSON.parse(o.getAttribute("data-lg-settings"));r={...r,...s};var l={plugins:[lgVideo,lgShare,lgHash,lgFullscreen,lgThumbnail]};r={...r,...l},lightGallery(o,r)}if(e.find(".eae-vg-wrapper").hasClass("eae-vg-filter")){let e="",t={};e=a.querySelector(".eae-vg-collapse"),t.dropDown=e,function(e={}){let t=e.dropDown;if(null!=t){t.classList.remove("eae-vg-visible");let e=t.querySelector(".eae-vg-collaps-item-list").querySelectorAll(".eae-vg-filters-item");const n=n=&gt;{n.stopPropagation(),n.preventDefault(),t.classList.toggle("eae-vg-visible"),e.forEach((function(e){let n="";if(n=e.querySelector(".eae-vg-active-button"),null!=n){let e=n.textContent;t.querySelector(".eae-vg-dropdown-filter-text").textContent=e,t.classList.add("eae-vg-active-button")}}))};t.removeEventListener("click",n),t.addEventListener("click",n)}}(t)}if(e.find(".eae-vg-wrapper").hasClass("eae-swiper-outer-wrapper")){const t=e.data("id"),n=e.find(".eae-swiper-outer-wrapper").data("swiper-settings");new i.Y(n,t)}}};function n(e){e.classList.add("eae-vg-active"),e.classList.remove("transit-in"),e.classList.contains("eae-vg-filter-hidden")&amp;&amp;e.classList.remove("eae-vg-filter-hidden")}e(window).on("elementor/frontend/init",(function(){elementorFrontend.hooks.addAction("frontend/element_ready/eae-video-gallery.default",t)}))}(jQuery)},82:(e,t,n)=&gt;{"use strict";var i=n(305);jQuery(window).on("elementor/frontend/init",(function(){var e,t=elementorModules.frontend.handlers.Base;e=t.extend({getDefaultSettings:function(){return{settings:this.getElementSettings()}},getDefaultElements:function(){const e=this.$element.data("id"),t=this.$element,n=document.querySelector(".elementor-element-"+e),i=n.querySelector(".eae-woo-cat-wrapper");return{eid:e,element:n,wrapper:i,scope:t}},onInit:function(){const{settings:e}=this.getDefaultSettings(),{wrapper:t,scope:n}=this.getDefaultElements();let{element:a}=this.getDefaultElements();const{eid:o}=this.getDefaultElements();let r=t.querySelectorAll(".eae-category-card");if(t.classList.contains("eae-wp-slider")){const e=n.find(".eae-swiper-outer-wrapper").data("swiper-settings");new i.Y(e,o,n)}window.addEventListener("resize",(function(){let e=t.getAttribute("data-stacked");this.window.innerWidth&lt;=e?t.classList.add("enable-stacked"):t.classList.remove("enable-stacked")})),r.forEach((e=&gt;{let t=e.querySelector(".eae-lottie");if(null!=t){let e=JSON.parse(t.getAttribute("data-lottie-settings")),n=lottie.loadAnimation({container:t,path:e.url,renderer:"svg",loop:e.loop});1==e.reverse&amp;&amp;n.setDirection(-1)}}))},onElementChange:function(e){}}),elementorFrontend.hooks.addAction("frontend/element_ready/eae-woo-category.default",(function(t){elementorFrontend.elementsHandler.addHandler(e,{$element:t})}))}))},870:(e,t,n)=&gt;{"use strict";var i,a=n(305);(i=jQuery)(window).on("elementor/frontend/init",(function(){var e,t=elementorModules.frontend.handlers.Base;e=t.extend({getDefaultSettings:function(){return{settings:this.getElementSettings()}},getDefaultElements:function(){const e=this.$element.data("id"),t=this.$element,n=document.querySelector(".elementor-element-"+e),i=n.querySelector(".eae-woo-products");return{eid:e,element:n,wrapper:i,scope:t}},onInit:function(){const{settings:e}=this.getDefaultSettings(),{wrapper:t,scope:n}=this.getDefaultElements();let{element:o}=this.getDefaultElements();const{eid:r}=this.getDefaultElements();if(t.querySelectorAll(".open-popup-link").forEach((e=&gt;i(e).eaePopup({type:"inline",midClick:!0,mainClass:"eae-wp-modal-box eae-wp-"+r,callbacks:{open:function(){jQuery(window).trigger("resize")}}}))),t.classList.contains("eae-wp-slider")){const e=n.find(".eae-swiper-outer-wrapper").data("swiper-settings");new a.Y(e,r,n)}t.querySelectorAll(".eae-wp-buy-now").forEach((function(e){e.addEventListener("click",(function(t){t.preventDefault();var n=e.getAttribute("data-product-id"),i=e.getAttribute("data-quantity");const a=eae.checkout_url,o=new URLSearchParams;o.append("action","eae_add_to_cart"),o.append("product_id",n),o.append("quantity",i),o.append("eae_nonce",eae.nonce),fetch(eae.ajaxurl,{method:"post",credentials:"same-origin",body:o}).then((e=&gt;{e.json()})).then((e=&gt;{window.location.href=a})).catch((e=&gt;{console.error("Error:",e)}))}))}))},onElementChange:function(e){}}),elementorFrontend.hooks.addAction("frontend/element_ready/eae-woo-products.default",(function(t){elementorFrontend.elementsHandler.addHandler(e,{$element:t})}))}))}},t={};function n(i){var a=t[i];if(void 0!==a)return a.exports;var o=t[i]={exports:{}};return e[i](o,o.exports,n),o.exports}n.d=(e,t)=&gt;{for(var i in t)n.o(t,i)&amp;&amp;!n.o(e,i)&amp;&amp;Object.defineProperty(e,i,{enumerable:!0,get:t[i]})},n.o=(e,t)=&gt;Object.prototype.hasOwnProperty.call(e,t),n(305),n(734),n(211),n(327),n(259),n(340),n(107),n(45),n(234),n(289),n(482),n(867),n(839),n(404),n(361),n(537),n(210),n(898),n(862),n(994),n(784),n(793),n(393),n(322),n(82),n(870)})();(()=&gt;{"use strict";class elementorHelloThemeHandler{constructor(){this.initSettings(),this.initElements(),this.bindEvents()}initSettings(){this.settings={selectors:{menuToggle:".site-header .site-navigation-toggle",menuToggleHolder:".site-header .site-navigation-toggle-holder",dropdownMenu:".site-header .site-navigation-dropdown"}}}initElements(){this.elements={window,menuToggle:document.querySelector(this.settings.selectors.menuToggle),menuToggleHolder:document.querySelector(this.settings.selectors.menuToggleHolder),dropdownMenu:document.querySelector(this.settings.selectors.dropdownMenu)}}bindEvents(){var e;!this.elements.menuToggleHolder||null!==(e=this.elements.menuToggleHolder)&amp;&amp;void 0!==e&amp;&amp;e.classList.contains("hide")||(this.elements.menuToggle.addEventListener("click",(()=&gt;this.handleMenuToggle())),this.elements.dropdownMenu.querySelectorAll(".menu-item-has-children &gt; a").forEach((e=&gt;e.addEventListener("click",(e=&gt;this.handleMenuChildren(e))))))}closeMenuItems(){this.elements.menuToggleHolder.classList.remove("elementor-active"),this.elements.window.removeEventListener("resize",(()=&gt;this.closeMenuItems()))}handleMenuToggle(){const e=!this.elements.menuToggleHolder.classList.contains("elementor-active");this.elements.menuToggle.setAttribute("aria-expanded",e),this.elements.dropdownMenu.setAttribute("aria-hidden",!e),this.elements.dropdownMenu.inert=!e,this.elements.menuToggleHolder.classList.toggle("elementor-active",e),this.elements.dropdownMenu.querySelectorAll(".elementor-active").forEach((e=&gt;e.classList.remove("elementor-active"))),e?this.elements.window.addEventListener("resize",(()=&gt;this.closeMenuItems())):this.elements.window.removeEventListener("resize",(()=&gt;this.closeMenuItems()))}handleMenuChildren(e){const t=e.currentTarget.parentElement;null!=t&amp;&amp;t.classList&amp;&amp;t.classList.toggle("elementor-active")}}document.addEventListener("DOMContentLoaded",(()=&gt;{new elementorHelloThemeHandler}))})();/*! SmartMenus jQuery Plugin - v1.2.1 - November 3, 2022
 * http://www.smartmenus.org/
 * Copyright Vasil Dinkov, Vadikom Web Ltd. http://vadikom.com; Licensed MIT */!function(a){"function"==typeof define&amp;&amp;define.amd?define(["jquery"],a):"object"==typeof module&amp;&amp;"object"==typeof module.exports?module.exports=a(require("jquery")):a(jQuery)}(function(a){function b(b){var i=".smartmenus_mouse";if(h||b)h&amp;&amp;b&amp;&amp;(a(document).off(i),h=!1);else{var j=!0,k=null,l={mousemove:function(b){var c={x:b.pageX,y:b.pageY,timeStamp:(new Date).getTime()};if(k){var d=Math.abs(k.x-c.x),g=Math.abs(k.y-c.y);if((d&gt;0||g&gt;0)&amp;&amp;d&lt;=4&amp;&amp;g&lt;=4&amp;&amp;c.timeStamp-k.timeStamp&lt;=300&amp;&amp;(f=!0,j)){var h=a(b.target).closest("a");h.is("a")&amp;&amp;a.each(e,function(){if(a.contains(this.$root[0],h[0]))return this.itemEnter({currentTarget:h[0]}),!1}),j=!1}}k=c}};l[g?"touchstart":"pointerover pointermove pointerout MSPointerOver MSPointerMove MSPointerOut"]=function(a){c(a.originalEvent)&amp;&amp;(f=!1)},a(document).on(d(l,i)),h=!0}}function c(a){return!/^(4|mouse)$/.test(a.pointerType)}function d(a,b){b||(b="");var c={};for(var d in a)c[d.split(" ").join(b+" ")+b]=a[d];return c}var e=[],f=!1,g="ontouchstart"in window,h=!1,i=window.requestAnimationFrame||function(a){return setTimeout(a,1e3/60)},j=window.cancelAnimationFrame||function(a){clearTimeout(a)},k=!!a.fn.animate;return a.SmartMenus=function(b,c){this.$root=a(b),this.opts=c,this.rootId="",this.accessIdPrefix="",this.$subArrow=null,this.activatedItems=[],this.visibleSubMenus=[],this.showTimeout=0,this.hideTimeout=0,this.scrollTimeout=0,this.clickActivated=!1,this.focusActivated=!1,this.zIndexInc=0,this.idInc=0,this.$firstLink=null,this.$firstSub=null,this.disabled=!1,this.$disableOverlay=null,this.$touchScrollingSub=null,this.cssTransforms3d="perspective"in b.style||"webkitPerspective"in b.style,this.wasCollapsible=!1,this.init()},a.extend(a.SmartMenus,{hideAll:function(){a.each(e,function(){this.menuHideAll()})},destroy:function(){for(;e.length;)e[0].destroy();b(!0)},prototype:{init:function(c){var f=this;if(!c){e.push(this),this.rootId=((new Date).getTime()+Math.random()+"").replace(/\D/g,""),this.accessIdPrefix="sm-"+this.rootId+"-",this.$root.hasClass("sm-rtl")&amp;&amp;(this.opts.rightToLeftSubMenus=!0);var g=".smartmenus";this.$root.data("smartmenus",this).attr("data-smartmenus-id",this.rootId).dataSM("level",1).on(d({"mouseover focusin":a.proxy(this.rootOver,this),"mouseout focusout":a.proxy(this.rootOut,this),keydown:a.proxy(this.rootKeyDown,this)},g)).on(d({mouseenter:a.proxy(this.itemEnter,this),mouseleave:a.proxy(this.itemLeave,this),mousedown:a.proxy(this.itemDown,this),focus:a.proxy(this.itemFocus,this),blur:a.proxy(this.itemBlur,this),click:a.proxy(this.itemClick,this)},g),"a"),g+=this.rootId,this.opts.hideOnClick&amp;&amp;a(document).on(d({touchstart:a.proxy(this.docTouchStart,this),touchmove:a.proxy(this.docTouchMove,this),touchend:a.proxy(this.docTouchEnd,this),click:a.proxy(this.docClick,this)},g)),a(window).on(d({"resize orientationchange":a.proxy(this.winResize,this)},g)),this.opts.subIndicators&amp;&amp;(this.$subArrow=a("&lt;span/&gt;").addClass("sub-arrow"),this.opts.subIndicatorsText&amp;&amp;this.$subArrow.html(this.opts.subIndicatorsText)),b()}if(this.$firstSub=this.$root.find("ul").each(function(){f.menuInit(a(this))}).eq(0),this.$firstLink=this.$root.find("a").eq(0),this.opts.markCurrentItem){var h=/(index|default)\.[^#\?\/]*/i,i=/#.*/,j=window.location.href.replace(h,""),k=j.replace(i,"");this.$root.find("a:not(.mega-menu a)").each(function(){var b=this.href.replace(h,""),c=a(this);b!=j&amp;&amp;b!=k||(c.addClass("current"),f.opts.markCurrentTree&amp;&amp;c.parentsUntil("[data-smartmenus-id]","ul").each(function(){a(this).dataSM("parent-a").addClass("current")}))})}this.wasCollapsible=this.isCollapsible()},destroy:function(b){if(!b){var c=".smartmenus";this.$root.removeData("smartmenus").removeAttr("data-smartmenus-id").removeDataSM("level").off(c),c+=this.rootId,a(document).off(c),a(window).off(c),this.opts.subIndicators&amp;&amp;(this.$subArrow=null)}this.menuHideAll();var d=this;this.$root.find("ul").each(function(){var b=a(this);b.dataSM("scroll-arrows")&amp;&amp;b.dataSM("scroll-arrows").remove(),b.dataSM("shown-before")&amp;&amp;((d.opts.subMenusMinWidth||d.opts.subMenusMaxWidth)&amp;&amp;b.css({width:"",minWidth:"",maxWidth:""}).removeClass("sm-nowrap"),b.dataSM("scroll-arrows")&amp;&amp;b.dataSM("scroll-arrows").remove(),b.css({zIndex:"",top:"",left:"",marginLeft:"",marginTop:"",display:""})),0==(b.attr("id")||"").indexOf(d.accessIdPrefix)&amp;&amp;b.removeAttr("id")}).removeDataSM("in-mega").removeDataSM("shown-before").removeDataSM("scroll-arrows").removeDataSM("parent-a").removeDataSM("level").removeDataSM("beforefirstshowfired").removeAttr("role").removeAttr("aria-hidden").removeAttr("aria-labelledby").removeAttr("aria-expanded"),this.$root.find("a.has-submenu").each(function(){var b=a(this);0==b.attr("id").indexOf(d.accessIdPrefix)&amp;&amp;b.removeAttr("id")}).removeClass("has-submenu").removeDataSM("sub").removeAttr("aria-haspopup").removeAttr("aria-controls").removeAttr("aria-expanded").closest("li").removeDataSM("sub"),this.opts.subIndicators&amp;&amp;this.$root.find("span.sub-arrow").remove(),this.opts.markCurrentItem&amp;&amp;this.$root.find("a.current").removeClass("current"),b||(this.$root=null,this.$firstLink=null,this.$firstSub=null,this.$disableOverlay&amp;&amp;(this.$disableOverlay.remove(),this.$disableOverlay=null),e.splice(a.inArray(this,e),1))},disable:function(b){if(!this.disabled){if(this.menuHideAll(),!b&amp;&amp;!this.opts.isPopup&amp;&amp;this.$root.is(":visible")){var c=this.$root.offset();this.$disableOverlay=a('&lt;div class="sm-jquery-disable-overlay"/&gt;').css({position:"absolute",top:c.top,left:c.left,width:this.$root.outerWidth(),height:this.$root.outerHeight(),zIndex:this.getStartZIndex(!0),opacity:0}).appendTo(document.body)}this.disabled=!0}},docClick:function(b){return this.$touchScrollingSub?void(this.$touchScrollingSub=null):void((this.visibleSubMenus.length&amp;&amp;!a.contains(this.$root[0],b.target)||a(b.target).closest("a").length)&amp;&amp;this.menuHideAll())},docTouchEnd:function(b){if(this.lastTouch){if(this.visibleSubMenus.length&amp;&amp;(void 0===this.lastTouch.x2||this.lastTouch.x1==this.lastTouch.x2)&amp;&amp;(void 0===this.lastTouch.y2||this.lastTouch.y1==this.lastTouch.y2)&amp;&amp;(!this.lastTouch.target||!a.contains(this.$root[0],this.lastTouch.target))){this.hideTimeout&amp;&amp;(clearTimeout(this.hideTimeout),this.hideTimeout=0);var c=this;this.hideTimeout=setTimeout(function(){c.menuHideAll()},350)}this.lastTouch=null}},docTouchMove:function(a){if(this.lastTouch){var b=a.originalEvent.touches[0];this.lastTouch.x2=b.pageX,this.lastTouch.y2=b.pageY}},docTouchStart:function(a){var b=a.originalEvent.touches[0];this.lastTouch={x1:b.pageX,y1:b.pageY,target:b.target}},enable:function(){this.disabled&amp;&amp;(this.$disableOverlay&amp;&amp;(this.$disableOverlay.remove(),this.$disableOverlay=null),this.disabled=!1)},getClosestMenu:function(b){for(var c=a(b).closest("ul");c.dataSM("in-mega");)c=c.parent().closest("ul");return c[0]||null},getHeight:function(a){return this.getOffset(a,!0)},getOffset:function(a,b){var c;"none"==a.css("display")&amp;&amp;(c={position:a[0].style.position,visibility:a[0].style.visibility},a.css({position:"absolute",visibility:"hidden"}).show());var d=a[0].getBoundingClientRect&amp;&amp;a[0].getBoundingClientRect(),e=d&amp;&amp;(b?d.height||d.bottom-d.top:d.width||d.right-d.left);return e||0===e||(e=b?a[0].offsetHeight:a[0].offsetWidth),c&amp;&amp;a.hide().css(c),e},getStartZIndex:function(a){var b=parseInt(this[a?"$root":"$firstSub"].css("z-index"));return!a&amp;&amp;isNaN(b)&amp;&amp;(b=parseInt(this.$root.css("z-index"))),isNaN(b)?1:b},getTouchPoint:function(a){return a.touches&amp;&amp;a.touches[0]||a.changedTouches&amp;&amp;a.changedTouches[0]||a},getViewport:function(a){var b=a?"Height":"Width",c=document.documentElement["client"+b],d=window["inner"+b];return d&amp;&amp;(c=Math.min(c,d)),c},getViewportHeight:function(){return this.getViewport(!0)},getViewportWidth:function(){return this.getViewport()},getWidth:function(a){return this.getOffset(a)},handleEvents:function(){return!this.disabled&amp;&amp;this.isCSSOn()},handleItemEvents:function(a){return this.handleEvents()&amp;&amp;!this.isLinkInMegaMenu(a)},isCollapsible:function(){return"static"==this.$firstSub.css("position")},isCSSOn:function(){return"inline"!=this.$firstLink.css("display")},isFixed:function(){var b="fixed"==this.$root.css("position");return b||this.$root.parentsUntil("body").each(function(){if("fixed"==a(this).css("position"))return b=!0,!1}),b},isLinkInMegaMenu:function(b){return a(this.getClosestMenu(b[0])).hasClass("mega-menu")},isTouchMode:function(){return!f||this.opts.noMouseOver||this.isCollapsible()},itemActivate:function(b,c){var d=b.closest("ul"),e=d.dataSM("level");if(e&gt;1&amp;&amp;(!this.activatedItems[e-2]||this.activatedItems[e-2][0]!=d.dataSM("parent-a")[0])){var f=this;a(d.parentsUntil("[data-smartmenus-id]","ul").get().reverse()).add(d).each(function(){f.itemActivate(a(this).dataSM("parent-a"))})}if(this.isCollapsible()&amp;&amp;!c||this.menuHideSubMenus(this.activatedItems[e-1]&amp;&amp;this.activatedItems[e-1][0]==b[0]?e:e-1),this.activatedItems[e-1]=b,this.$root.triggerHandler("activate.smapi",b[0])!==!1){var g=b.dataSM("sub");g&amp;&amp;(this.isTouchMode()||!this.opts.showOnClick||this.clickActivated)&amp;&amp;this.menuShow(g)}},itemBlur:function(b){var c=a(b.currentTarget);this.handleItemEvents(c)&amp;&amp;this.$root.triggerHandler("blur.smapi",c[0])},itemClick:function(b){var c=a(b.currentTarget);if(this.handleItemEvents(c)){if(this.$touchScrollingSub&amp;&amp;this.$touchScrollingSub[0]==c.closest("ul")[0])return this.$touchScrollingSub=null,b.stopPropagation(),!1;if(this.$root.triggerHandler("click.smapi",c[0])===!1)return!1;var d=c.dataSM("sub"),e=!!d&amp;&amp;2==d.dataSM("level");if(d){var f=a(b.target).is(".sub-arrow"),g=this.isCollapsible(),h=/toggle$/.test(this.opts.collapsibleBehavior),i=/link$/.test(this.opts.collapsibleBehavior),j=/^accordion/.test(this.opts.collapsibleBehavior);if(d.is(":visible")){if(!g&amp;&amp;this.opts.showOnClick&amp;&amp;e)return this.menuHide(d),this.clickActivated=!1,this.focusActivated=!1,!1;if(g&amp;&amp;(h||f))return this.itemActivate(c,j),this.menuHide(d),!1}else if((!i||!g||f)&amp;&amp;(!g&amp;&amp;this.opts.showOnClick&amp;&amp;e&amp;&amp;(this.clickActivated=!0),this.itemActivate(c,j),d.is(":visible")))return this.focusActivated=!0,!1}return!(!g&amp;&amp;this.opts.showOnClick&amp;&amp;e||c.hasClass("disabled")||this.$root.triggerHandler("select.smapi",c[0])===!1)&amp;&amp;void 0}},itemDown:function(b){var c=a(b.currentTarget);this.handleItemEvents(c)&amp;&amp;c.dataSM("mousedown",!0)},itemEnter:function(b){var c=a(b.currentTarget);if(this.handleItemEvents(c)){if(!this.isTouchMode()){this.showTimeout&amp;&amp;(clearTimeout(this.showTimeout),this.showTimeout=0);var d=this;this.showTimeout=setTimeout(function(){d.itemActivate(c)},this.opts.showOnClick&amp;&amp;1==c.closest("ul").dataSM("level")?1:this.opts.showTimeout)}this.$root.triggerHandler("mouseenter.smapi",c[0])}},itemFocus:function(b){var c=a(b.currentTarget);this.handleItemEvents(c)&amp;&amp;(!this.focusActivated||this.isTouchMode()&amp;&amp;c.dataSM("mousedown")||this.activatedItems.length&amp;&amp;this.activatedItems[this.activatedItems.length-1][0]==c[0]||this.itemActivate(c,!0),this.$root.triggerHandler("focus.smapi",c[0]))},itemLeave:function(b){var c=a(b.currentTarget);this.handleItemEvents(c)&amp;&amp;(this.isTouchMode()||(c[0].blur(),this.showTimeout&amp;&amp;(clearTimeout(this.showTimeout),this.showTimeout=0)),c.removeDataSM("mousedown"),this.$root.triggerHandler("mouseleave.smapi",c[0]))},menuHide:function(b){if(this.$root.triggerHandler("beforehide.smapi",b[0])!==!1&amp;&amp;(k&amp;&amp;b.stop(!0,!0),"none"!=b.css("display"))){var c=function(){b.css("z-index","")};this.isCollapsible()?k&amp;&amp;this.opts.collapsibleHideFunction?this.opts.collapsibleHideFunction.call(this,b,c):b.hide(this.opts.collapsibleHideDuration,c):k&amp;&amp;this.opts.hideFunction?this.opts.hideFunction.call(this,b,c):b.hide(this.opts.hideDuration,c),b.dataSM("scroll")&amp;&amp;(this.menuScrollStop(b),b.css({"touch-action":"","-ms-touch-action":"","-webkit-transform":"",transform:""}).off(".smartmenus_scroll").removeDataSM("scroll").dataSM("scroll-arrows").hide()),b.dataSM("parent-a").removeClass("highlighted").attr("aria-expanded","false"),b.attr({"aria-expanded":"false","aria-hidden":"true"});var d=b.dataSM("level");this.activatedItems.splice(d-1,1),this.visibleSubMenus.splice(a.inArray(b,this.visibleSubMenus),1),this.$root.triggerHandler("hide.smapi",b[0])}},menuHideAll:function(){this.showTimeout&amp;&amp;(clearTimeout(this.showTimeout),this.showTimeout=0);for(var a=this.opts.isPopup?1:0,b=this.visibleSubMenus.length-1;b&gt;=a;b--)this.menuHide(this.visibleSubMenus[b]);this.opts.isPopup&amp;&amp;(k&amp;&amp;this.$root.stop(!0,!0),this.$root.is(":visible")&amp;&amp;(k&amp;&amp;this.opts.hideFunction?this.opts.hideFunction.call(this,this.$root):this.$root.hide(this.opts.hideDuration))),this.activatedItems=[],this.visibleSubMenus=[],this.clickActivated=!1,this.focusActivated=!1,this.zIndexInc=0,this.$root.triggerHandler("hideAll.smapi")},menuHideSubMenus:function(a){for(var b=this.activatedItems.length-1;b&gt;=a;b--){var c=this.activatedItems[b].dataSM("sub");c&amp;&amp;this.menuHide(c)}},menuInit:function(a){if(!a.dataSM("in-mega")){a.hasClass("mega-menu")&amp;&amp;a.find("ul").dataSM("in-mega",!0);for(var b=2,c=a[0];(c=c.parentNode.parentNode)!=this.$root[0];)b++;var d=a.prevAll("a").eq(-1);d.length||(d=a.prevAll().find("a").eq(-1)),d.addClass("has-submenu").dataSM("sub",a),a.dataSM("parent-a",d).dataSM("level",b).parent().dataSM("sub",a);var e=d.attr("id")||this.accessIdPrefix+ ++this.idInc,f=a.attr("id")||this.accessIdPrefix+ ++this.idInc;d.attr({id:e,"aria-haspopup":"true","aria-controls":f,"aria-expanded":"false"}),a.attr({id:f,role:"group","aria-hidden":"true","aria-labelledby":e,"aria-expanded":"false"}),this.opts.subIndicators&amp;&amp;d[this.opts.subIndicatorsPos](this.$subArrow.clone())}},menuPosition:function(b){var c,e,f=b.dataSM("parent-a"),h=f.closest("li"),i=h.parent(),j=b.dataSM("level"),k=this.getWidth(b),l=this.getHeight(b),m=f.offset(),n=m.left,o=m.top,p=this.getWidth(f),q=this.getHeight(f),r=a(window),s=r.scrollLeft(),t=r.scrollTop(),u=this.getViewportWidth(),v=this.getViewportHeight(),w=i.parent().is("[data-sm-horizontal-sub]")||2==j&amp;&amp;!i.hasClass("sm-vertical"),x=this.opts.rightToLeftSubMenus&amp;&amp;!h.is("[data-sm-reverse]")||!this.opts.rightToLeftSubMenus&amp;&amp;h.is("[data-sm-reverse]"),y=2==j?this.opts.mainMenuSubOffsetX:this.opts.subMenusSubOffsetX,z=2==j?this.opts.mainMenuSubOffsetY:this.opts.subMenusSubOffsetY;if(w?(c=x?p-k-y:y,e=this.opts.bottomToTopSubMenus?-l-z:q+z):(c=x?y-k:p-y,e=this.opts.bottomToTopSubMenus?q-z-l:z),this.opts.keepInViewport){var A=n+c,B=o+e;if(x&amp;&amp;A&lt;s?c=w?s-A+c:p-y:!x&amp;&amp;A+k&gt;s+u&amp;&amp;(c=w?s+u-k-A+c:y-k),w||(l&lt;v&amp;&amp;B+l&gt;t+v?e+=t+v-l-B:(l&gt;=v||B&lt;t)&amp;&amp;(e+=t-B)),w&amp;&amp;(B+l&gt;t+v+.49||B&lt;t)||!w&amp;&amp;l&gt;v+.49){var C=this;b.dataSM("scroll-arrows")||b.dataSM("scroll-arrows",a([a('&lt;span class="scroll-up"&gt;&lt;span class="scroll-up-arrow"&gt;&lt;/span&gt;&lt;/span&gt;')[0],a('&lt;span class="scroll-down"&gt;&lt;span class="scroll-down-arrow"&gt;&lt;/span&gt;&lt;/span&gt;')[0]]).on({mouseenter:function(){b.dataSM("scroll").up=a(this).hasClass("scroll-up"),C.menuScroll(b)},mouseleave:function(a){C.menuScrollStop(b),C.menuScrollOut(b,a)},"mousewheel DOMMouseScroll":function(a){a.preventDefault()}}).insertAfter(b));var D=".smartmenus_scroll";if(b.dataSM("scroll",{y:this.cssTransforms3d?0:e-q,step:1,itemH:q,subH:l,arrowDownH:this.getHeight(b.dataSM("scroll-arrows").eq(1))}).on(d({mouseover:function(a){C.menuScrollOver(b,a)},mouseout:function(a){C.menuScrollOut(b,a)},"mousewheel DOMMouseScroll":function(a){C.menuScrollMousewheel(b,a)}},D)).dataSM("scroll-arrows").css({top:"auto",left:"0",marginLeft:c+(parseInt(b.css("border-left-width"))||0),width:k-(parseInt(b.css("border-left-width"))||0)-(parseInt(b.css("border-right-width"))||0),zIndex:b.css("z-index")}).eq(w&amp;&amp;this.opts.bottomToTopSubMenus?0:1).show(),this.isFixed()){var E={};E[g?"touchstart touchmove touchend":"pointerdown pointermove pointerup MSPointerDown MSPointerMove MSPointerUp"]=function(a){C.menuScrollTouch(b,a)},b.css({"touch-action":"none","-ms-touch-action":"none"}).on(d(E,D))}}}b.css({top:"auto",left:"0",marginLeft:c,marginTop:e-q})},menuScroll:function(a,b,c){var d,e=a.dataSM("scroll"),g=a.dataSM("scroll-arrows"),h=e.up?e.upEnd:e.downEnd;if(!b&amp;&amp;e.momentum){if(e.momentum*=.92,d=e.momentum,d&lt;.5)return void this.menuScrollStop(a)}else d=c||(b||!this.opts.scrollAccelerate?this.opts.scrollStep:Math.floor(e.step));var j=a.dataSM("level");if(this.activatedItems[j-1]&amp;&amp;this.activatedItems[j-1].dataSM("sub")&amp;&amp;this.activatedItems[j-1].dataSM("sub").is(":visible")&amp;&amp;this.menuHideSubMenus(j-1),e.y=e.up&amp;&amp;h&lt;=e.y||!e.up&amp;&amp;h&gt;=e.y?e.y:Math.abs(h-e.y)&gt;d?e.y+(e.up?d:-d):h,a.css(this.cssTransforms3d?{"-webkit-transform":"translate3d(0, "+e.y+"px, 0)",transform:"translate3d(0, "+e.y+"px, 0)"}:{marginTop:e.y}),f&amp;&amp;(e.up&amp;&amp;e.y&gt;e.downEnd||!e.up&amp;&amp;e.y&lt;e.upEnd)&amp;&amp;g.eq(e.up?1:0).show(),e.y==h)f&amp;&amp;g.eq(e.up?0:1).hide(),this.menuScrollStop(a);else if(!b){this.opts.scrollAccelerate&amp;&amp;e.step&lt;this.opts.scrollStep&amp;&amp;(e.step+=.2);var k=this;this.scrollTimeout=i(function(){k.menuScroll(a)})}},menuScrollMousewheel:function(a,b){if(this.getClosestMenu(b.target)==a[0]){b=b.originalEvent;var c=(b.wheelDelta||-b.detail)&gt;0;a.dataSM("scroll-arrows").eq(c?0:1).is(":visible")&amp;&amp;(a.dataSM("scroll").up=c,this.menuScroll(a,!0))}b.preventDefault()},menuScrollOut:function(b,c){f&amp;&amp;(/^scroll-(up|down)/.test((c.relatedTarget||"").className)||(b[0]==c.relatedTarget||a.contains(b[0],c.relatedTarget))&amp;&amp;this.getClosestMenu(c.relatedTarget)==b[0]||b.dataSM("scroll-arrows").css("visibility","hidden"))},menuScrollOver:function(b,c){if(f&amp;&amp;!/^scroll-(up|down)/.test(c.target.className)&amp;&amp;this.getClosestMenu(c.target)==b[0]){this.menuScrollRefreshData(b);var d=b.dataSM("scroll"),e=a(window).scrollTop()-b.dataSM("parent-a").offset().top-d.itemH;b.dataSM("scroll-arrows").eq(0).css("margin-top",e).end().eq(1).css("margin-top",e+this.getViewportHeight()-d.arrowDownH).end().css("visibility","visible")}},menuScrollRefreshData:function(b){var c=b.dataSM("scroll"),d=a(window).scrollTop()-b.dataSM("parent-a").offset().top-c.itemH;this.cssTransforms3d&amp;&amp;(d=-(parseFloat(b.css("margin-top"))-d)),a.extend(c,{upEnd:d,downEnd:d+this.getViewportHeight()-c.subH})},menuScrollStop:function(a){if(this.scrollTimeout)return j(this.scrollTimeout),this.scrollTimeout=0,a.dataSM("scroll").step=1,!0},menuScrollTouch:function(b,d){if(d=d.originalEvent,c(d)){var e=this.getTouchPoint(d);if(this.getClosestMenu(e.target)==b[0]){var f=b.dataSM("scroll");if(/(start|down)$/i.test(d.type))this.menuScrollStop(b)?(d.preventDefault(),this.$touchScrollingSub=b):this.$touchScrollingSub=null,this.menuScrollRefreshData(b),a.extend(f,{touchStartY:e.pageY,touchStartTime:d.timeStamp});else if(/move$/i.test(d.type)){var g=void 0!==f.touchY?f.touchY:f.touchStartY;if(void 0!==g&amp;&amp;g!=e.pageY){this.$touchScrollingSub=b;var h=g&lt;e.pageY;void 0!==f.up&amp;&amp;f.up!=h&amp;&amp;a.extend(f,{touchStartY:e.pageY,touchStartTime:d.timeStamp}),a.extend(f,{up:h,touchY:e.pageY}),this.menuScroll(b,!0,Math.abs(e.pageY-g))}d.preventDefault()}else void 0!==f.touchY&amp;&amp;((f.momentum=15*Math.pow(Math.abs(e.pageY-f.touchStartY)/(d.timeStamp-f.touchStartTime),2))&amp;&amp;(this.menuScrollStop(b),this.menuScroll(b),d.preventDefault()),delete f.touchY)}}},menuShow:function(a){if((a.dataSM("beforefirstshowfired")||(a.dataSM("beforefirstshowfired",!0),this.$root.triggerHandler("beforefirstshow.smapi",a[0])!==!1))&amp;&amp;this.$root.triggerHandler("beforeshow.smapi",a[0])!==!1&amp;&amp;(a.dataSM("shown-before",!0),k&amp;&amp;a.stop(!0,!0),!a.is(":visible"))){var b=a.dataSM("parent-a"),c=this.isCollapsible();if((this.opts.keepHighlighted||c)&amp;&amp;b.addClass("highlighted"),c)a.removeClass("sm-nowrap").css({zIndex:"",width:"auto",minWidth:"",maxWidth:"",top:"",left:"",marginLeft:"",marginTop:""});else{if(a.css("z-index",this.zIndexInc=(this.zIndexInc||this.getStartZIndex())+1),(this.opts.subMenusMinWidth||this.opts.subMenusMaxWidth)&amp;&amp;(a.css({width:"auto",minWidth:"",maxWidth:""}).addClass("sm-nowrap"),this.opts.subMenusMinWidth&amp;&amp;a.css("min-width",this.opts.subMenusMinWidth),this.opts.subMenusMaxWidth)){var d=this.getWidth(a);a.css("max-width",this.opts.subMenusMaxWidth),d&gt;this.getWidth(a)&amp;&amp;a.removeClass("sm-nowrap").css("width",this.opts.subMenusMaxWidth)}this.menuPosition(a)}var e=function(){a.css("overflow","")};c?k&amp;&amp;this.opts.collapsibleShowFunction?this.opts.collapsibleShowFunction.call(this,a,e):a.show(this.opts.collapsibleShowDuration,e):k&amp;&amp;this.opts.showFunction?this.opts.showFunction.call(this,a,e):a.show(this.opts.showDuration,e),b.attr("aria-expanded","true"),a.attr({"aria-expanded":"true","aria-hidden":"false"}),this.visibleSubMenus.push(a),this.$root.triggerHandler("show.smapi",a[0])}},popupHide:function(a){this.hideTimeout&amp;&amp;(clearTimeout(this.hideTimeout),this.hideTimeout=0);var b=this;this.hideTimeout=setTimeout(function(){b.menuHideAll()},a?1:this.opts.hideTimeout)},popupShow:function(a,b){if(!this.opts.isPopup)return void alert('SmartMenus jQuery Error:\n\nIf you want to show this menu via the "popupShow" method, set the isPopup:true option.');if(this.hideTimeout&amp;&amp;(clearTimeout(this.hideTimeout),this.hideTimeout=0),this.$root.dataSM("shown-before",!0),k&amp;&amp;this.$root.stop(!0,!0),!this.$root.is(":visible")){this.$root.css({left:a,top:b});var c=this,d=function(){c.$root.css("overflow","")};k&amp;&amp;this.opts.showFunction?this.opts.showFunction.call(this,this.$root,d):this.$root.show(this.opts.showDuration,d),this.visibleSubMenus[0]=this.$root}},refresh:function(){this.destroy(!0),this.init(!0)},rootKeyDown:function(b){if(this.handleEvents())switch(b.keyCode){case 27:var c=this.activatedItems[0];if(c){this.menuHideAll(),c[0].focus();var d=c.dataSM("sub");d&amp;&amp;this.menuHide(d)}break;case 32:var e=a(b.target);if(e.is("a")&amp;&amp;this.handleItemEvents(e)){var d=e.dataSM("sub");d&amp;&amp;!d.is(":visible")&amp;&amp;(this.itemClick({currentTarget:b.target}),b.preventDefault())}}},rootOut:function(a){if(this.handleEvents()&amp;&amp;!this.isTouchMode()&amp;&amp;a.target!=this.$root[0]&amp;&amp;(this.hideTimeout&amp;&amp;(clearTimeout(this.hideTimeout),this.hideTimeout=0),!this.opts.showOnClick||!this.opts.hideOnClick)){var b=this;this.hideTimeout=setTimeout(function(){b.menuHideAll()},this.opts.hideTimeout)}},rootOver:function(a){this.handleEvents()&amp;&amp;!this.isTouchMode()&amp;&amp;a.target!=this.$root[0]&amp;&amp;this.hideTimeout&amp;&amp;(clearTimeout(this.hideTimeout),this.hideTimeout=0)},winResize:function(a){if(this.handleEvents()){if(!("onorientationchange"in window)||"orientationchange"==a.type){var b=this.isCollapsible();this.wasCollapsible&amp;&amp;b||(this.activatedItems.length&amp;&amp;this.activatedItems[this.activatedItems.length-1][0].blur(),this.menuHideAll()),this.wasCollapsible=b}}else if(this.$disableOverlay){var c=this.$root.offset();this.$disableOverlay.css({top:c.top,left:c.left,width:this.$root.outerWidth(),height:this.$root.outerHeight()})}}}}),a.fn.dataSM=function(a,b){return b?this.data(a+"_smartmenus",b):this.data(a+"_smartmenus")},a.fn.removeDataSM=function(a){return this.removeData(a+"_smartmenus")},a.fn.smartmenus=function(b){if("string"==typeof b){var c=arguments,d=b;return Array.prototype.shift.call(c),this.each(function(){var b=a(this).data("smartmenus");b&amp;&amp;b[d]&amp;&amp;b[d].apply(b,c)})}return this.each(function(){var c=a(this).data("sm-options")||null;c&amp;&amp;"object"!=typeof c&amp;&amp;(c=null,alert('ERROR\n\nSmartMenus jQuery init:\nThe value of the "data-sm-options" attribute must be valid JSON.')),c&amp;&amp;a.each(["showFunction","hideFunction","collapsibleShowFunction","collapsibleHideFunction"],function(){this in c&amp;&amp;delete c[this]}),new a.SmartMenus(this,a.extend({},a.fn.smartmenus.defaults,b,c))})},a.fn.smartmenus.defaults={isPopup:!1,mainMenuSubOffsetX:0,mainMenuSubOffsetY:0,subMenusSubOffsetX:0,subMenusSubOffsetY:0,subMenusMinWidth:"10em",subMenusMaxWidth:"20em",subIndicators:!0,subIndicatorsPos:"append",subIndicatorsText:"",scrollStep:30,scrollAccelerate:!0,showTimeout:250,hideTimeout:500,showDuration:0,showFunction:null,hideDuration:0,hideFunction:function(a,b){a.fadeOut(200,b)},collapsibleShowDuration:0,collapsibleShowFunction:function(a,b){a.slideDown(200,b)},collapsibleHideDuration:0,collapsibleHideFunction:function(a,b){a.slideUp(200,b)},showOnClick:!1,hideOnClick:!0,noMouseOver:!1,keepInViewport:!0,keepHighlighted:!0,markCurrentItem:!1,markCurrentTree:!0,rightToLeftSubMenus:!1,bottomToTopSubMenus:!1,collapsibleBehavior:"default"},a});/*!
 * Font Awesome Free 5.15.1 by @fontawesome - https://fontawesome.com
 * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
 */
(function(){var l,a;l=this,a=function(){"use strict";var l={},a={};try{"undefined"!=typeof window&amp;&amp;(l=window),"undefined"!=typeof document&amp;&amp;(a=document)}catch(l){}var e=(l.navigator||{}).userAgent,r=void 0===e?"":e,n=l,o=a,u=(n.document,!!o.documentElement&amp;&amp;!!o.head&amp;&amp;"function"==typeof o.addEventListener&amp;&amp;o.createElement,~r.indexOf("MSIE")||r.indexOf("Trident/"),"___FONT_AWESOME___"),t=function(){try{return"production"===process.env.NODE_ENV}catch(l){return!1}}();var f=n||{};f[u]||(f[u]={}),f[u].styles||(f[u].styles={}),f[u].hooks||(f[u].hooks={}),f[u].shims||(f[u].shims=[]);var i=f[u],s=[["glass",null,"glass-martini"],["meetup","fab",null],["star-o","far","star"],["remove",null,"times"],["close",null,"times"],["gear",null,"cog"],["trash-o","far","trash-alt"],["file-o","far","file"],["clock-o","far","clock"],["arrow-circle-o-down","far","arrow-alt-circle-down"],["arrow-circle-o-up","far","arrow-alt-circle-up"],["play-circle-o","far","play-circle"],["repeat",null,"redo"],["rotate-right",null,"redo"],["refresh",null,"sync"],["list-alt","far",null],["dedent",null,"outdent"],["video-camera",null,"video"],["picture-o","far","image"],["photo","far","image"],["image","far","image"],["pencil",null,"pencil-alt"],["map-marker",null,"map-marker-alt"],["pencil-square-o","far","edit"],["share-square-o","far","share-square"],["check-square-o","far","check-square"],["arrows",null,"arrows-alt"],["times-circle-o","far","times-circle"],["check-circle-o","far","check-circle"],["mail-forward",null,"share"],["expand",null,"expand-alt"],["compress",null,"compress-alt"],["eye","far",null],["eye-slash","far",null],["warning",null,"exclamation-triangle"],["calendar",null,"calendar-alt"],["arrows-v",null,"arrows-alt-v"],["arrows-h",null,"arrows-alt-h"],["bar-chart","far","chart-bar"],["bar-chart-o","far","chart-bar"],["twitter-square","fab",null],["facebook-square","fab",null],["gears",null,"cogs"],["thumbs-o-up","far","thumbs-up"],["thumbs-o-down","far","thumbs-down"],["heart-o","far","heart"],["sign-out",null,"sign-out-alt"],["linkedin-square","fab","linkedin"],["thumb-tack",null,"thumbtack"],["external-link",null,"external-link-alt"],["sign-in",null,"sign-in-alt"],["github-square","fab",null],["lemon-o","far","lemon"],["square-o","far","square"],["bookmark-o","far","bookmark"],["twitter","fab",null],["facebook","fab","facebook-f"],["facebook-f","fab","facebook-f"],["github","fab",null],["credit-card","far",null],["feed",null,"rss"],["hdd-o","far","hdd"],["hand-o-right","far","hand-point-right"],["hand-o-left","far","hand-point-left"],["hand-o-up","far","hand-point-up"],["hand-o-down","far","hand-point-down"],["arrows-alt",null,"expand-arrows-alt"],["group",null,"users"],["chain",null,"link"],["scissors",null,"cut"],["files-o","far","copy"],["floppy-o","far","save"],["navicon",null,"bars"],["reorder",null,"bars"],["pinterest","fab",null],["pinterest-square","fab",null],["google-plus-square","fab",null],["google-plus","fab","google-plus-g"],["money","far","money-bill-alt"],["unsorted",null,"sort"],["sort-desc",null,"sort-down"],["sort-asc",null,"sort-up"],["linkedin","fab","linkedin-in"],["rotate-left",null,"undo"],["legal",null,"gavel"],["tachometer",null,"tachometer-alt"],["dashboard",null,"tachometer-alt"],["comment-o","far","comment"],["comments-o","far","comments"],["flash",null,"bolt"],["clipboard","far",null],["paste","far","clipboard"],["lightbulb-o","far","lightbulb"],["exchange",null,"exchange-alt"],["cloud-download",null,"cloud-download-alt"],["cloud-upload",null,"cloud-upload-alt"],["bell-o","far","bell"],["cutlery",null,"utensils"],["file-text-o","far","file-alt"],["building-o","far","building"],["hospital-o","far","hospital"],["tablet",null,"tablet-alt"],["mobile",null,"mobile-alt"],["mobile-phone",null,"mobile-alt"],["circle-o","far","circle"],["mail-reply",null,"reply"],["github-alt","fab",null],["folder-o","far","folder"],["folder-open-o","far","folder-open"],["smile-o","far","smile"],["frown-o","far","frown"],["meh-o","far","meh"],["keyboard-o","far","keyboard"],["flag-o","far","flag"],["mail-reply-all",null,"reply-all"],["star-half-o","far","star-half"],["star-half-empty","far","star-half"],["star-half-full","far","star-half"],["code-fork",null,"code-branch"],["chain-broken",null,"unlink"],["shield",null,"shield-alt"],["calendar-o","far","calendar"],["maxcdn","fab",null],["html5","fab",null],["css3","fab",null],["ticket",null,"ticket-alt"],["minus-square-o","far","minus-square"],["level-up",null,"level-up-alt"],["level-down",null,"level-down-alt"],["pencil-square",null,"pen-square"],["external-link-square",null,"external-link-square-alt"],["compass","far",null],["caret-square-o-down","far","caret-square-down"],["toggle-down","far","caret-square-down"],["caret-square-o-up","far","caret-square-up"],["toggle-up","far","caret-square-up"],["caret-square-o-right","far","caret-square-right"],["toggle-right","far","caret-square-right"],["eur",null,"euro-sign"],["euro",null,"euro-sign"],["gbp",null,"pound-sign"],["usd",null,"dollar-sign"],["dollar",null,"dollar-sign"],["inr",null,"rupee-sign"],["rupee",null,"rupee-sign"],["jpy",null,"yen-sign"],["cny",null,"yen-sign"],["rmb",null,"yen-sign"],["yen",null,"yen-sign"],["rub",null,"ruble-sign"],["ruble",null,"ruble-sign"],["rouble",null,"ruble-sign"],["krw",null,"won-sign"],["won",null,"won-sign"],["btc","fab",null],["bitcoin","fab","btc"],["file-text",null,"file-alt"],["sort-alpha-asc",null,"sort-alpha-down"],["sort-alpha-desc",null,"sort-alpha-down-alt"],["sort-amount-asc",null,"sort-amount-down"],["sort-amount-desc",null,"sort-amount-down-alt"],["sort-numeric-asc",null,"sort-numeric-down"],["sort-numeric-desc",null,"sort-numeric-down-alt"],["youtube-square","fab",null],["youtube","fab",null],["xing","fab",null],["xing-square","fab",null],["youtube-play","fab","youtube"],["dropbox","fab",null],["stack-overflow","fab",null],["instagram","fab",null],["flickr","fab",null],["adn","fab",null],["bitbucket","fab",null],["bitbucket-square","fab","bitbucket"],["tumblr","fab",null],["tumblr-square","fab",null],["long-arrow-down",null,"long-arrow-alt-down"],["long-arrow-up",null,"long-arrow-alt-up"],["long-arrow-left",null,"long-arrow-alt-left"],["long-arrow-right",null,"long-arrow-alt-right"],["apple","fab",null],["windows","fab",null],["android","fab",null],["linux","fab",null],["dribbble","fab",null],["skype","fab",null],["foursquare","fab",null],["trello","fab",null],["gratipay","fab",null],["gittip","fab","gratipay"],["sun-o","far","sun"],["moon-o","far","moon"],["vk","fab",null],["weibo","fab",null],["renren","fab",null],["pagelines","fab",null],["stack-exchange","fab",null],["arrow-circle-o-right","far","arrow-alt-circle-right"],["arrow-circle-o-left","far","arrow-alt-circle-left"],["caret-square-o-left","far","caret-square-left"],["toggle-left","far","caret-square-left"],["dot-circle-o","far","dot-circle"],["vimeo-square","fab",null],["try",null,"lira-sign"],["turkish-lira",null,"lira-sign"],["plus-square-o","far","plus-square"],["slack","fab",null],["wordpress","fab",null],["openid","fab",null],["institution",null,"university"],["bank",null,"university"],["mortar-board",null,"graduation-cap"],["yahoo","fab",null],["google","fab",null],["reddit","fab",null],["reddit-square","fab",null],["stumbleupon-circle","fab",null],["stumbleupon","fab",null],["delicious","fab",null],["digg","fab",null],["pied-piper-pp","fab",null],["pied-piper-alt","fab",null],["drupal","fab",null],["joomla","fab",null],["spoon",null,"utensil-spoon"],["behance","fab",null],["behance-square","fab",null],["steam","fab",null],["steam-square","fab",null],["automobile",null,"car"],["envelope-o","far","envelope"],["spotify","fab",null],["deviantart","fab",null],["soundcloud","fab",null],["file-pdf-o","far","file-pdf"],["file-word-o","far","file-word"],["file-excel-o","far","file-excel"],["file-powerpoint-o","far","file-powerpoint"],["file-image-o","far","file-image"],["file-photo-o","far","file-image"],["file-picture-o","far","file-image"],["file-archive-o","far","file-archive"],["file-zip-o","far","file-archive"],["file-audio-o","far","file-audio"],["file-sound-o","far","file-audio"],["file-video-o","far","file-video"],["file-movie-o","far","file-video"],["file-code-o","far","file-code"],["vine","fab",null],["codepen","fab",null],["jsfiddle","fab",null],["life-ring","far",null],["life-bouy","far","life-ring"],["life-buoy","far","life-ring"],["life-saver","far","life-ring"],["support","far","life-ring"],["circle-o-notch",null,"circle-notch"],["rebel","fab",null],["ra","fab","rebel"],["resistance","fab","rebel"],["empire","fab",null],["ge","fab","empire"],["git-square","fab",null],["git","fab",null],["hacker-news","fab",null],["y-combinator-square","fab","hacker-news"],["yc-square","fab","hacker-news"],["tencent-weibo","fab",null],["qq","fab",null],["weixin","fab",null],["wechat","fab","weixin"],["send",null,"paper-plane"],["paper-plane-o","far","paper-plane"],["send-o","far","paper-plane"],["circle-thin","far","circle"],["header",null,"heading"],["sliders",null,"sliders-h"],["futbol-o","far","futbol"],["soccer-ball-o","far","futbol"],["slideshare","fab",null],["twitch","fab",null],["yelp","fab",null],["newspaper-o","far","newspaper"],["paypal","fab",null],["google-wallet","fab",null],["cc-visa","fab",null],["cc-mastercard","fab",null],["cc-discover","fab",null],["cc-amex","fab",null],["cc-paypal","fab",null],["cc-stripe","fab",null],["bell-slash-o","far","bell-slash"],["trash",null,"trash-alt"],["copyright","far",null],["eyedropper",null,"eye-dropper"],["area-chart",null,"chart-area"],["pie-chart",null,"chart-pie"],["line-chart",null,"chart-line"],["lastfm","fab",null],["lastfm-square","fab",null],["ioxhost","fab",null],["angellist","fab",null],["cc","far","closed-captioning"],["ils",null,"shekel-sign"],["shekel",null,"shekel-sign"],["sheqel",null,"shekel-sign"],["meanpath","fab","font-awesome"],["buysellads","fab",null],["connectdevelop","fab",null],["dashcube","fab",null],["forumbee","fab",null],["leanpub","fab",null],["sellsy","fab",null],["shirtsinbulk","fab",null],["simplybuilt","fab",null],["skyatlas","fab",null],["diamond","far","gem"],["intersex",null,"transgender"],["facebook-official","fab","facebook"],["pinterest-p","fab",null],["whatsapp","fab",null],["hotel",null,"bed"],["viacoin","fab",null],["medium","fab",null],["y-combinator","fab",null],["yc","fab","y-combinator"],["optin-monster","fab",null],["opencart","fab",null],["expeditedssl","fab",null],["battery-4",null,"battery-full"],["battery",null,"battery-full"],["battery-3",null,"battery-three-quarters"],["battery-2",null,"battery-half"],["battery-1",null,"battery-quarter"],["battery-0",null,"battery-empty"],["object-group","far",null],["object-ungroup","far",null],["sticky-note-o","far","sticky-note"],["cc-jcb","fab",null],["cc-diners-club","fab",null],["clone","far",null],["hourglass-o","far","hourglass"],["hourglass-1",null,"hourglass-start"],["hourglass-2",null,"hourglass-half"],["hourglass-3",null,"hourglass-end"],["hand-rock-o","far","hand-rock"],["hand-grab-o","far","hand-rock"],["hand-paper-o","far","hand-paper"],["hand-stop-o","far","hand-paper"],["hand-scissors-o","far","hand-scissors"],["hand-lizard-o","far","hand-lizard"],["hand-spock-o","far","hand-spock"],["hand-pointer-o","far","hand-pointer"],["hand-peace-o","far","hand-peace"],["registered","far",null],["creative-commons","fab",null],["gg","fab",null],["gg-circle","fab",null],["tripadvisor","fab",null],["odnoklassniki","fab",null],["odnoklassniki-square","fab",null],["get-pocket","fab",null],["wikipedia-w","fab",null],["safari","fab",null],["chrome","fab",null],["firefox","fab",null],["opera","fab",null],["internet-explorer","fab",null],["television",null,"tv"],["contao","fab",null],["500px","fab",null],["amazon","fab",null],["calendar-plus-o","far","calendar-plus"],["calendar-minus-o","far","calendar-minus"],["calendar-times-o","far","calendar-times"],["calendar-check-o","far","calendar-check"],["map-o","far","map"],["commenting",null,"comment-dots"],["commenting-o","far","comment-dots"],["houzz","fab",null],["vimeo","fab","vimeo-v"],["black-tie","fab",null],["fonticons","fab",null],["reddit-alien","fab",null],["edge","fab",null],["credit-card-alt",null,"credit-card"],["codiepie","fab",null],["modx","fab",null],["fort-awesome","fab",null],["usb","fab",null],["product-hunt","fab",null],["mixcloud","fab",null],["scribd","fab",null],["pause-circle-o","far","pause-circle"],["stop-circle-o","far","stop-circle"],["bluetooth","fab",null],["bluetooth-b","fab",null],["gitlab","fab",null],["wpbeginner","fab",null],["wpforms","fab",null],["envira","fab",null],["wheelchair-alt","fab","accessible-icon"],["question-circle-o","far","question-circle"],["volume-control-phone",null,"phone-volume"],["asl-interpreting",null,"american-sign-language-interpreting"],["deafness",null,"deaf"],["hard-of-hearing",null,"deaf"],["glide","fab",null],["glide-g","fab",null],["signing",null,"sign-language"],["viadeo","fab",null],["viadeo-square","fab",null],["snapchat","fab",null],["snapchat-ghost","fab",null],["snapchat-square","fab",null],["pied-piper","fab",null],["first-order","fab",null],["yoast","fab",null],["themeisle","fab",null],["google-plus-official","fab","google-plus"],["google-plus-circle","fab","google-plus"],["font-awesome","fab",null],["fa","fab","font-awesome"],["handshake-o","far","handshake"],["envelope-open-o","far","envelope-open"],["linode","fab",null],["address-book-o","far","address-book"],["vcard",null,"address-card"],["address-card-o","far","address-card"],["vcard-o","far","address-card"],["user-circle-o","far","user-circle"],["user-o","far","user"],["id-badge","far",null],["drivers-license",null,"id-card"],["id-card-o","far","id-card"],["drivers-license-o","far","id-card"],["quora","fab",null],["free-code-camp","fab",null],["telegram","fab",null],["thermometer-4",null,"thermometer-full"],["thermometer",null,"thermometer-full"],["thermometer-3",null,"thermometer-three-quarters"],["thermometer-2",null,"thermometer-half"],["thermometer-1",null,"thermometer-quarter"],["thermometer-0",null,"thermometer-empty"],["bathtub",null,"bath"],["s15",null,"bath"],["window-maximize","far",null],["window-restore","far",null],["times-rectangle",null,"window-close"],["window-close-o","far","window-close"],["times-rectangle-o","far","window-close"],["bandcamp","fab",null],["grav","fab",null],["etsy","fab",null],["imdb","fab",null],["ravelry","fab",null],["eercast","fab","sellcast"],["snowflake-o","far","snowflake"],["superpowers","fab",null],["wpexplorer","fab",null],["cab",null,"taxi"]];return function(l){try{l()}catch(l){if(!t)throw l}}(function(){var l;"function"==typeof i.hooks.addShims?i.hooks.addShims(s):(l=i.shims).push.apply(l,s)}),s},"object"==typeof exports&amp;&amp;"undefined"!=typeof module?module.exports=a():"function"==typeof define&amp;&amp;define.amd?define(a):l["fontawesome-free-shims"]=a()})();function wcml_reset_cart_fragments(){try{document.body.dispatchEvent(new Event("wc_fragment_refresh")),sessionStorage.removeItem("wc_fragments")}catch(err){}}function wcml_cart_clear_removed_items(){var xhr=new XMLHttpRequest,formData=new FormData;formData.append("action","wcml_cart_clear_removed_items"),formData.append("wcml_nonce",document.querySelector("#wcml_clear_removed_items_nonce").value),xhr.open("POST",woocommerce_params.ajax_url),xhr.onload=function(){200===xhr.status&amp;&amp;(window.location=window.location.href)},xhr.send(formData)}document.addEventListener("DOMContentLoaded",(function(){document.addEventListener("click",(function(e){e.target.matches(".wcml_removed_cart_items_clear")&amp;&amp;(e.preventDefault(),wcml_cart_clear_removed_items())}));var name;(!sessionStorage.getItem("woocommerce_cart_hash")&amp;&amp;(name="woocommerce_cart_hash",!document.cookie.match("(^|;)\\s*"+name+"\\s*=\\s*([^;]+)")?.pop())||1==actions.is_lang_switched||1==actions.force_reset)&amp;&amp;setTimeout(wcml_reset_cart_fragments,0)}));!function(e){if("object"==typeof exports&amp;&amp;"undefined"!=typeof module)module.exports=e();else if("function"==typeof define&amp;&amp;define.amd)define([],e);else{var t;"undefined"!=typeof window?t=window:"undefined"!=typeof global?t=global:"undefined"!=typeof self&amp;&amp;(t=self),t.sbjs=e()}}(function(){return function e(t,r,n){function a(s,o){if(!r[s]){if(!t[s]){var c="function"==typeof require&amp;&amp;require;if(!o&amp;&amp;c)return c(s,!0);if(i)return i(s,!0);var u=new Error("Cannot find module '"+s+"'");throw u.code="MODULE_NOT_FOUND",u}var p=r[s]={exports:{}};t[s][0].call(p.exports,function(e){var r=t[s][1][e];return a(r||e)},p,p.exports,e,t,r,n)}return r[s].exports}for(var i="function"==typeof require&amp;&amp;require,s=0;s&lt;n.length;s++)a(n[s]);return a}({1:[function(e,t,r){"use strict";var n=e("./init"),a={init:function(e){this.get=n(e),e&amp;&amp;e.callback&amp;&amp;"function"==typeof e.callback&amp;&amp;e.callback(this.get)}};t.exports=a},{"./init":6}],2:[function(e,t,r){"use strict";var n=e("./terms"),a=e("./helpers/utils"),i={containers:{current:"sbjs_current",current_extra:"sbjs_current_add",first:"sbjs_first",first_extra:"sbjs_first_add",session:"sbjs_session",udata:"sbjs_udata",promocode:"sbjs_promo"},service:{migrations:"sbjs_migrations"},delimiter:"|||",aliases:{main:{type:"typ",source:"src",medium:"mdm",campaign:"cmp",content:"cnt",term:"trm",id:"id",platform:"plt",format:"fmt",tactic:"tct"},extra:{fire_date:"fd",entrance_point:"ep",referer:"rf"},session:{pages_seen:"pgs",current_page:"cpg"},udata:{visits:"vst",ip:"uip",agent:"uag"},promo:"code"},pack:{main:function(e){return i.aliases.main.type+"="+e.type+i.delimiter+i.aliases.main.source+"="+e.source+i.delimiter+i.aliases.main.medium+"="+e.medium+i.delimiter+i.aliases.main.campaign+"="+e.campaign+i.delimiter+i.aliases.main.content+"="+e.content+i.delimiter+i.aliases.main.term+"="+e.term+i.delimiter+i.aliases.main.id+"="+e.id+i.delimiter+i.aliases.main.platform+"="+e.platform+i.delimiter+i.aliases.main.format+"="+e.format+i.delimiter+i.aliases.main.tactic+"="+e.tactic},extra:function(e){return i.aliases.extra.fire_date+"="+a.setDate(new Date,e)+i.delimiter+i.aliases.extra.entrance_point+"="+document.location.href+i.delimiter+i.aliases.extra.referer+"="+(document.referrer||n.none)},user:function(e,t){return i.aliases.udata.visits+"="+e+i.delimiter+i.aliases.udata.ip+"="+t+i.delimiter+i.aliases.udata.agent+"="+navigator.userAgent},session:function(e){return i.aliases.session.pages_seen+"="+e+i.delimiter+i.aliases.session.current_page+"="+document.location.href},promo:function(e){return i.aliases.promo+"="+a.setLeadingZeroToInt(a.randomInt(e.min,e.max),e.max.toString().length)}}};t.exports=i},{"./helpers/utils":5,"./terms":9}],3:[function(e,t,r){"use strict";var n=e("../data").delimiter;t.exports={useBase64:!1,setBase64Flag:function(e){this.useBase64=e},encodeData:function(e){return encodeURIComponent(e).replace(/\!/g,"%21").replace(/\~/g,"%7E").replace(/\*/g,"%2A").replace(/\'/g,"%27").replace(/\(/g,"%28").replace(/\)/g,"%29")},decodeData:function(e){try{return decodeURIComponent(e).replace(/\%21/g,"!").replace(/\%7E/g,"~").replace(/\%2A/g,"*").replace(/\%27/g,"'").replace(/\%28/g,"(").replace(/\%29/g,")")}catch(t){try{return unescape(e)}catch(r){return""}}},set:function(e,t,r,n,a){var i,s;if(r){var o=new Date;o.setTime(o.getTime()+60*r*1e3),i="; expires="+o.toGMTString()}else i="";s=n&amp;&amp;!a?";domain=."+n:"";var c=this.encodeData(t);this.useBase64&amp;&amp;(c=btoa(c).replace(/=+$/,"")),document.cookie=this.encodeData(e)+"="+c+i+s+"; path=/"},get:function(e){for(var t=this.encodeData(e)+"=",r=document.cookie.split(";"),n=0;n&lt;r.length;n++){for(var a=r[n];" "===a.charAt(0);)a=a.substring(1,a.length);if(0===a.indexOf(t)){var i=a.substring(t.length,a.length);if(/^[A-Za-z0-9+/]+$/.test(i))try{i=atob(i.padEnd(4*Math.ceil(i.length/4),"="))}catch(s){}return this.decodeData(i)}}return null},destroy:function(e,t,r){this.set(e,"",-1,t,r)},parse:function(e){var t=[],r={};if("string"==typeof e)t.push(e);else for(var a in e)e.hasOwnProperty(a)&amp;&amp;t.push(e[a]);for(var i=0;i&lt;t.length;i++){var s;r[this.unsbjs(t[i])]={},s=this.get(t[i])?this.get(t[i]).split(n):[];for(var o=0;o&lt;s.length;o++){var c=s[o].split("="),u=c.splice(0,1);u.push(c.join("=")),r[this.unsbjs(t[i])][u[0]]=this.decodeData(u[1])}}return r},unsbjs:function(e){return e.replace("sbjs_","")}}},{"../data":2}],4:[function(e,t,r){"use strict";t.exports={parse:function(e){for(var t=this.parseOptions,r=t.parser[t.strictMode?"strict":"loose"].exec(e),n={},a=14;a--;)n[t.key[a]]=r[a]||"";return n[t.q.name]={},n[t.key[12]].replace(t.q.parser,function(e,r,a){r&amp;&amp;(n[t.q.name][r]=a)}),n},parseOptions:{strictMode:!1,key:["source","protocol","authority","userInfo","user","password","host","port","relative","path","directory","file","query","anchor"],q:{name:"queryKey",parser:/(?:^|&amp;)([^&amp;=]*)=?([^&amp;]*)/g},parser:{strict:/^(?:([^:\/?#]+):)?(?:\/\/((?:(([^:@]*)(?::([^:@]*))?)?@)?([^:\/?#]*)(?::(\d*))?))?((((?:[^?#\/]*\/)*)([^?#]*))(?:\?([^#]*))?(?:#(.*))?)/,loose:/^(?:(?![^:@]+:[^:@\/]*@)([^:\/?#.]+):)?(?:\/\/)?((?:(([^:@]*)(?::([^:@]*))?)?@)?([^:\/?#]*)(?::(\d*))?)(((\/(?:[^?#](?![^?#\/]*\.[^?#\/.]+(?:[?#]|$)))*\/?)?([^?#\/]*))(?:\?([^#]*))?(?:#(.*))?)/}},getParam:function(e){for(var t={},r=(e||window.location.search.substring(1)).split("&amp;"),n=0;n&lt;r.length;n++){var a=r[n].split("=");if("undefined"==typeof t[a[0]])t[a[0]]=a[1];else if("string"==typeof t[a[0]]){var i=[t[a[0]],a[1]];t[a[0]]=i}else t[a[0]].push(a[1])}return t},getHost:function(e){return this.parse(e).host.replace("www.","")}}},{}],5:[function(e,t,r){"use strict";t.exports={escapeRegexp:function(e){return e.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g,"\\$&amp;")},setDate:function(e,t){var r=e.getTimezoneOffset()/60,n=e.getHours(),a=t||0===t?t:-r;return e.setHours(n+r+a),e.getFullYear()+"-"+this.setLeadingZeroToInt(e.getMonth()+1,2)+"-"+this.setLeadingZeroToInt(e.getDate(),2)+" "+this.setLeadingZeroToInt(e.getHours(),2)+":"+this.setLeadingZeroToInt(e.getMinutes(),2)+":"+this.setLeadingZeroToInt(e.getSeconds(),2)},setLeadingZeroToInt:function(e,t){for(var r=e+"";r.length&lt;t;)r="0"+r;return r},randomInt:function(e,t){return Math.floor(Math.random()*(t-e+1))+e}}},{}],6:[function(e,t,r){"use strict";var n=e("./data"),a=e("./terms"),i=e("./helpers/cookies"),s=e("./helpers/uri"),o=e("./helpers/utils"),c=e("./params"),u=e("./migrations");t.exports=function(e){var t,r,p,f,m,d,l,g,h,y,_,v,b,x=c.fetch(e),k=s.getParam(),w=x.domain.host,q=x.domain.isolate,I=x.lifetime;function j(e){switch(e){case a.traffic.utm:t=a.traffic.utm,r="undefined"!=typeof k.utm_source?k.utm_source:"undefined"!=typeof k.gclid?"google":"undefined"!=typeof k.yclid?"yandex":a.none,p="undefined"!=typeof k.utm_medium?k.utm_medium:"undefined"!=typeof k.gclid?"cpc":"undefined"!=typeof k.yclid?"cpc":a.none,f="undefined"!=typeof k.utm_campaign?k.utm_campaign:"undefined"!=typeof k[x.campaign_param]?k[x.campaign_param]:"undefined"!=typeof k.gclid?"google_cpc":"undefined"!=typeof k.yclid?"yandex_cpc":a.none,m="undefined"!=typeof k.utm_content?k.utm_content:"undefined"!=typeof k[x.content_param]?k[x.content_param]:a.none,l=k.utm_id||a.none,g=k.utm_source_platform||a.none,h=k.utm_creative_format||a.none,y=k.utm_marketing_tactic||a.none,d="undefined"!=typeof k.utm_term?k.utm_term:"undefined"!=typeof k[x.term_param]?k[x.term_param]:function(){var e=document.referrer;if(k.utm_term)return k.utm_term;if(!(e&amp;&amp;s.parse(e).host&amp;&amp;s.parse(e).host.match(/^(?:.*\.)?yandex\..{2,9}$/i)))return!1;try{return s.getParam(s.parse(document.referrer).query).text}catch(t){return!1}}()||a.none;break;case a.traffic.organic:t=a.traffic.organic,r=r||s.getHost(document.referrer),p=a.referer.organic,f=a.none,m=a.none,d=a.none,l=a.none,g=a.none,h=a.none,y=a.none;break;case a.traffic.referral:t=a.traffic.referral,r=r||s.getHost(document.referrer),p=p||a.referer.referral,f=a.none,m=s.parse(document.referrer).path,d=a.none,l=a.none,g=a.none,h=a.none,y=a.none;break;case a.traffic.typein:t=a.traffic.typein,r=x.typein_attributes.source,p=x.typein_attributes.medium,f=a.none,m=a.none,d=a.none,l=a.none,g=a.none,h=a.none,y=a.none;break;default:t=a.oops,r=a.oops,p=a.oops,f=a.oops,m=a.oops,d=a.oops,l=a.oops,g=a.oops,h=a.oops,y=a.oops}var i={type:t,source:r,medium:p,campaign:f,content:m,term:d,id:l,platform:g,format:h,tactic:y};return n.pack.main(i)}function R(e){var t=document.referrer;switch(e){case a.traffic.organic:return!!t&amp;&amp;H(t)&amp;&amp;function(e){var t=new RegExp("^(?:.*\\.)?"+o.escapeRegexp("yandex")+"\\..{2,9}$"),n=new RegExp(".*"+o.escapeRegexp("text")+"=.*"),a=new RegExp("^(?:www\\.)?"+o.escapeRegexp("google")+"\\..{2,9}$");if(s.parse(e).query&amp;&amp;s.parse(e).host.match(t)&amp;&amp;s.parse(e).query.match(n))return r="yandex",!0;if(s.parse(e).host.match(a))return r="google",!0;if(!s.parse(e).query)return!1;for(var i=0;i&lt;x.organics.length;i++){if(s.parse(e).host.match(new RegExp("^(?:.*\\.)?"+o.escapeRegexp(x.organics[i].host)+"$","i"))&amp;&amp;s.parse(e).query.match(new RegExp(".*"+o.escapeRegexp(x.organics[i].param)+"=.*","i")))return r=x.organics[i].display||x.organics[i].host,!0;if(i+1===x.organics.length)return!1}}(t);case a.traffic.referral:return!!t&amp;&amp;H(t)&amp;&amp;function(e){if(!(x.referrals.length&gt;0))return r=s.getHost(e),!0;for(var t=0;t&lt;x.referrals.length;t++){if(s.parse(e).host.match(new RegExp("^(?:.*\\.)?"+o.escapeRegexp(x.referrals[t].host)+"$","i")))return r=x.referrals[t].display||x.referrals[t].host,p=x.referrals[t].medium||a.referer.referral,!0;if(t+1===x.referrals.length)return r=s.getHost(e),!0}}(t);default:return!1}}function H(e){if(x.domain){if(q)return s.getHost(e)!==s.getHost(w);var t=new RegExp("^(?:.*\\.)?"+o.escapeRegexp(w)+"$","i");return!s.getHost(e).match(t)}return s.getHost(e)!==s.getHost(document.location.href)}function D(){i.set(n.containers.current_extra,n.pack.extra(x.timezone_offset),I,w,q),i.get(n.containers.first_extra)||i.set(n.containers.first_extra,n.pack.extra(x.timezone_offset),I,w,q)}return i.setBase64Flag(x.base64),u.go(I,w,q),i.set(n.containers.current,function(){var e;if("undefined"!=typeof k.utm_source||"undefined"!=typeof k.utm_medium||"undefined"!=typeof k.utm_campaign||"undefined"!=typeof k.utm_content||"undefined"!=typeof k.utm_term||"undefined"!=typeof k.utm_id||"undefined"!=typeof k.utm_source_platform||"undefined"!=typeof k.utm_creative_format||"undefined"!=typeof k.utm_marketing_tactic||"undefined"!=typeof k.gclid||"undefined"!=typeof k.yclid||"undefined"!=typeof k[x.campaign_param]||"undefined"!=typeof k[x.term_param]||"undefined"!=typeof k[x.content_param])D(),e=j(a.traffic.utm);else if(R(a.traffic.organic))D(),e=j(a.traffic.organic);else if(!i.get(n.containers.session)&amp;&amp;R(a.traffic.referral))D(),e=j(a.traffic.referral);else{if(i.get(n.containers.first)||i.get(n.containers.current))return i.get(n.containers.current);D(),e=j(a.traffic.typein)}return e}(),I,w,q),i.get(n.containers.first)||i.set(n.containers.first,i.get(n.containers.current),I,w,q),i.get(n.containers.udata)?(_=parseInt(i.parse(n.containers.udata)[i.unsbjs(n.containers.udata)][n.aliases.udata.visits])||1,_=i.get(n.containers.session)?_:_+1,v=n.pack.user(_,x.user_ip)):(_=1,v=n.pack.user(_,x.user_ip)),i.set(n.containers.udata,v,I,w,q),i.get(n.containers.session)?(b=parseInt(i.parse(n.containers.session)[i.unsbjs(n.containers.session)][n.aliases.session.pages_seen])||1,b+=1):b=1,i.set(n.containers.session,n.pack.session(b),x.session_length,w,q),x.promocode&amp;&amp;!i.get(n.containers.promocode)&amp;&amp;i.set(n.containers.promocode,n.pack.promo(x.promocode),I,w,q),i.parse(n.containers)}},{"./data":2,"./helpers/cookies":3,"./helpers/uri":4,"./helpers/utils":5,"./migrations":7,"./params":8,"./terms":9}],7:[function(e,t,r){"use strict";var n=e("./data"),a=e("./helpers/cookies");t.exports={go:function(e,t,r){var i,s=this.migrations,o={l:e,d:t,i:r};if(a.get(n.containers.first)||a.get(n.service.migrations)){if(!a.get(n.service.migrations))for(i=0;i&lt;s.length;i++)s[i].go(s[i].id,o)}else{var c=[];for(i=0;i&lt;s.length;i++)c.push(s[i].id);var u="";for(i=0;i&lt;c.length;i++)u+=c[i]+"=1",i&lt;c.length-1&amp;&amp;(u+=n.delimiter);a.set(n.service.migrations,u,o.l,o.d,o.i)}},migrations:[{id:"1418474375998",version:"1.0.0-beta",go:function(e,t){var r=e+"=1",i=e+"=0",s=function(e,t,r){return t||r?e:n.delimiter};try{var o=[];for(var c in n.containers)n.containers.hasOwnProperty(c)&amp;&amp;o.push(n.containers[c]);for(var u=0;u&lt;o.length;u++)if(a.get(o[u])){var p=a.get(o[u]).replace(/(\|)?\|(\|)?/g,s);a.destroy(o[u],t.d,t.i),a.destroy(o[u],t.d,!t.i),a.set(o[u],p,t.l,t.d,t.i)}a.get(n.containers.session)&amp;&amp;a.set(n.containers.session,n.pack.session(0),t.l,t.d,t.i),a.set(n.service.migrations,r,t.l,t.d,t.i)}catch(f){a.set(n.service.migrations,i,t.l,t.d,t.i)}}}]}},{"./data":2,"./helpers/cookies":3}],8:[function(e,t,r){"use strict";var n=e("./terms"),a=e("./helpers/uri");t.exports={fetch:function(e){var t=e||{},r={};if(r.lifetime=this.validate.checkFloat(t.lifetime)||6,r.lifetime=parseInt(30*r.lifetime*24*60),r.session_length=this.validate.checkInt(t.session_length)||30,r.timezone_offset=this.validate.checkInt(t.timezone_offset),r.base64=t.base64||!1,r.campaign_param=t.campaign_param||!1,r.term_param=t.term_param||!1,r.content_param=t.content_param||!1,r.user_ip=t.user_ip||n.none,t.promocode?(r.promocode={},r.promocode.min=parseInt(t.promocode.min)||1e5,r.promocode.max=parseInt(t.promocode.max)||999999):r.promocode=!1,t.typein_attributes&amp;&amp;t.typein_attributes.source&amp;&amp;t.typein_attributes.medium?(r.typein_attributes={},r.typein_attributes.source=t.typein_attributes.source,r.typein_attributes.medium=t.typein_attributes.medium):r.typein_attributes={source:"(direct)",medium:"(none)"},t.domain&amp;&amp;this.validate.isString(t.domain)?r.domain={host:t.domain,isolate:!1}:t.domain&amp;&amp;t.domain.host?r.domain=t.domain:r.domain={host:a.getHost(document.location.hostname),isolate:!1},r.referrals=[],t.referrals&amp;&amp;t.referrals.length&gt;0)for(var i=0;i&lt;t.referrals.length;i++)t.referrals[i].host&amp;&amp;r.referrals.push(t.referrals[i]);if(r.organics=[],t.organics&amp;&amp;t.organics.length&gt;0)for(var s=0;s&lt;t.organics.length;s++)t.organics[s].host&amp;&amp;t.organics[s].param&amp;&amp;r.organics.push(t.organics[s]);return r.organics.push({host:"bing.com",param:"q",display:"bing"}),r.organics.push({host:"yahoo.com",param:"p",display:"yahoo"}),r.organics.push({host:"about.com",param:"q",display:"about"}),r.organics.push({host:"aol.com",param:"q",display:"aol"}),r.organics.push({host:"ask.com",param:"q",display:"ask"}),r.organics.push({host:"globososo.com",param:"q",display:"globo"}),r.organics.push({host:"go.mail.ru",param:"q",display:"go.mail.ru"}),r.organics.push({host:"rambler.ru",param:"query",display:"rambler"}),r.organics.push({host:"tut.by",param:"query",display:"tut.by"}),r.referrals.push({host:"t.co",display:"twitter.com"}),r.referrals.push({host:"plus.url.google.com",display:"plus.google.com"}),r},validate:{checkFloat:function(e){return!(!e||!this.isNumeric(parseFloat(e)))&amp;&amp;parseFloat(e)},checkInt:function(e){return!(!e||!this.isNumeric(parseInt(e)))&amp;&amp;parseInt(e)},isNumeric:function(e){return!isNaN(e)},isString:function(e){return"[object String]"===Object.prototype.toString.call(e)}}}},{"./helpers/uri":4,"./terms":9}],9:[function(e,t,r){"use strict";t.exports={traffic:{utm:"utm",organic:"organic",referral:"referral",typein:"typein"},referer:{referral:"referral",organic:"organic",social:"social"},none:"(none)",oops:"(Houston, we have a problem)"}},{}]},{},[1])(1)});!function(t){"use strict";const e=t.params,n=(document.querySelector.bind(document),(t,e)=&gt;e.split(".").reduce((t,e)=&gt;t&amp;&amp;t[e],t)),i=()=&gt;null,s=t=&gt;null===t||t===undefined?"":t,o="wc/store/checkout";function a(t){window.wp&amp;&amp;window.wp.data&amp;&amp;window.wp.data.dispatch&amp;&amp;window.wc&amp;&amp;window.wc.wcBlocksData&amp;&amp;window.wp.data.dispatch(window.wc.wcBlocksData.CHECKOUT_STORE_KEY).__internalSetExtensionData("woocommerce/order-attribution",t,!0)}function r(){return"undefined"!=typeof sbjs}function c(){if(window.wp&amp;&amp;window.wp.data&amp;&amp;"function"==typeof window.wp.data.subscribe){const e=window.wp.data.subscribe(function(){e(),a(t.getAttributionData())},o)}}t.getAttributionData=function(){const s=e.allowTracking&amp;&amp;r()?n:i,o=r()?sbjs.get:{},a=Object.entries(t.fields).map(([t,e])=&gt;[t,s(o,e)]);return Object.fromEntries(a)},t.setOrderTracking=function(n){if(e.allowTracking=n,n){if(!r())return;sbjs.init({lifetime:Number(e.lifetime),session_length:Number(e.session),base64:Boolean(e.base64),timezone_offset:"0"})}else!function(){const t=window.location.hostname;["sbjs_current","sbjs_current_add","sbjs_first","sbjs_first_add","sbjs_session","sbjs_udata","sbjs_migrations","sbjs_promo"].forEach(e=&gt;{document.cookie=`${e}=; path=/; max-age=-999; domain=.${t};`})}();const i=t.getAttributionData();!function(t){for(const e of document.querySelectorAll("wc-order-attribution-inputs"))e.values=t}(i),a(i)},t.setOrderTracking(e.allowTracking),"loading"===document.readyState?document.addEventListener("DOMContentLoaded",c):c(),window.customElements.define("wc-order-attribution-inputs",class extends HTMLElement{constructor(){if(super(),this._fieldNames=Object.keys(t.fields),this.hasOwnProperty("_values")){let t=this.values;delete this.values,this.values=t||{}}}connectedCallback(){this.innerHTML="";const t=new DocumentFragment;for(const n of this._fieldNames){const i=document.createElement("input");i.type="hidden",i.name=`${e.prefix}${n}`,i.value=s(this.values&amp;&amp;this.values[n]||""),t.appendChild(i)}this.appendChild(t)}set values(t){if(this._values=t,this.isConnected)for(const t of this._fieldNames){const n=this.querySelector(`input[name="${e.prefix}${t}"]`);n?n.value=s(this.values[t]):console.warn(`Field "${t}" not found. `+"Most likely, the '&lt;wc-order-attribution-inputs&gt;' element was manipulated.")}}get values(){return this._values}})}(window.wc_order_attribution);(function($){grecaptcha.ready(function(){$('.grecaptcha-badge').css('visibility','hidden')})})(jQuery);jQuery(document).ready(function($){var headerFx=$('.header-fx');function addStickyEffectClass(){var scrollPosition=$(window).scrollTop();if(scrollPosition&gt;=20){headerFx.addClass('elementor-sticky--effects')}else{headerFx.removeClass('elementor-sticky--effects')}}
$(window).scroll(function(){addStickyEffectClass()});addStickyEffectClass();$('.wpml-ls-native').each(function(){var text=$(this).text();if(text==='Eesti'){$(this).text('EST')}
if(text==='English'){$(this).text('ENG')}});$('.wpml-ls-current-language').hide();$('.wpml-ls-item').not('.wpml-ls-current-language').css('visibility','visible');if($('html').attr('lang')==='en-US'&amp;&amp;$('body').hasClass('tax-product_cat')){$('.jet-breadcrumbs__item-link:contains("Tooted")').text('Products')}
if($('html').attr('lang')==='en-US'&amp;&amp;$('body').hasClass('single-referentsid')){$('#breadcrumbs span span a:contains("Referentsid")').text('References')}
if($('html').attr('lang')==='en-US'&amp;&amp;$('body').hasClass('post-type-archive-referentsid')){$('.products-nav a:contains("Referentsid")').text('References')}
if($(".single-product").length||$(".single-referentsid").length){if($(".kus-kasutanud .jet-listing-not-found").length){$(".kus-kasutanud-hide").addClass("hide-referentsid")}}
if(($(".page-id-1996").length)||($(".page-id-5569").length)){setTimeout(function(){$(".jet-radio-list__item input").click(function(){$("#kontaktide-grid").get(0).scrollIntoView({behavior:"smooth",})})},500)}
if($(".post-type-archive-referentsid").length){setTimeout(function(){$(".jet-radio-list__item input").on('click tap',function(event){var dropdown=$(".jet-filter-items-dropdown");dropdown.toggleClass("jet-dropdown-open");var element=document.getElementById("referentside-sektsioon");if(element){element.scrollIntoView({behavior:"smooth",})}})},500)}
if($(".post-type-archive-sertifikaadid").length){setTimeout(function(){$(".jet-radio-list__item input").on('click tap',function(event){var dropdown=$(".jet-filter-items-dropdown");dropdown.toggleClass("jet-dropdown-open");var element=document.getElementById("sertifikaatide-sektsioon");if(element){element.scrollIntoView({behavior:"smooth",})}})},500)}
if($(".post-type-archive-juhendid").length){setTimeout(function(){$(".jet-radio-list__item input").on('click tap',function(event){var dropdown=$(".jet-filter-items-dropdown");dropdown.toggleClass("jet-dropdown-open");var element=document.getElementById("juhendite-sektsioon");if(element){element.scrollIntoView({behavior:"smooth",})}})},500)}
if($(".single-product").length||$(".single-referentsid").length||$(".single-post").length){$('.ug-item-wrapper img').each(function(){$(this).trigger('mouseover').trigger('mouseleave')});$(document).on('mousemove','.single-product .ug-item-wrapper img',function(e){var rect=this.getBoundingClientRect();var x=e.clientX-rect.left;var y=e.clientY-rect.top;var xPercent=Math.round(100/(rect.width/x));var yPercent=Math.round(100/(rect.height/y));var zoomLevel=2;$(this).css({'transform':'scale('+zoomLevel+')','transform-origin':xPercent+'% '+yPercent+'%'})});$(document).on('mouseleave','.single-product .ug-item-wrapper img',function(){$(this).css({'transform':'scale(1)','transform-origin':'initial'})});$('.single-product .slider-img img').each(function(){$(this).trigger('mouseover').trigger('mouseleave')});$(document).on('mousemove','.single-product .slider-img img',function(e){var rect=this.getBoundingClientRect();var x=e.clientX-rect.left;var y=e.clientY-rect.top;var xPercent=Math.round(100/(rect.width/x));var yPercent=Math.round(100/(rect.height/y));var zoomLevel=2;$(this).css({'transform':'scale('+zoomLevel+')','transform-origin':xPercent+'% '+yPercent+'%'})});$(document).on('mouseleave','.single-product .slider-img img',function(){$(this).css({'transform':'scale(1)','transform-origin':'initial'})})}
if($(".home").length){let isFirstRun=!0;function adjustWidthToTitle(){var title=$('#slide-title');var originalHtml=title.html();var marker=$('&lt;span id="end-marker"&gt;|&lt;/span&gt;').css({'display':'inline-block','visibility':'hidden'});title.append(marker);var markerPosition=$('#end-marker').position();var titlePosition=title.position();var lastLineWidth=markerPosition.left-titlePosition.left;$('#end-marker').remove();title.html(originalHtml);$('.line-under-text img').width(lastLineWidth)}
$('.owl-carousel').on('changed.owl.carousel',function(e){let activeIndex=e.item.index;let currentLang=$('html').attr('lang');let title=slideTitles[activeIndex]||'';console.log(title);if(title){if(!isFirstRun){$('#slide-title').addClass('fade-out');setTimeout(function(){$('#slide-title').removeClass('fade-out').html(title);adjustWidthToTitle()},400)}else{$('.line-under-text img').attr('style','display: inline-block !important;');$('#slide-title').html(title);isFirstRun=!1;adjustWidthToTitle()}}})}
$(document).on('elementor/popup/show',function(){var numThumbnails=$('.product-gallery-thumbnails img').length;var maxThumbnailsToShow=Math.min(numThumbnails,10);var mainSlider=$('.product-gallery-slider').slick({slidesToShow:1,slidesToScroll:1,arrows:!1,fade:!0,accessibility:!0}).on('beforeChange',function(event,slick,currentSlide,nextSlide){$('.product-gallery-thumbnails .slick-slide').removeClass('slick-current');$('.product-gallery-thumbnails .slick-slide[data-slick-index="'+nextSlide+'"]').addClass('slick-current')});$('.product-gallery-thumbnails').slick({slidesToShow:maxThumbnailsToShow,slidesToScroll:1,focusOnSelect:!0,variableWidth:!0,arrows:!1});$('#prevArrow').on('click',function(){mainSlider.slick('slickPrev')});$('#nextArrow').on('click',function(){mainSlider.slick('slickNext')});$('.product-gallery-thumbnails').on('click','.slick-slide',function(){var index=$(this).data('slick-index');mainSlider.slick('slickGoTo',index)});$(document).on('keydown',function(e){if(e.key==='ArrowLeft'){mainSlider.slick('slickPrev')}else if(e.key==='ArrowRight'){mainSlider.slick('slickNext')}})})});/**
 * @license
 * Copyright 2010-2021 Three.js Authors
 * SPDX-License-Identifier: MIT
 */
!function(t,e){"object"==typeof exports&amp;&amp;"undefined"!=typeof module?e(exports):"function"==typeof define&amp;&amp;define.amd?define(["exports"],e):e((t="undefined"!=typeof globalThis?globalThis:t||self).THREE={})}(this,(function(t){"use strict";const e="128",n=100,i=300,r=301,s=302,a=303,o=304,l=306,c=307,h=1e3,u=1001,d=1002,p=1003,m=1004,f=1005,g=1006,v=1007,y=1008,x=1009,_=1012,w=1014,b=1015,M=1016,S=1020,T=1022,E=1023,A=1026,L=1027,R=33776,C=33777,P=33778,D=33779,I=35840,N=35841,B=35842,z=35843,F=37492,O=37496,H=2300,G=2301,U=2302,k=2400,V=2401,W=2402,j=2500,q=2501,X=3e3,Y=3001,Z=3007,J=3002,Q=3004,K=3005,$=3006,tt=7680,et=35044,nt=35048,it="300 es";class rt{addEventListener(t,e){void 0===this._listeners&amp;&amp;(this._listeners={});const n=this._listeners;void 0===n[t]&amp;&amp;(n[t]=[]),-1===n[t].indexOf(e)&amp;&amp;n[t].push(e)}hasEventListener(t,e){if(void 0===this._listeners)return!1;const n=this._listeners;return void 0!==n[t]&amp;&amp;-1!==n[t].indexOf(e)}removeEventListener(t,e){if(void 0===this._listeners)return;const n=this._listeners[t];if(void 0!==n){const t=n.indexOf(e);-1!==t&amp;&amp;n.splice(t,1)}}dispatchEvent(t){if(void 0===this._listeners)return;const e=this._listeners[t.type];if(void 0!==e){t.target=this;const n=e.slice(0);for(let e=0,i=n.length;e&lt;i;e++)n[e].call(this,t);t.target=null}}}const st=[];for(let t=0;t&lt;256;t++)st[t]=(t&lt;16?"0":"")+t.toString(16);let at=1234567;const ot=Math.PI/180,lt=180/Math.PI;function ct(){const t=4294967295*Math.random()|0,e=4294967295*Math.random()|0,n=4294967295*Math.random()|0,i=4294967295*Math.random()|0;return(st[255&amp;t]+st[t&gt;&gt;8&amp;255]+st[t&gt;&gt;16&amp;255]+st[t&gt;&gt;24&amp;255]+"-"+st[255&amp;e]+st[e&gt;&gt;8&amp;255]+"-"+st[e&gt;&gt;16&amp;15|64]+st[e&gt;&gt;24&amp;255]+"-"+st[63&amp;n|128]+st[n&gt;&gt;8&amp;255]+"-"+st[n&gt;&gt;16&amp;255]+st[n&gt;&gt;24&amp;255]+st[255&amp;i]+st[i&gt;&gt;8&amp;255]+st[i&gt;&gt;16&amp;255]+st[i&gt;&gt;24&amp;255]).toUpperCase()}function ht(t,e,n){return Math.max(e,Math.min(n,t))}function ut(t,e){return(t%e+e)%e}function dt(t,e,n){return(1-n)*t+n*e}function pt(t){return 0==(t&amp;t-1)&amp;&amp;0!==t}function mt(t){return Math.pow(2,Math.ceil(Math.log(t)/Math.LN2))}function ft(t){return Math.pow(2,Math.floor(Math.log(t)/Math.LN2))}var gt=Object.freeze({__proto__:null,DEG2RAD:ot,RAD2DEG:lt,generateUUID:ct,clamp:ht,euclideanModulo:ut,mapLinear:function(t,e,n,i,r){return i+(t-e)*(r-i)/(n-e)},inverseLerp:function(t,e,n){return t!==e?(n-t)/(e-t):0},lerp:dt,damp:function(t,e,n,i){return dt(t,e,1-Math.exp(-n*i))},pingpong:function(t,e=1){return e-Math.abs(ut(t,2*e)-e)},smoothstep:function(t,e,n){return t&lt;=e?0:t&gt;=n?1:(t=(t-e)/(n-e))*t*(3-2*t)},smootherstep:function(t,e,n){return t&lt;=e?0:t&gt;=n?1:(t=(t-e)/(n-e))*t*t*(t*(6*t-15)+10)},randInt:function(t,e){return t+Math.floor(Math.random()*(e-t+1))},randFloat:function(t,e){return t+Math.random()*(e-t)},randFloatSpread:function(t){return t*(.5-Math.random())},seededRandom:function(t){return void 0!==t&amp;&amp;(at=t%2147483647),at=16807*at%2147483647,(at-1)/2147483646},degToRad:function(t){return t*ot},radToDeg:function(t){return t*lt},isPowerOfTwo:pt,ceilPowerOfTwo:mt,floorPowerOfTwo:ft,setQuaternionFromProperEuler:function(t,e,n,i,r){const s=Math.cos,a=Math.sin,o=s(n/2),l=a(n/2),c=s((e+i)/2),h=a((e+i)/2),u=s((e-i)/2),d=a((e-i)/2),p=s((i-e)/2),m=a((i-e)/2);switch(r){case"XYX":t.set(o*h,l*u,l*d,o*c);break;case"YZY":t.set(l*d,o*h,l*u,o*c);break;case"ZXZ":t.set(l*u,l*d,o*h,o*c);break;case"XZX":t.set(o*h,l*m,l*p,o*c);break;case"YXY":t.set(l*p,o*h,l*m,o*c);break;case"ZYZ":t.set(l*m,l*p,o*h,o*c);break;default:console.warn("THREE.MathUtils: .setQuaternionFromProperEuler() encountered an unknown order: "+r)}}});class vt{constructor(t=0,e=0){this.x=t,this.y=e}get width(){return this.x}set width(t){this.x=t}get height(){return this.y}set height(t){this.y=t}set(t,e){return this.x=t,this.y=e,this}setScalar(t){return this.x=t,this.y=t,this}setX(t){return this.x=t,this}setY(t){return this.y=t,this}setComponent(t,e){switch(t){case 0:this.x=e;break;case 1:this.y=e;break;default:throw new Error("index is out of range: "+t)}return this}getComponent(t){switch(t){case 0:return this.x;case 1:return this.y;default:throw new Error("index is out of range: "+t)}}clone(){return new this.constructor(this.x,this.y)}copy(t){return this.x=t.x,this.y=t.y,this}add(t,e){return void 0!==e?(console.warn("THREE.Vector2: .add() now only accepts one argument. Use .addVectors( a, b ) instead."),this.addVectors(t,e)):(this.x+=t.x,this.y+=t.y,this)}addScalar(t){return this.x+=t,this.y+=t,this}addVectors(t,e){return this.x=t.x+e.x,this.y=t.y+e.y,this}addScaledVector(t,e){return this.x+=t.x*e,this.y+=t.y*e,this}sub(t,e){return void 0!==e?(console.warn("THREE.Vector2: .sub() now only accepts one argument. Use .subVectors( a, b ) instead."),this.subVectors(t,e)):(this.x-=t.x,this.y-=t.y,this)}subScalar(t){return this.x-=t,this.y-=t,this}subVectors(t,e){return this.x=t.x-e.x,this.y=t.y-e.y,this}multiply(t){return this.x*=t.x,this.y*=t.y,this}multiplyScalar(t){return this.x*=t,this.y*=t,this}divide(t){return this.x/=t.x,this.y/=t.y,this}divideScalar(t){return this.multiplyScalar(1/t)}applyMatrix3(t){const e=this.x,n=this.y,i=t.elements;return this.x=i[0]*e+i[3]*n+i[6],this.y=i[1]*e+i[4]*n+i[7],this}min(t){return this.x=Math.min(this.x,t.x),this.y=Math.min(this.y,t.y),this}max(t){return this.x=Math.max(this.x,t.x),this.y=Math.max(this.y,t.y),this}clamp(t,e){return this.x=Math.max(t.x,Math.min(e.x,this.x)),this.y=Math.max(t.y,Math.min(e.y,this.y)),this}clampScalar(t,e){return this.x=Math.max(t,Math.min(e,this.x)),this.y=Math.max(t,Math.min(e,this.y)),this}clampLength(t,e){const n=this.length();return this.divideScalar(n||1).multiplyScalar(Math.max(t,Math.min(e,n)))}floor(){return this.x=Math.floor(this.x),this.y=Math.floor(this.y),this}ceil(){return this.x=Math.ceil(this.x),this.y=Math.ceil(this.y),this}round(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this}roundToZero(){return this.x=this.x&lt;0?Math.ceil(this.x):Math.floor(this.x),this.y=this.y&lt;0?Math.ceil(this.y):Math.floor(this.y),this}negate(){return this.x=-this.x,this.y=-this.y,this}dot(t){return this.x*t.x+this.y*t.y}cross(t){return this.x*t.y-this.y*t.x}lengthSq(){return this.x*this.x+this.y*this.y}length(){return Math.sqrt(this.x*this.x+this.y*this.y)}manhattanLength(){return Math.abs(this.x)+Math.abs(this.y)}normalize(){return this.divideScalar(this.length()||1)}angle(){return Math.atan2(-this.y,-this.x)+Math.PI}distanceTo(t){return Math.sqrt(this.distanceToSquared(t))}distanceToSquared(t){const e=this.x-t.x,n=this.y-t.y;return e*e+n*n}manhattanDistanceTo(t){return Math.abs(this.x-t.x)+Math.abs(this.y-t.y)}setLength(t){return this.normalize().multiplyScalar(t)}lerp(t,e){return this.x+=(t.x-this.x)*e,this.y+=(t.y-this.y)*e,this}lerpVectors(t,e,n){return this.x=t.x+(e.x-t.x)*n,this.y=t.y+(e.y-t.y)*n,this}equals(t){return t.x===this.x&amp;&amp;t.y===this.y}fromArray(t,e=0){return this.x=t[e],this.y=t[e+1],this}toArray(t=[],e=0){return t[e]=this.x,t[e+1]=this.y,t}fromBufferAttribute(t,e,n){return void 0!==n&amp;&amp;console.warn("THREE.Vector2: offset has been removed from .fromBufferAttribute()."),this.x=t.getX(e),this.y=t.getY(e),this}rotateAround(t,e){const n=Math.cos(e),i=Math.sin(e),r=this.x-t.x,s=this.y-t.y;return this.x=r*n-s*i+t.x,this.y=r*i+s*n+t.y,this}random(){return this.x=Math.random(),this.y=Math.random(),this}}vt.prototype.isVector2=!0;class yt{constructor(){this.elements=[1,0,0,0,1,0,0,0,1],arguments.length&gt;0&amp;&amp;console.error("THREE.Matrix3: the constructor no longer reads arguments. use .set() instead.")}set(t,e,n,i,r,s,a,o,l){const c=this.elements;return c[0]=t,c[1]=i,c[2]=a,c[3]=e,c[4]=r,c[5]=o,c[6]=n,c[7]=s,c[8]=l,this}identity(){return this.set(1,0,0,0,1,0,0,0,1),this}copy(t){const e=this.elements,n=t.elements;return e[0]=n[0],e[1]=n[1],e[2]=n[2],e[3]=n[3],e[4]=n[4],e[5]=n[5],e[6]=n[6],e[7]=n[7],e[8]=n[8],this}extractBasis(t,e,n){return t.setFromMatrix3Column(this,0),e.setFromMatrix3Column(this,1),n.setFromMatrix3Column(this,2),this}setFromMatrix4(t){const e=t.elements;return this.set(e[0],e[4],e[8],e[1],e[5],e[9],e[2],e[6],e[10]),this}multiply(t){return this.multiplyMatrices(this,t)}premultiply(t){return this.multiplyMatrices(t,this)}multiplyMatrices(t,e){const n=t.elements,i=e.elements,r=this.elements,s=n[0],a=n[3],o=n[6],l=n[1],c=n[4],h=n[7],u=n[2],d=n[5],p=n[8],m=i[0],f=i[3],g=i[6],v=i[1],y=i[4],x=i[7],_=i[2],w=i[5],b=i[8];return r[0]=s*m+a*v+o*_,r[3]=s*f+a*y+o*w,r[6]=s*g+a*x+o*b,r[1]=l*m+c*v+h*_,r[4]=l*f+c*y+h*w,r[7]=l*g+c*x+h*b,r[2]=u*m+d*v+p*_,r[5]=u*f+d*y+p*w,r[8]=u*g+d*x+p*b,this}multiplyScalar(t){const e=this.elements;return e[0]*=t,e[3]*=t,e[6]*=t,e[1]*=t,e[4]*=t,e[7]*=t,e[2]*=t,e[5]*=t,e[8]*=t,this}determinant(){const t=this.elements,e=t[0],n=t[1],i=t[2],r=t[3],s=t[4],a=t[5],o=t[6],l=t[7],c=t[8];return e*s*c-e*a*l-n*r*c+n*a*o+i*r*l-i*s*o}invert(){const t=this.elements,e=t[0],n=t[1],i=t[2],r=t[3],s=t[4],a=t[5],o=t[6],l=t[7],c=t[8],h=c*s-a*l,u=a*o-c*r,d=l*r-s*o,p=e*h+n*u+i*d;if(0===p)return this.set(0,0,0,0,0,0,0,0,0);const m=1/p;return t[0]=h*m,t[1]=(i*l-c*n)*m,t[2]=(a*n-i*s)*m,t[3]=u*m,t[4]=(c*e-i*o)*m,t[5]=(i*r-a*e)*m,t[6]=d*m,t[7]=(n*o-l*e)*m,t[8]=(s*e-n*r)*m,this}transpose(){let t;const e=this.elements;return t=e[1],e[1]=e[3],e[3]=t,t=e[2],e[2]=e[6],e[6]=t,t=e[5],e[5]=e[7],e[7]=t,this}getNormalMatrix(t){return this.setFromMatrix4(t).invert().transpose()}transposeIntoArray(t){const e=this.elements;return t[0]=e[0],t[1]=e[3],t[2]=e[6],t[3]=e[1],t[4]=e[4],t[5]=e[7],t[6]=e[2],t[7]=e[5],t[8]=e[8],this}setUvTransform(t,e,n,i,r,s,a){const o=Math.cos(r),l=Math.sin(r);return this.set(n*o,n*l,-n*(o*s+l*a)+s+t,-i*l,i*o,-i*(-l*s+o*a)+a+e,0,0,1),this}scale(t,e){const n=this.elements;return n[0]*=t,n[3]*=t,n[6]*=t,n[1]*=e,n[4]*=e,n[7]*=e,this}rotate(t){const e=Math.cos(t),n=Math.sin(t),i=this.elements,r=i[0],s=i[3],a=i[6],o=i[1],l=i[4],c=i[7];return i[0]=e*r+n*o,i[3]=e*s+n*l,i[6]=e*a+n*c,i[1]=-n*r+e*o,i[4]=-n*s+e*l,i[7]=-n*a+e*c,this}translate(t,e){const n=this.elements;return n[0]+=t*n[2],n[3]+=t*n[5],n[6]+=t*n[8],n[1]+=e*n[2],n[4]+=e*n[5],n[7]+=e*n[8],this}equals(t){const e=this.elements,n=t.elements;for(let t=0;t&lt;9;t++)if(e[t]!==n[t])return!1;return!0}fromArray(t,e=0){for(let n=0;n&lt;9;n++)this.elements[n]=t[n+e];return this}toArray(t=[],e=0){const n=this.elements;return t[e]=n[0],t[e+1]=n[1],t[e+2]=n[2],t[e+3]=n[3],t[e+4]=n[4],t[e+5]=n[5],t[e+6]=n[6],t[e+7]=n[7],t[e+8]=n[8],t}clone(){return(new this.constructor).fromArray(this.elements)}}let xt;yt.prototype.isMatrix3=!0;class _t{static getDataURL(t){if(/^data:/i.test(t.src))return t.src;if("undefined"==typeof HTMLCanvasElement)return t.src;let e;if(t instanceof HTMLCanvasElement)e=t;else{void 0===xt&amp;&amp;(xt=document.createElementNS("http://www.w3.org/1999/xhtml","canvas")),xt.width=t.width,xt.height=t.height;const n=xt.getContext("2d");t instanceof ImageData?n.putImageData(t,0,0):n.drawImage(t,0,0,t.width,t.height),e=xt}return e.width&gt;2048||e.height&gt;2048?(console.warn("THREE.ImageUtils.getDataURL: Image converted to jpg for performance reasons",t),e.toDataURL("image/jpeg",.6)):e.toDataURL("image/png")}}let wt=0;class bt extends rt{constructor(t=bt.DEFAULT_IMAGE,e=bt.DEFAULT_MAPPING,n=1001,i=1001,r=1006,s=1008,a=1023,o=1009,l=1,c=3e3){super(),Object.defineProperty(this,"id",{value:wt++}),this.uuid=ct(),this.name="",this.image=t,this.mipmaps=[],this.mapping=e,this.wrapS=n,this.wrapT=i,this.magFilter=r,this.minFilter=s,this.anisotropy=l,this.format=a,this.internalFormat=null,this.type=o,this.offset=new vt(0,0),this.repeat=new vt(1,1),this.center=new vt(0,0),this.rotation=0,this.matrixAutoUpdate=!0,this.matrix=new yt,this.generateMipmaps=!0,this.premultiplyAlpha=!1,this.flipY=!0,this.unpackAlignment=4,this.encoding=c,this.version=0,this.onUpdate=null}updateMatrix(){this.matrix.setUvTransform(this.offset.x,this.offset.y,this.repeat.x,this.repeat.y,this.rotation,this.center.x,this.center.y)}clone(){return(new this.constructor).copy(this)}copy(t){return this.name=t.name,this.image=t.image,this.mipmaps=t.mipmaps.slice(0),this.mapping=t.mapping,this.wrapS=t.wrapS,this.wrapT=t.wrapT,this.magFilter=t.magFilter,this.minFilter=t.minFilter,this.anisotropy=t.anisotropy,this.format=t.format,this.internalFormat=t.internalFormat,this.type=t.type,this.offset.copy(t.offset),this.repeat.copy(t.repeat),this.center.copy(t.center),this.rotation=t.rotation,this.matrixAutoUpdate=t.matrixAutoUpdate,this.matrix.copy(t.matrix),this.generateMipmaps=t.generateMipmaps,this.premultiplyAlpha=t.premultiplyAlpha,this.flipY=t.flipY,this.unpackAlignment=t.unpackAlignment,this.encoding=t.encoding,this}toJSON(t){const e=void 0===t||"string"==typeof t;if(!e&amp;&amp;void 0!==t.textures[this.uuid])return t.textures[this.uuid];const n={metadata:{version:4.5,type:"Texture",generator:"Texture.toJSON"},uuid:this.uuid,name:this.name,mapping:this.mapping,repeat:[this.repeat.x,this.repeat.y],offset:[this.offset.x,this.offset.y],center:[this.center.x,this.center.y],rotation:this.rotation,wrap:[this.wrapS,this.wrapT],format:this.format,type:this.type,encoding:this.encoding,minFilter:this.minFilter,magFilter:this.magFilter,anisotropy:this.anisotropy,flipY:this.flipY,premultiplyAlpha:this.premultiplyAlpha,unpackAlignment:this.unpackAlignment};if(void 0!==this.image){const i=this.image;if(void 0===i.uuid&amp;&amp;(i.uuid=ct()),!e&amp;&amp;void 0===t.images[i.uuid]){let e;if(Array.isArray(i)){e=[];for(let t=0,n=i.length;t&lt;n;t++)i[t].isDataTexture?e.push(Mt(i[t].image)):e.push(Mt(i[t]))}else e=Mt(i);t.images[i.uuid]={uuid:i.uuid,url:e}}n.image=i.uuid}return e||(t.textures[this.uuid]=n),n}dispose(){this.dispatchEvent({type:"dispose"})}transformUv(t){if(this.mapping!==i)return t;if(t.applyMatrix3(this.matrix),t.x&lt;0||t.x&gt;1)switch(this.wrapS){case h:t.x=t.x-Math.floor(t.x);break;case u:t.x=t.x&lt;0?0:1;break;case d:1===Math.abs(Math.floor(t.x)%2)?t.x=Math.ceil(t.x)-t.x:t.x=t.x-Math.floor(t.x)}if(t.y&lt;0||t.y&gt;1)switch(this.wrapT){case h:t.y=t.y-Math.floor(t.y);break;case u:t.y=t.y&lt;0?0:1;break;case d:1===Math.abs(Math.floor(t.y)%2)?t.y=Math.ceil(t.y)-t.y:t.y=t.y-Math.floor(t.y)}return this.flipY&amp;&amp;(t.y=1-t.y),t}set needsUpdate(t){!0===t&amp;&amp;this.version++}}function Mt(t){return"undefined"!=typeof HTMLImageElement&amp;&amp;t instanceof HTMLImageElement||"undefined"!=typeof HTMLCanvasElement&amp;&amp;t instanceof HTMLCanvasElement||"undefined"!=typeof ImageBitmap&amp;&amp;t instanceof ImageBitmap?_t.getDataURL(t):t.data?{data:Array.prototype.slice.call(t.data),width:t.width,height:t.height,type:t.data.constructor.name}:(console.warn("THREE.Texture: Unable to serialize Texture."),{})}bt.DEFAULT_IMAGE=void 0,bt.DEFAULT_MAPPING=i,bt.prototype.isTexture=!0;class St{constructor(t=0,e=0,n=0,i=1){this.x=t,this.y=e,this.z=n,this.w=i}get width(){return this.z}set width(t){this.z=t}get height(){return this.w}set height(t){this.w=t}set(t,e,n,i){return this.x=t,this.y=e,this.z=n,this.w=i,this}setScalar(t){return this.x=t,this.y=t,this.z=t,this.w=t,this}setX(t){return this.x=t,this}setY(t){return this.y=t,this}setZ(t){return this.z=t,this}setW(t){return this.w=t,this}setComponent(t,e){switch(t){case 0:this.x=e;break;case 1:this.y=e;break;case 2:this.z=e;break;case 3:this.w=e;break;default:throw new Error("index is out of range: "+t)}return this}getComponent(t){switch(t){case 0:return this.x;case 1:return this.y;case 2:return this.z;case 3:return this.w;default:throw new Error("index is out of range: "+t)}}clone(){return new this.constructor(this.x,this.y,this.z,this.w)}copy(t){return this.x=t.x,this.y=t.y,this.z=t.z,this.w=void 0!==t.w?t.w:1,this}add(t,e){return void 0!==e?(console.warn("THREE.Vector4: .add() now only accepts one argument. Use .addVectors( a, b ) instead."),this.addVectors(t,e)):(this.x+=t.x,this.y+=t.y,this.z+=t.z,this.w+=t.w,this)}addScalar(t){return this.x+=t,this.y+=t,this.z+=t,this.w+=t,this}addVectors(t,e){return this.x=t.x+e.x,this.y=t.y+e.y,this.z=t.z+e.z,this.w=t.w+e.w,this}addScaledVector(t,e){return this.x+=t.x*e,this.y+=t.y*e,this.z+=t.z*e,this.w+=t.w*e,this}sub(t,e){return void 0!==e?(console.warn("THREE.Vector4: .sub() now only accepts one argument. Use .subVectors( a, b ) instead."),this.subVectors(t,e)):(this.x-=t.x,this.y-=t.y,this.z-=t.z,this.w-=t.w,this)}subScalar(t){return this.x-=t,this.y-=t,this.z-=t,this.w-=t,this}subVectors(t,e){return this.x=t.x-e.x,this.y=t.y-e.y,this.z=t.z-e.z,this.w=t.w-e.w,this}multiply(t){return this.x*=t.x,this.y*=t.y,this.z*=t.z,this.w*=t.w,this}multiplyScalar(t){return this.x*=t,this.y*=t,this.z*=t,this.w*=t,this}applyMatrix4(t){const e=this.x,n=this.y,i=this.z,r=this.w,s=t.elements;return this.x=s[0]*e+s[4]*n+s[8]*i+s[12]*r,this.y=s[1]*e+s[5]*n+s[9]*i+s[13]*r,this.z=s[2]*e+s[6]*n+s[10]*i+s[14]*r,this.w=s[3]*e+s[7]*n+s[11]*i+s[15]*r,this}divideScalar(t){return this.multiplyScalar(1/t)}setAxisAngleFromQuaternion(t){this.w=2*Math.acos(t.w);const e=Math.sqrt(1-t.w*t.w);return e&lt;1e-4?(this.x=1,this.y=0,this.z=0):(this.x=t.x/e,this.y=t.y/e,this.z=t.z/e),this}setAxisAngleFromRotationMatrix(t){let e,n,i,r;const s=.01,a=.1,o=t.elements,l=o[0],c=o[4],h=o[8],u=o[1],d=o[5],p=o[9],m=o[2],f=o[6],g=o[10];if(Math.abs(c-u)&lt;s&amp;&amp;Math.abs(h-m)&lt;s&amp;&amp;Math.abs(p-f)&lt;s){if(Math.abs(c+u)&lt;a&amp;&amp;Math.abs(h+m)&lt;a&amp;&amp;Math.abs(p+f)&lt;a&amp;&amp;Math.abs(l+d+g-3)&lt;a)return this.set(1,0,0,0),this;e=Math.PI;const t=(l+1)/2,o=(d+1)/2,v=(g+1)/2,y=(c+u)/4,x=(h+m)/4,_=(p+f)/4;return t&gt;o&amp;&amp;t&gt;v?t&lt;s?(n=0,i=.707106781,r=.707106781):(n=Math.sqrt(t),i=y/n,r=x/n):o&gt;v?o&lt;s?(n=.707106781,i=0,r=.707106781):(i=Math.sqrt(o),n=y/i,r=_/i):v&lt;s?(n=.707106781,i=.707106781,r=0):(r=Math.sqrt(v),n=x/r,i=_/r),this.set(n,i,r,e),this}let v=Math.sqrt((f-p)*(f-p)+(h-m)*(h-m)+(u-c)*(u-c));return Math.abs(v)&lt;.001&amp;&amp;(v=1),this.x=(f-p)/v,this.y=(h-m)/v,this.z=(u-c)/v,this.w=Math.acos((l+d+g-1)/2),this}min(t){return this.x=Math.min(this.x,t.x),this.y=Math.min(this.y,t.y),this.z=Math.min(this.z,t.z),this.w=Math.min(this.w,t.w),this}max(t){return this.x=Math.max(this.x,t.x),this.y=Math.max(this.y,t.y),this.z=Math.max(this.z,t.z),this.w=Math.max(this.w,t.w),this}clamp(t,e){return this.x=Math.max(t.x,Math.min(e.x,this.x)),this.y=Math.max(t.y,Math.min(e.y,this.y)),this.z=Math.max(t.z,Math.min(e.z,this.z)),this.w=Math.max(t.w,Math.min(e.w,this.w)),this}clampScalar(t,e){return this.x=Math.max(t,Math.min(e,this.x)),this.y=Math.max(t,Math.min(e,this.y)),this.z=Math.max(t,Math.min(e,this.z)),this.w=Math.max(t,Math.min(e,this.w)),this}clampLength(t,e){const n=this.length();return this.divideScalar(n||1).multiplyScalar(Math.max(t,Math.min(e,n)))}floor(){return this.x=Math.floor(this.x),this.y=Math.floor(this.y),this.z=Math.floor(this.z),this.w=Math.floor(this.w),this}ceil(){return this.x=Math.ceil(this.x),this.y=Math.ceil(this.y),this.z=Math.ceil(this.z),this.w=Math.ceil(this.w),this}round(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this.z=Math.round(this.z),this.w=Math.round(this.w),this}roundToZero(){return this.x=this.x&lt;0?Math.ceil(this.x):Math.floor(this.x),this.y=this.y&lt;0?Math.ceil(this.y):Math.floor(this.y),this.z=this.z&lt;0?Math.ceil(this.z):Math.floor(this.z),this.w=this.w&lt;0?Math.ceil(this.w):Math.floor(this.w),this}negate(){return this.x=-this.x,this.y=-this.y,this.z=-this.z,this.w=-this.w,this}dot(t){return this.x*t.x+this.y*t.y+this.z*t.z+this.w*t.w}lengthSq(){return this.x*this.x+this.y*this.y+this.z*this.z+this.w*this.w}length(){return Math.sqrt(this.x*this.x+this.y*this.y+this.z*this.z+this.w*this.w)}manhattanLength(){return Math.abs(this.x)+Math.abs(this.y)+Math.abs(this.z)+Math.abs(this.w)}normalize(){return this.divideScalar(this.length()||1)}setLength(t){return this.normalize().multiplyScalar(t)}lerp(t,e){return this.x+=(t.x-this.x)*e,this.y+=(t.y-this.y)*e,this.z+=(t.z-this.z)*e,this.w+=(t.w-this.w)*e,this}lerpVectors(t,e,n){return this.x=t.x+(e.x-t.x)*n,this.y=t.y+(e.y-t.y)*n,this.z=t.z+(e.z-t.z)*n,this.w=t.w+(e.w-t.w)*n,this}equals(t){return t.x===this.x&amp;&amp;t.y===this.y&amp;&amp;t.z===this.z&amp;&amp;t.w===this.w}fromArray(t,e=0){return this.x=t[e],this.y=t[e+1],this.z=t[e+2],this.w=t[e+3],this}toArray(t=[],e=0){return t[e]=this.x,t[e+1]=this.y,t[e+2]=this.z,t[e+3]=this.w,t}fromBufferAttribute(t,e,n){return void 0!==n&amp;&amp;console.warn("THREE.Vector4: offset has been removed from .fromBufferAttribute()."),this.x=t.getX(e),this.y=t.getY(e),this.z=t.getZ(e),this.w=t.getW(e),this}random(){return this.x=Math.random(),this.y=Math.random(),this.z=Math.random(),this.w=Math.random(),this}}St.prototype.isVector4=!0;class Tt extends rt{constructor(t,e,n){super(),this.width=t,this.height=e,this.depth=1,this.scissor=new St(0,0,t,e),this.scissorTest=!1,this.viewport=new St(0,0,t,e),n=n||{},this.texture=new bt(void 0,n.mapping,n.wrapS,n.wrapT,n.magFilter,n.minFilter,n.format,n.type,n.anisotropy,n.encoding),this.texture.image={},this.texture.image.width=t,this.texture.image.height=e,this.texture.image.depth=1,this.texture.generateMipmaps=void 0!==n.generateMipmaps&amp;&amp;n.generateMipmaps,this.texture.minFilter=void 0!==n.minFilter?n.minFilter:g,this.depthBuffer=void 0===n.depthBuffer||n.depthBuffer,this.stencilBuffer=void 0!==n.stencilBuffer&amp;&amp;n.stencilBuffer,this.depthTexture=void 0!==n.depthTexture?n.depthTexture:null}setTexture(t){t.image={width:this.width,height:this.height,depth:this.depth},this.texture=t}setSize(t,e,n=1){this.width===t&amp;&amp;this.height===e&amp;&amp;this.depth===n||(this.width=t,this.height=e,this.depth=n,this.texture.image.width=t,this.texture.image.height=e,this.texture.image.depth=n,this.dispose()),this.viewport.set(0,0,t,e),this.scissor.set(0,0,t,e)}clone(){return(new this.constructor).copy(this)}copy(t){return this.width=t.width,this.height=t.height,this.depth=t.depth,this.viewport.copy(t.viewport),this.texture=t.texture.clone(),this.depthBuffer=t.depthBuffer,this.stencilBuffer=t.stencilBuffer,this.depthTexture=t.depthTexture,this}dispose(){this.dispatchEvent({type:"dispose"})}}Tt.prototype.isWebGLRenderTarget=!0;class Et extends Tt{constructor(t,e,n){super(t,e,n),this.samples=4}copy(t){return super.copy.call(this,t),this.samples=t.samples,this}}Et.prototype.isWebGLMultisampleRenderTarget=!0;class At{constructor(t=0,e=0,n=0,i=1){this._x=t,this._y=e,this._z=n,this._w=i}static slerp(t,e,n,i){return console.warn("THREE.Quaternion: Static .slerp() has been deprecated. Use qm.slerpQuaternions( qa, qb, t ) instead."),n.slerpQuaternions(t,e,i)}static slerpFlat(t,e,n,i,r,s,a){let o=n[i+0],l=n[i+1],c=n[i+2],h=n[i+3];const u=r[s+0],d=r[s+1],p=r[s+2],m=r[s+3];if(0===a)return t[e+0]=o,t[e+1]=l,t[e+2]=c,void(t[e+3]=h);if(1===a)return t[e+0]=u,t[e+1]=d,t[e+2]=p,void(t[e+3]=m);if(h!==m||o!==u||l!==d||c!==p){let t=1-a;const e=o*u+l*d+c*p+h*m,n=e&gt;=0?1:-1,i=1-e*e;if(i&gt;Number.EPSILON){const r=Math.sqrt(i),s=Math.atan2(r,e*n);t=Math.sin(t*s)/r,a=Math.sin(a*s)/r}const r=a*n;if(o=o*t+u*r,l=l*t+d*r,c=c*t+p*r,h=h*t+m*r,t===1-a){const t=1/Math.sqrt(o*o+l*l+c*c+h*h);o*=t,l*=t,c*=t,h*=t}}t[e]=o,t[e+1]=l,t[e+2]=c,t[e+3]=h}static multiplyQuaternionsFlat(t,e,n,i,r,s){const a=n[i],o=n[i+1],l=n[i+2],c=n[i+3],h=r[s],u=r[s+1],d=r[s+2],p=r[s+3];return t[e]=a*p+c*h+o*d-l*u,t[e+1]=o*p+c*u+l*h-a*d,t[e+2]=l*p+c*d+a*u-o*h,t[e+3]=c*p-a*h-o*u-l*d,t}get x(){return this._x}set x(t){this._x=t,this._onChangeCallback()}get y(){return this._y}set y(t){this._y=t,this._onChangeCallback()}get z(){return this._z}set z(t){this._z=t,this._onChangeCallback()}get w(){return this._w}set w(t){this._w=t,this._onChangeCallback()}set(t,e,n,i){return this._x=t,this._y=e,this._z=n,this._w=i,this._onChangeCallback(),this}clone(){return new this.constructor(this._x,this._y,this._z,this._w)}copy(t){return this._x=t.x,this._y=t.y,this._z=t.z,this._w=t.w,this._onChangeCallback(),this}setFromEuler(t,e){if(!t||!t.isEuler)throw new Error("THREE.Quaternion: .setFromEuler() now expects an Euler rotation rather than a Vector3 and order.");const n=t._x,i=t._y,r=t._z,s=t._order,a=Math.cos,o=Math.sin,l=a(n/2),c=a(i/2),h=a(r/2),u=o(n/2),d=o(i/2),p=o(r/2);switch(s){case"XYZ":this._x=u*c*h+l*d*p,this._y=l*d*h-u*c*p,this._z=l*c*p+u*d*h,this._w=l*c*h-u*d*p;break;case"YXZ":this._x=u*c*h+l*d*p,this._y=l*d*h-u*c*p,this._z=l*c*p-u*d*h,this._w=l*c*h+u*d*p;break;case"ZXY":this._x=u*c*h-l*d*p,this._y=l*d*h+u*c*p,this._z=l*c*p+u*d*h,this._w=l*c*h-u*d*p;break;case"ZYX":this._x=u*c*h-l*d*p,this._y=l*d*h+u*c*p,this._z=l*c*p-u*d*h,this._w=l*c*h+u*d*p;break;case"YZX":this._x=u*c*h+l*d*p,this._y=l*d*h+u*c*p,this._z=l*c*p-u*d*h,this._w=l*c*h-u*d*p;break;case"XZY":this._x=u*c*h-l*d*p,this._y=l*d*h-u*c*p,this._z=l*c*p+u*d*h,this._w=l*c*h+u*d*p;break;default:console.warn("THREE.Quaternion: .setFromEuler() encountered an unknown order: "+s)}return!1!==e&amp;&amp;this._onChangeCallback(),this}setFromAxisAngle(t,e){const n=e/2,i=Math.sin(n);return this._x=t.x*i,this._y=t.y*i,this._z=t.z*i,this._w=Math.cos(n),this._onChangeCallback(),this}setFromRotationMatrix(t){const e=t.elements,n=e[0],i=e[4],r=e[8],s=e[1],a=e[5],o=e[9],l=e[2],c=e[6],h=e[10],u=n+a+h;if(u&gt;0){const t=.5/Math.sqrt(u+1);this._w=.25/t,this._x=(c-o)*t,this._y=(r-l)*t,this._z=(s-i)*t}else if(n&gt;a&amp;&amp;n&gt;h){const t=2*Math.sqrt(1+n-a-h);this._w=(c-o)/t,this._x=.25*t,this._y=(i+s)/t,this._z=(r+l)/t}else if(a&gt;h){const t=2*Math.sqrt(1+a-n-h);this._w=(r-l)/t,this._x=(i+s)/t,this._y=.25*t,this._z=(o+c)/t}else{const t=2*Math.sqrt(1+h-n-a);this._w=(s-i)/t,this._x=(r+l)/t,this._y=(o+c)/t,this._z=.25*t}return this._onChangeCallback(),this}setFromUnitVectors(t,e){let n=t.dot(e)+1;return n&lt;Number.EPSILON?(n=0,Math.abs(t.x)&gt;Math.abs(t.z)?(this._x=-t.y,this._y=t.x,this._z=0,this._w=n):(this._x=0,this._y=-t.z,this._z=t.y,this._w=n)):(this._x=t.y*e.z-t.z*e.y,this._y=t.z*e.x-t.x*e.z,this._z=t.x*e.y-t.y*e.x,this._w=n),this.normalize()}angleTo(t){return 2*Math.acos(Math.abs(ht(this.dot(t),-1,1)))}rotateTowards(t,e){const n=this.angleTo(t);if(0===n)return this;const i=Math.min(1,e/n);return this.slerp(t,i),this}identity(){return this.set(0,0,0,1)}invert(){return this.conjugate()}conjugate(){return this._x*=-1,this._y*=-1,this._z*=-1,this._onChangeCallback(),this}dot(t){return this._x*t._x+this._y*t._y+this._z*t._z+this._w*t._w}lengthSq(){return this._x*this._x+this._y*this._y+this._z*this._z+this._w*this._w}length(){return Math.sqrt(this._x*this._x+this._y*this._y+this._z*this._z+this._w*this._w)}normalize(){let t=this.length();return 0===t?(this._x=0,this._y=0,this._z=0,this._w=1):(t=1/t,this._x=this._x*t,this._y=this._y*t,this._z=this._z*t,this._w=this._w*t),this._onChangeCallback(),this}multiply(t,e){return void 0!==e?(console.warn("THREE.Quaternion: .multiply() now only accepts one argument. Use .multiplyQuaternions( a, b ) instead."),this.multiplyQuaternions(t,e)):this.multiplyQuaternions(this,t)}premultiply(t){return this.multiplyQuaternions(t,this)}multiplyQuaternions(t,e){const n=t._x,i=t._y,r=t._z,s=t._w,a=e._x,o=e._y,l=e._z,c=e._w;return this._x=n*c+s*a+i*l-r*o,this._y=i*c+s*o+r*a-n*l,this._z=r*c+s*l+n*o-i*a,this._w=s*c-n*a-i*o-r*l,this._onChangeCallback(),this}slerp(t,e){if(0===e)return this;if(1===e)return this.copy(t);const n=this._x,i=this._y,r=this._z,s=this._w;let a=s*t._w+n*t._x+i*t._y+r*t._z;if(a&lt;0?(this._w=-t._w,this._x=-t._x,this._y=-t._y,this._z=-t._z,a=-a):this.copy(t),a&gt;=1)return this._w=s,this._x=n,this._y=i,this._z=r,this;const o=1-a*a;if(o&lt;=Number.EPSILON){const t=1-e;return this._w=t*s+e*this._w,this._x=t*n+e*this._x,this._y=t*i+e*this._y,this._z=t*r+e*this._z,this.normalize(),this._onChangeCallback(),this}const l=Math.sqrt(o),c=Math.atan2(l,a),h=Math.sin((1-e)*c)/l,u=Math.sin(e*c)/l;return this._w=s*h+this._w*u,this._x=n*h+this._x*u,this._y=i*h+this._y*u,this._z=r*h+this._z*u,this._onChangeCallback(),this}slerpQuaternions(t,e,n){this.copy(t).slerp(e,n)}equals(t){return t._x===this._x&amp;&amp;t._y===this._y&amp;&amp;t._z===this._z&amp;&amp;t._w===this._w}fromArray(t,e=0){return this._x=t[e],this._y=t[e+1],this._z=t[e+2],this._w=t[e+3],this._onChangeCallback(),this}toArray(t=[],e=0){return t[e]=this._x,t[e+1]=this._y,t[e+2]=this._z,t[e+3]=this._w,t}fromBufferAttribute(t,e){return this._x=t.getX(e),this._y=t.getY(e),this._z=t.getZ(e),this._w=t.getW(e),this}_onChange(t){return this._onChangeCallback=t,this}_onChangeCallback(){}}At.prototype.isQuaternion=!0;class Lt{constructor(t=0,e=0,n=0){this.x=t,this.y=e,this.z=n}set(t,e,n){return void 0===n&amp;&amp;(n=this.z),this.x=t,this.y=e,this.z=n,this}setScalar(t){return this.x=t,this.y=t,this.z=t,this}setX(t){return this.x=t,this}setY(t){return this.y=t,this}setZ(t){return this.z=t,this}setComponent(t,e){switch(t){case 0:this.x=e;break;case 1:this.y=e;break;case 2:this.z=e;break;default:throw new Error("index is out of range: "+t)}return this}getComponent(t){switch(t){case 0:return this.x;case 1:return this.y;case 2:return this.z;default:throw new Error("index is out of range: "+t)}}clone(){return new this.constructor(this.x,this.y,this.z)}copy(t){return this.x=t.x,this.y=t.y,this.z=t.z,this}add(t,e){return void 0!==e?(console.warn("THREE.Vector3: .add() now only accepts one argument. Use .addVectors( a, b ) instead."),this.addVectors(t,e)):(this.x+=t.x,this.y+=t.y,this.z+=t.z,this)}addScalar(t){return this.x+=t,this.y+=t,this.z+=t,this}addVectors(t,e){return this.x=t.x+e.x,this.y=t.y+e.y,this.z=t.z+e.z,this}addScaledVector(t,e){return this.x+=t.x*e,this.y+=t.y*e,this.z+=t.z*e,this}sub(t,e){return void 0!==e?(console.warn("THREE.Vector3: .sub() now only accepts one argument. Use .subVectors( a, b ) instead."),this.subVectors(t,e)):(this.x-=t.x,this.y-=t.y,this.z-=t.z,this)}subScalar(t){return this.x-=t,this.y-=t,this.z-=t,this}subVectors(t,e){return this.x=t.x-e.x,this.y=t.y-e.y,this.z=t.z-e.z,this}multiply(t,e){return void 0!==e?(console.warn("THREE.Vector3: .multiply() now only accepts one argument. Use .multiplyVectors( a, b ) instead."),this.multiplyVectors(t,e)):(this.x*=t.x,this.y*=t.y,this.z*=t.z,this)}multiplyScalar(t){return this.x*=t,this.y*=t,this.z*=t,this}multiplyVectors(t,e){return this.x=t.x*e.x,this.y=t.y*e.y,this.z=t.z*e.z,this}applyEuler(t){return t&amp;&amp;t.isEuler||console.error("THREE.Vector3: .applyEuler() now expects an Euler rotation rather than a Vector3 and order."),this.applyQuaternion(Ct.setFromEuler(t))}applyAxisAngle(t,e){return this.applyQuaternion(Ct.setFromAxisAngle(t,e))}applyMatrix3(t){const e=this.x,n=this.y,i=this.z,r=t.elements;return this.x=r[0]*e+r[3]*n+r[6]*i,this.y=r[1]*e+r[4]*n+r[7]*i,this.z=r[2]*e+r[5]*n+r[8]*i,this}applyNormalMatrix(t){return this.applyMatrix3(t).normalize()}applyMatrix4(t){const e=this.x,n=this.y,i=this.z,r=t.elements,s=1/(r[3]*e+r[7]*n+r[11]*i+r[15]);return this.x=(r[0]*e+r[4]*n+r[8]*i+r[12])*s,this.y=(r[1]*e+r[5]*n+r[9]*i+r[13])*s,this.z=(r[2]*e+r[6]*n+r[10]*i+r[14])*s,this}applyQuaternion(t){const e=this.x,n=this.y,i=this.z,r=t.x,s=t.y,a=t.z,o=t.w,l=o*e+s*i-a*n,c=o*n+a*e-r*i,h=o*i+r*n-s*e,u=-r*e-s*n-a*i;return this.x=l*o+u*-r+c*-a-h*-s,this.y=c*o+u*-s+h*-r-l*-a,this.z=h*o+u*-a+l*-s-c*-r,this}project(t){return this.applyMatrix4(t.matrixWorldInverse).applyMatrix4(t.projectionMatrix)}unproject(t){return this.applyMatrix4(t.projectionMatrixInverse).applyMatrix4(t.matrixWorld)}transformDirection(t){const e=this.x,n=this.y,i=this.z,r=t.elements;return this.x=r[0]*e+r[4]*n+r[8]*i,this.y=r[1]*e+r[5]*n+r[9]*i,this.z=r[2]*e+r[6]*n+r[10]*i,this.normalize()}divide(t){return this.x/=t.x,this.y/=t.y,this.z/=t.z,this}divideScalar(t){return this.multiplyScalar(1/t)}min(t){return this.x=Math.min(this.x,t.x),this.y=Math.min(this.y,t.y),this.z=Math.min(this.z,t.z),this}max(t){return this.x=Math.max(this.x,t.x),this.y=Math.max(this.y,t.y),this.z=Math.max(this.z,t.z),this}clamp(t,e){return this.x=Math.max(t.x,Math.min(e.x,this.x)),this.y=Math.max(t.y,Math.min(e.y,this.y)),this.z=Math.max(t.z,Math.min(e.z,this.z)),this}clampScalar(t,e){return this.x=Math.max(t,Math.min(e,this.x)),this.y=Math.max(t,Math.min(e,this.y)),this.z=Math.max(t,Math.min(e,this.z)),this}clampLength(t,e){const n=this.length();return this.divideScalar(n||1).multiplyScalar(Math.max(t,Math.min(e,n)))}floor(){return this.x=Math.floor(this.x),this.y=Math.floor(this.y),this.z=Math.floor(this.z),this}ceil(){return this.x=Math.ceil(this.x),this.y=Math.ceil(this.y),this.z=Math.ceil(this.z),this}round(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this.z=Math.round(this.z),this}roundToZero(){return this.x=this.x&lt;0?Math.ceil(this.x):Math.floor(this.x),this.y=this.y&lt;0?Math.ceil(this.y):Math.floor(this.y),this.z=this.z&lt;0?Math.ceil(this.z):Math.floor(this.z),this}negate(){return this.x=-this.x,this.y=-this.y,this.z=-this.z,this}dot(t){return this.x*t.x+this.y*t.y+this.z*t.z}lengthSq(){return this.x*this.x+this.y*this.y+this.z*this.z}length(){return Math.sqrt(this.x*this.x+this.y*this.y+this.z*this.z)}manhattanLength(){return Math.abs(this.x)+Math.abs(this.y)+Math.abs(this.z)}normalize(){return this.divideScalar(this.length()||1)}setLength(t){return this.normalize().multiplyScalar(t)}lerp(t,e){return this.x+=(t.x-this.x)*e,this.y+=(t.y-this.y)*e,this.z+=(t.z-this.z)*e,this}lerpVectors(t,e,n){return this.x=t.x+(e.x-t.x)*n,this.y=t.y+(e.y-t.y)*n,this.z=t.z+(e.z-t.z)*n,this}cross(t,e){return void 0!==e?(console.warn("THREE.Vector3: .cross() now only accepts one argument. Use .crossVectors( a, b ) instead."),this.crossVectors(t,e)):this.crossVectors(this,t)}crossVectors(t,e){const n=t.x,i=t.y,r=t.z,s=e.x,a=e.y,o=e.z;return this.x=i*o-r*a,this.y=r*s-n*o,this.z=n*a-i*s,this}projectOnVector(t){const e=t.lengthSq();if(0===e)return this.set(0,0,0);const n=t.dot(this)/e;return this.copy(t).multiplyScalar(n)}projectOnPlane(t){return Rt.copy(this).projectOnVector(t),this.sub(Rt)}reflect(t){return this.sub(Rt.copy(t).multiplyScalar(2*this.dot(t)))}angleTo(t){const e=Math.sqrt(this.lengthSq()*t.lengthSq());if(0===e)return Math.PI/2;const n=this.dot(t)/e;return Math.acos(ht(n,-1,1))}distanceTo(t){return Math.sqrt(this.distanceToSquared(t))}distanceToSquared(t){const e=this.x-t.x,n=this.y-t.y,i=this.z-t.z;return e*e+n*n+i*i}manhattanDistanceTo(t){return Math.abs(this.x-t.x)+Math.abs(this.y-t.y)+Math.abs(this.z-t.z)}setFromSpherical(t){return this.setFromSphericalCoords(t.radius,t.phi,t.theta)}setFromSphericalCoords(t,e,n){const i=Math.sin(e)*t;return this.x=i*Math.sin(n),this.y=Math.cos(e)*t,this.z=i*Math.cos(n),this}setFromCylindrical(t){return this.setFromCylindricalCoords(t.radius,t.theta,t.y)}setFromCylindricalCoords(t,e,n){return this.x=t*Math.sin(e),this.y=n,this.z=t*Math.cos(e),this}setFromMatrixPosition(t){const e=t.elements;return this.x=e[12],this.y=e[13],this.z=e[14],this}setFromMatrixScale(t){const e=this.setFromMatrixColumn(t,0).length(),n=this.setFromMatrixColumn(t,1).length(),i=this.setFromMatrixColumn(t,2).length();return this.x=e,this.y=n,this.z=i,this}setFromMatrixColumn(t,e){return this.fromArray(t.elements,4*e)}setFromMatrix3Column(t,e){return this.fromArray(t.elements,3*e)}equals(t){return t.x===this.x&amp;&amp;t.y===this.y&amp;&amp;t.z===this.z}fromArray(t,e=0){return this.x=t[e],this.y=t[e+1],this.z=t[e+2],this}toArray(t=[],e=0){return t[e]=this.x,t[e+1]=this.y,t[e+2]=this.z,t}fromBufferAttribute(t,e,n){return void 0!==n&amp;&amp;console.warn("THREE.Vector3: offset has been removed from .fromBufferAttribute()."),this.x=t.getX(e),this.y=t.getY(e),this.z=t.getZ(e),this}random(){return this.x=Math.random(),this.y=Math.random(),this.z=Math.random(),this}}Lt.prototype.isVector3=!0;const Rt=new Lt,Ct=new At;class Pt{constructor(t=new Lt(1/0,1/0,1/0),e=new Lt(-1/0,-1/0,-1/0)){this.min=t,this.max=e}set(t,e){return this.min.copy(t),this.max.copy(e),this}setFromArray(t){let e=1/0,n=1/0,i=1/0,r=-1/0,s=-1/0,a=-1/0;for(let o=0,l=t.length;o&lt;l;o+=3){const l=t[o],c=t[o+1],h=t[o+2];l&lt;e&amp;&amp;(e=l),c&lt;n&amp;&amp;(n=c),h&lt;i&amp;&amp;(i=h),l&gt;r&amp;&amp;(r=l),c&gt;s&amp;&amp;(s=c),h&gt;a&amp;&amp;(a=h)}return this.min.set(e,n,i),this.max.set(r,s,a),this}setFromBufferAttribute(t){let e=1/0,n=1/0,i=1/0,r=-1/0,s=-1/0,a=-1/0;for(let o=0,l=t.count;o&lt;l;o++){const l=t.getX(o),c=t.getY(o),h=t.getZ(o);l&lt;e&amp;&amp;(e=l),c&lt;n&amp;&amp;(n=c),h&lt;i&amp;&amp;(i=h),l&gt;r&amp;&amp;(r=l),c&gt;s&amp;&amp;(s=c),h&gt;a&amp;&amp;(a=h)}return this.min.set(e,n,i),this.max.set(r,s,a),this}setFromPoints(t){this.makeEmpty();for(let e=0,n=t.length;e&lt;n;e++)this.expandByPoint(t[e]);return this}setFromCenterAndSize(t,e){const n=It.copy(e).multiplyScalar(.5);return this.min.copy(t).sub(n),this.max.copy(t).add(n),this}setFromObject(t){return this.makeEmpty(),this.expandByObject(t)}clone(){return(new this.constructor).copy(this)}copy(t){return this.min.copy(t.min),this.max.copy(t.max),this}makeEmpty(){return this.min.x=this.min.y=this.min.z=1/0,this.max.x=this.max.y=this.max.z=-1/0,this}isEmpty(){return this.max.x&lt;this.min.x||this.max.y&lt;this.min.y||this.max.z&lt;this.min.z}getCenter(t){return void 0===t&amp;&amp;(console.warn("THREE.Box3: .getCenter() target is now required"),t=new Lt),this.isEmpty()?t.set(0,0,0):t.addVectors(this.min,this.max).multiplyScalar(.5)}getSize(t){return void 0===t&amp;&amp;(console.warn("THREE.Box3: .getSize() target is now required"),t=new Lt),this.isEmpty()?t.set(0,0,0):t.subVectors(this.max,this.min)}expandByPoint(t){return this.min.min(t),this.max.max(t),this}expandByVector(t){return this.min.sub(t),this.max.add(t),this}expandByScalar(t){return this.min.addScalar(-t),this.max.addScalar(t),this}expandByObject(t){t.updateWorldMatrix(!1,!1);const e=t.geometry;void 0!==e&amp;&amp;(null===e.boundingBox&amp;&amp;e.computeBoundingBox(),Nt.copy(e.boundingBox),Nt.applyMatrix4(t.matrixWorld),this.union(Nt));const n=t.children;for(let t=0,e=n.length;t&lt;e;t++)this.expandByObject(n[t]);return this}containsPoint(t){return!(t.x&lt;this.min.x||t.x&gt;this.max.x||t.y&lt;this.min.y||t.y&gt;this.max.y||t.z&lt;this.min.z||t.z&gt;this.max.z)}containsBox(t){return this.min.x&lt;=t.min.x&amp;&amp;t.max.x&lt;=this.max.x&amp;&amp;this.min.y&lt;=t.min.y&amp;&amp;t.max.y&lt;=this.max.y&amp;&amp;this.min.z&lt;=t.min.z&amp;&amp;t.max.z&lt;=this.max.z}getParameter(t,e){return void 0===e&amp;&amp;(console.warn("THREE.Box3: .getParameter() target is now required"),e=new Lt),e.set((t.x-this.min.x)/(this.max.x-this.min.x),(t.y-this.min.y)/(this.max.y-this.min.y),(t.z-this.min.z)/(this.max.z-this.min.z))}intersectsBox(t){return!(t.max.x&lt;this.min.x||t.min.x&gt;this.max.x||t.max.y&lt;this.min.y||t.min.y&gt;this.max.y||t.max.z&lt;this.min.z||t.min.z&gt;this.max.z)}intersectsSphere(t){return this.clampPoint(t.center,It),It.distanceToSquared(t.center)&lt;=t.radius*t.radius}intersectsPlane(t){let e,n;return t.normal.x&gt;0?(e=t.normal.x*this.min.x,n=t.normal.x*this.max.x):(e=t.normal.x*this.max.x,n=t.normal.x*this.min.x),t.normal.y&gt;0?(e+=t.normal.y*this.min.y,n+=t.normal.y*this.max.y):(e+=t.normal.y*this.max.y,n+=t.normal.y*this.min.y),t.normal.z&gt;0?(e+=t.normal.z*this.min.z,n+=t.normal.z*this.max.z):(e+=t.normal.z*this.max.z,n+=t.normal.z*this.min.z),e&lt;=-t.constant&amp;&amp;n&gt;=-t.constant}intersectsTriangle(t){if(this.isEmpty())return!1;this.getCenter(Ut),kt.subVectors(this.max,Ut),Bt.subVectors(t.a,Ut),zt.subVectors(t.b,Ut),Ft.subVectors(t.c,Ut),Ot.subVectors(zt,Bt),Ht.subVectors(Ft,zt),Gt.subVectors(Bt,Ft);let e=[0,-Ot.z,Ot.y,0,-Ht.z,Ht.y,0,-Gt.z,Gt.y,Ot.z,0,-Ot.x,Ht.z,0,-Ht.x,Gt.z,0,-Gt.x,-Ot.y,Ot.x,0,-Ht.y,Ht.x,0,-Gt.y,Gt.x,0];return!!jt(e,Bt,zt,Ft,kt)&amp;&amp;(e=[1,0,0,0,1,0,0,0,1],!!jt(e,Bt,zt,Ft,kt)&amp;&amp;(Vt.crossVectors(Ot,Ht),e=[Vt.x,Vt.y,Vt.z],jt(e,Bt,zt,Ft,kt)))}clampPoint(t,e){return void 0===e&amp;&amp;(console.warn("THREE.Box3: .clampPoint() target is now required"),e=new Lt),e.copy(t).clamp(this.min,this.max)}distanceToPoint(t){return It.copy(t).clamp(this.min,this.max).sub(t).length()}getBoundingSphere(t){return void 0===t&amp;&amp;console.error("THREE.Box3: .getBoundingSphere() target is now required"),this.getCenter(t.center),t.radius=.5*this.getSize(It).length(),t}intersect(t){return this.min.max(t.min),this.max.min(t.max),this.isEmpty()&amp;&amp;this.makeEmpty(),this}union(t){return this.min.min(t.min),this.max.max(t.max),this}applyMatrix4(t){return this.isEmpty()||(Dt[0].set(this.min.x,this.min.y,this.min.z).applyMatrix4(t),Dt[1].set(this.min.x,this.min.y,this.max.z).applyMatrix4(t),Dt[2].set(this.min.x,this.max.y,this.min.z).applyMatrix4(t),Dt[3].set(this.min.x,this.max.y,this.max.z).applyMatrix4(t),Dt[4].set(this.max.x,this.min.y,this.min.z).applyMatrix4(t),Dt[5].set(this.max.x,this.min.y,this.max.z).applyMatrix4(t),Dt[6].set(this.max.x,this.max.y,this.min.z).applyMatrix4(t),Dt[7].set(this.max.x,this.max.y,this.max.z).applyMatrix4(t),this.setFromPoints(Dt)),this}translate(t){return this.min.add(t),this.max.add(t),this}equals(t){return t.min.equals(this.min)&amp;&amp;t.max.equals(this.max)}}Pt.prototype.isBox3=!0;const Dt=[new Lt,new Lt,new Lt,new Lt,new Lt,new Lt,new Lt,new Lt],It=new Lt,Nt=new Pt,Bt=new Lt,zt=new Lt,Ft=new Lt,Ot=new Lt,Ht=new Lt,Gt=new Lt,Ut=new Lt,kt=new Lt,Vt=new Lt,Wt=new Lt;function jt(t,e,n,i,r){for(let s=0,a=t.length-3;s&lt;=a;s+=3){Wt.fromArray(t,s);const a=r.x*Math.abs(Wt.x)+r.y*Math.abs(Wt.y)+r.z*Math.abs(Wt.z),o=e.dot(Wt),l=n.dot(Wt),c=i.dot(Wt);if(Math.max(-Math.max(o,l,c),Math.min(o,l,c))&gt;a)return!1}return!0}const qt=new Pt,Xt=new Lt,Yt=new Lt,Zt=new Lt;class Jt{constructor(t=new Lt,e=-1){this.center=t,this.radius=e}set(t,e){return this.center.copy(t),this.radius=e,this}setFromPoints(t,e){const n=this.center;void 0!==e?n.copy(e):qt.setFromPoints(t).getCenter(n);let i=0;for(let e=0,r=t.length;e&lt;r;e++)i=Math.max(i,n.distanceToSquared(t[e]));return this.radius=Math.sqrt(i),this}copy(t){return this.center.copy(t.center),this.radius=t.radius,this}isEmpty(){return this.radius&lt;0}makeEmpty(){return this.center.set(0,0,0),this.radius=-1,this}containsPoint(t){return t.distanceToSquared(this.center)&lt;=this.radius*this.radius}distanceToPoint(t){return t.distanceTo(this.center)-this.radius}intersectsSphere(t){const e=this.radius+t.radius;return t.center.distanceToSquared(this.center)&lt;=e*e}intersectsBox(t){return t.intersectsSphere(this)}intersectsPlane(t){return Math.abs(t.distanceToPoint(this.center))&lt;=this.radius}clampPoint(t,e){const n=this.center.distanceToSquared(t);return void 0===e&amp;&amp;(console.warn("THREE.Sphere: .clampPoint() target is now required"),e=new Lt),e.copy(t),n&gt;this.radius*this.radius&amp;&amp;(e.sub(this.center).normalize(),e.multiplyScalar(this.radius).add(this.center)),e}getBoundingBox(t){return void 0===t&amp;&amp;(console.warn("THREE.Sphere: .getBoundingBox() target is now required"),t=new Pt),this.isEmpty()?(t.makeEmpty(),t):(t.set(this.center,this.center),t.expandByScalar(this.radius),t)}applyMatrix4(t){return this.center.applyMatrix4(t),this.radius=this.radius*t.getMaxScaleOnAxis(),this}translate(t){return this.center.add(t),this}expandByPoint(t){Zt.subVectors(t,this.center);const e=Zt.lengthSq();if(e&gt;this.radius*this.radius){const t=Math.sqrt(e),n=.5*(t-this.radius);this.center.add(Zt.multiplyScalar(n/t)),this.radius+=n}return this}union(t){return Yt.subVectors(t.center,this.center).normalize().multiplyScalar(t.radius),this.expandByPoint(Xt.copy(t.center).add(Yt)),this.expandByPoint(Xt.copy(t.center).sub(Yt)),this}equals(t){return t.center.equals(this.center)&amp;&amp;t.radius===this.radius}clone(){return(new this.constructor).copy(this)}}const Qt=new Lt,Kt=new Lt,$t=new Lt,te=new Lt,ee=new Lt,ne=new Lt,ie=new Lt;class re{constructor(t=new Lt,e=new Lt(0,0,-1)){this.origin=t,this.direction=e}set(t,e){return this.origin.copy(t),this.direction.copy(e),this}copy(t){return this.origin.copy(t.origin),this.direction.copy(t.direction),this}at(t,e){return void 0===e&amp;&amp;(console.warn("THREE.Ray: .at() target is now required"),e=new Lt),e.copy(this.direction).multiplyScalar(t).add(this.origin)}lookAt(t){return this.direction.copy(t).sub(this.origin).normalize(),this}recast(t){return this.origin.copy(this.at(t,Qt)),this}closestPointToPoint(t,e){void 0===e&amp;&amp;(console.warn("THREE.Ray: .closestPointToPoint() target is now required"),e=new Lt),e.subVectors(t,this.origin);const n=e.dot(this.direction);return n&lt;0?e.copy(this.origin):e.copy(this.direction).multiplyScalar(n).add(this.origin)}distanceToPoint(t){return Math.sqrt(this.distanceSqToPoint(t))}distanceSqToPoint(t){const e=Qt.subVectors(t,this.origin).dot(this.direction);return e&lt;0?this.origin.distanceToSquared(t):(Qt.copy(this.direction).multiplyScalar(e).add(this.origin),Qt.distanceToSquared(t))}distanceSqToSegment(t,e,n,i){Kt.copy(t).add(e).multiplyScalar(.5),$t.copy(e).sub(t).normalize(),te.copy(this.origin).sub(Kt);const r=.5*t.distanceTo(e),s=-this.direction.dot($t),a=te.dot(this.direction),o=-te.dot($t),l=te.lengthSq(),c=Math.abs(1-s*s);let h,u,d,p;if(c&gt;0)if(h=s*o-a,u=s*a-o,p=r*c,h&gt;=0)if(u&gt;=-p)if(u&lt;=p){const t=1/c;h*=t,u*=t,d=h*(h+s*u+2*a)+u*(s*h+u+2*o)+l}else u=r,h=Math.max(0,-(s*u+a)),d=-h*h+u*(u+2*o)+l;else u=-r,h=Math.max(0,-(s*u+a)),d=-h*h+u*(u+2*o)+l;else u&lt;=-p?(h=Math.max(0,-(-s*r+a)),u=h&gt;0?-r:Math.min(Math.max(-r,-o),r),d=-h*h+u*(u+2*o)+l):u&lt;=p?(h=0,u=Math.min(Math.max(-r,-o),r),d=u*(u+2*o)+l):(h=Math.max(0,-(s*r+a)),u=h&gt;0?r:Math.min(Math.max(-r,-o),r),d=-h*h+u*(u+2*o)+l);else u=s&gt;0?-r:r,h=Math.max(0,-(s*u+a)),d=-h*h+u*(u+2*o)+l;return n&amp;&amp;n.copy(this.direction).multiplyScalar(h).add(this.origin),i&amp;&amp;i.copy($t).multiplyScalar(u).add(Kt),d}intersectSphere(t,e){Qt.subVectors(t.center,this.origin);const n=Qt.dot(this.direction),i=Qt.dot(Qt)-n*n,r=t.radius*t.radius;if(i&gt;r)return null;const s=Math.sqrt(r-i),a=n-s,o=n+s;return a&lt;0&amp;&amp;o&lt;0?null:a&lt;0?this.at(o,e):this.at(a,e)}intersectsSphere(t){return this.distanceSqToPoint(t.center)&lt;=t.radius*t.radius}distanceToPlane(t){const e=t.normal.dot(this.direction);if(0===e)return 0===t.distanceToPoint(this.origin)?0:null;const n=-(this.origin.dot(t.normal)+t.constant)/e;return n&gt;=0?n:null}intersectPlane(t,e){const n=this.distanceToPlane(t);return null===n?null:this.at(n,e)}intersectsPlane(t){const e=t.distanceToPoint(this.origin);if(0===e)return!0;return t.normal.dot(this.direction)*e&lt;0}intersectBox(t,e){let n,i,r,s,a,o;const l=1/this.direction.x,c=1/this.direction.y,h=1/this.direction.z,u=this.origin;return l&gt;=0?(n=(t.min.x-u.x)*l,i=(t.max.x-u.x)*l):(n=(t.max.x-u.x)*l,i=(t.min.x-u.x)*l),c&gt;=0?(r=(t.min.y-u.y)*c,s=(t.max.y-u.y)*c):(r=(t.max.y-u.y)*c,s=(t.min.y-u.y)*c),n&gt;s||r&gt;i?null:((r&gt;n||n!=n)&amp;&amp;(n=r),(s&lt;i||i!=i)&amp;&amp;(i=s),h&gt;=0?(a=(t.min.z-u.z)*h,o=(t.max.z-u.z)*h):(a=(t.max.z-u.z)*h,o=(t.min.z-u.z)*h),n&gt;o||a&gt;i?null:((a&gt;n||n!=n)&amp;&amp;(n=a),(o&lt;i||i!=i)&amp;&amp;(i=o),i&lt;0?null:this.at(n&gt;=0?n:i,e)))}intersectsBox(t){return null!==this.intersectBox(t,Qt)}intersectTriangle(t,e,n,i,r){ee.subVectors(e,t),ne.subVectors(n,t),ie.crossVectors(ee,ne);let s,a=this.direction.dot(ie);if(a&gt;0){if(i)return null;s=1}else{if(!(a&lt;0))return null;s=-1,a=-a}te.subVectors(this.origin,t);const o=s*this.direction.dot(ne.crossVectors(te,ne));if(o&lt;0)return null;const l=s*this.direction.dot(ee.cross(te));if(l&lt;0)return null;if(o+l&gt;a)return null;const c=-s*te.dot(ie);return c&lt;0?null:this.at(c/a,r)}applyMatrix4(t){return this.origin.applyMatrix4(t),this.direction.transformDirection(t),this}equals(t){return t.origin.equals(this.origin)&amp;&amp;t.direction.equals(this.direction)}clone(){return(new this.constructor).copy(this)}}class se{constructor(){this.elements=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1],arguments.length&gt;0&amp;&amp;console.error("THREE.Matrix4: the constructor no longer reads arguments. use .set() instead.")}set(t,e,n,i,r,s,a,o,l,c,h,u,d,p,m,f){const g=this.elements;return g[0]=t,g[4]=e,g[8]=n,g[12]=i,g[1]=r,g[5]=s,g[9]=a,g[13]=o,g[2]=l,g[6]=c,g[10]=h,g[14]=u,g[3]=d,g[7]=p,g[11]=m,g[15]=f,this}identity(){return this.set(1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1),this}clone(){return(new se).fromArray(this.elements)}copy(t){const e=this.elements,n=t.elements;return e[0]=n[0],e[1]=n[1],e[2]=n[2],e[3]=n[3],e[4]=n[4],e[5]=n[5],e[6]=n[6],e[7]=n[7],e[8]=n[8],e[9]=n[9],e[10]=n[10],e[11]=n[11],e[12]=n[12],e[13]=n[13],e[14]=n[14],e[15]=n[15],this}copyPosition(t){const e=this.elements,n=t.elements;return e[12]=n[12],e[13]=n[13],e[14]=n[14],this}setFromMatrix3(t){const e=t.elements;return this.set(e[0],e[3],e[6],0,e[1],e[4],e[7],0,e[2],e[5],e[8],0,0,0,0,1),this}extractBasis(t,e,n){return t.setFromMatrixColumn(this,0),e.setFromMatrixColumn(this,1),n.setFromMatrixColumn(this,2),this}makeBasis(t,e,n){return this.set(t.x,e.x,n.x,0,t.y,e.y,n.y,0,t.z,e.z,n.z,0,0,0,0,1),this}extractRotation(t){const e=this.elements,n=t.elements,i=1/ae.setFromMatrixColumn(t,0).length(),r=1/ae.setFromMatrixColumn(t,1).length(),s=1/ae.setFromMatrixColumn(t,2).length();return e[0]=n[0]*i,e[1]=n[1]*i,e[2]=n[2]*i,e[3]=0,e[4]=n[4]*r,e[5]=n[5]*r,e[6]=n[6]*r,e[7]=0,e[8]=n[8]*s,e[9]=n[9]*s,e[10]=n[10]*s,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,this}makeRotationFromEuler(t){t&amp;&amp;t.isEuler||console.error("THREE.Matrix4: .makeRotationFromEuler() now expects a Euler rotation rather than a Vector3 and order.");const e=this.elements,n=t.x,i=t.y,r=t.z,s=Math.cos(n),a=Math.sin(n),o=Math.cos(i),l=Math.sin(i),c=Math.cos(r),h=Math.sin(r);if("XYZ"===t.order){const t=s*c,n=s*h,i=a*c,r=a*h;e[0]=o*c,e[4]=-o*h,e[8]=l,e[1]=n+i*l,e[5]=t-r*l,e[9]=-a*o,e[2]=r-t*l,e[6]=i+n*l,e[10]=s*o}else if("YXZ"===t.order){const t=o*c,n=o*h,i=l*c,r=l*h;e[0]=t+r*a,e[4]=i*a-n,e[8]=s*l,e[1]=s*h,e[5]=s*c,e[9]=-a,e[2]=n*a-i,e[6]=r+t*a,e[10]=s*o}else if("ZXY"===t.order){const t=o*c,n=o*h,i=l*c,r=l*h;e[0]=t-r*a,e[4]=-s*h,e[8]=i+n*a,e[1]=n+i*a,e[5]=s*c,e[9]=r-t*a,e[2]=-s*l,e[6]=a,e[10]=s*o}else if("ZYX"===t.order){const t=s*c,n=s*h,i=a*c,r=a*h;e[0]=o*c,e[4]=i*l-n,e[8]=t*l+r,e[1]=o*h,e[5]=r*l+t,e[9]=n*l-i,e[2]=-l,e[6]=a*o,e[10]=s*o}else if("YZX"===t.order){const t=s*o,n=s*l,i=a*o,r=a*l;e[0]=o*c,e[4]=r-t*h,e[8]=i*h+n,e[1]=h,e[5]=s*c,e[9]=-a*c,e[2]=-l*c,e[6]=n*h+i,e[10]=t-r*h}else if("XZY"===t.order){const t=s*o,n=s*l,i=a*o,r=a*l;e[0]=o*c,e[4]=-h,e[8]=l*c,e[1]=t*h+r,e[5]=s*c,e[9]=n*h-i,e[2]=i*h-n,e[6]=a*c,e[10]=r*h+t}return e[3]=0,e[7]=0,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,this}makeRotationFromQuaternion(t){return this.compose(le,t,ce)}lookAt(t,e,n){const i=this.elements;return de.subVectors(t,e),0===de.lengthSq()&amp;&amp;(de.z=1),de.normalize(),he.crossVectors(n,de),0===he.lengthSq()&amp;&amp;(1===Math.abs(n.z)?de.x+=1e-4:de.z+=1e-4,de.normalize(),he.crossVectors(n,de)),he.normalize(),ue.crossVectors(de,he),i[0]=he.x,i[4]=ue.x,i[8]=de.x,i[1]=he.y,i[5]=ue.y,i[9]=de.y,i[2]=he.z,i[6]=ue.z,i[10]=de.z,this}multiply(t,e){return void 0!==e?(console.warn("THREE.Matrix4: .multiply() now only accepts one argument. Use .multiplyMatrices( a, b ) instead."),this.multiplyMatrices(t,e)):this.multiplyMatrices(this,t)}premultiply(t){return this.multiplyMatrices(t,this)}multiplyMatrices(t,e){const n=t.elements,i=e.elements,r=this.elements,s=n[0],a=n[4],o=n[8],l=n[12],c=n[1],h=n[5],u=n[9],d=n[13],p=n[2],m=n[6],f=n[10],g=n[14],v=n[3],y=n[7],x=n[11],_=n[15],w=i[0],b=i[4],M=i[8],S=i[12],T=i[1],E=i[5],A=i[9],L=i[13],R=i[2],C=i[6],P=i[10],D=i[14],I=i[3],N=i[7],B=i[11],z=i[15];return r[0]=s*w+a*T+o*R+l*I,r[4]=s*b+a*E+o*C+l*N,r[8]=s*M+a*A+o*P+l*B,r[12]=s*S+a*L+o*D+l*z,r[1]=c*w+h*T+u*R+d*I,r[5]=c*b+h*E+u*C+d*N,r[9]=c*M+h*A+u*P+d*B,r[13]=c*S+h*L+u*D+d*z,r[2]=p*w+m*T+f*R+g*I,r[6]=p*b+m*E+f*C+g*N,r[10]=p*M+m*A+f*P+g*B,r[14]=p*S+m*L+f*D+g*z,r[3]=v*w+y*T+x*R+_*I,r[7]=v*b+y*E+x*C+_*N,r[11]=v*M+y*A+x*P+_*B,r[15]=v*S+y*L+x*D+_*z,this}multiplyScalar(t){const e=this.elements;return e[0]*=t,e[4]*=t,e[8]*=t,e[12]*=t,e[1]*=t,e[5]*=t,e[9]*=t,e[13]*=t,e[2]*=t,e[6]*=t,e[10]*=t,e[14]*=t,e[3]*=t,e[7]*=t,e[11]*=t,e[15]*=t,this}determinant(){const t=this.elements,e=t[0],n=t[4],i=t[8],r=t[12],s=t[1],a=t[5],o=t[9],l=t[13],c=t[2],h=t[6],u=t[10],d=t[14];return t[3]*(+r*o*h-i*l*h-r*a*u+n*l*u+i*a*d-n*o*d)+t[7]*(+e*o*d-e*l*u+r*s*u-i*s*d+i*l*c-r*o*c)+t[11]*(+e*l*h-e*a*d-r*s*h+n*s*d+r*a*c-n*l*c)+t[15]*(-i*a*c-e*o*h+e*a*u+i*s*h-n*s*u+n*o*c)}transpose(){const t=this.elements;let e;return e=t[1],t[1]=t[4],t[4]=e,e=t[2],t[2]=t[8],t[8]=e,e=t[6],t[6]=t[9],t[9]=e,e=t[3],t[3]=t[12],t[12]=e,e=t[7],t[7]=t[13],t[13]=e,e=t[11],t[11]=t[14],t[14]=e,this}setPosition(t,e,n){const i=this.elements;return t.isVector3?(i[12]=t.x,i[13]=t.y,i[14]=t.z):(i[12]=t,i[13]=e,i[14]=n),this}invert(){const t=this.elements,e=t[0],n=t[1],i=t[2],r=t[3],s=t[4],a=t[5],o=t[6],l=t[7],c=t[8],h=t[9],u=t[10],d=t[11],p=t[12],m=t[13],f=t[14],g=t[15],v=h*f*l-m*u*l+m*o*d-a*f*d-h*o*g+a*u*g,y=p*u*l-c*f*l-p*o*d+s*f*d+c*o*g-s*u*g,x=c*m*l-p*h*l+p*a*d-s*m*d-c*a*g+s*h*g,_=p*h*o-c*m*o-p*a*u+s*m*u+c*a*f-s*h*f,w=e*v+n*y+i*x+r*_;if(0===w)return this.set(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0);const b=1/w;return t[0]=v*b,t[1]=(m*u*r-h*f*r-m*i*d+n*f*d+h*i*g-n*u*g)*b,t[2]=(a*f*r-m*o*r+m*i*l-n*f*l-a*i*g+n*o*g)*b,t[3]=(h*o*r-a*u*r-h*i*l+n*u*l+a*i*d-n*o*d)*b,t[4]=y*b,t[5]=(c*f*r-p*u*r+p*i*d-e*f*d-c*i*g+e*u*g)*b,t[6]=(p*o*r-s*f*r-p*i*l+e*f*l+s*i*g-e*o*g)*b,t[7]=(s*u*r-c*o*r+c*i*l-e*u*l-s*i*d+e*o*d)*b,t[8]=x*b,t[9]=(p*h*r-c*m*r-p*n*d+e*m*d+c*n*g-e*h*g)*b,t[10]=(s*m*r-p*a*r+p*n*l-e*m*l-s*n*g+e*a*g)*b,t[11]=(c*a*r-s*h*r-c*n*l+e*h*l+s*n*d-e*a*d)*b,t[12]=_*b,t[13]=(c*m*i-p*h*i+p*n*u-e*m*u-c*n*f+e*h*f)*b,t[14]=(p*a*i-s*m*i-p*n*o+e*m*o+s*n*f-e*a*f)*b,t[15]=(s*h*i-c*a*i+c*n*o-e*h*o-s*n*u+e*a*u)*b,this}scale(t){const e=this.elements,n=t.x,i=t.y,r=t.z;return e[0]*=n,e[4]*=i,e[8]*=r,e[1]*=n,e[5]*=i,e[9]*=r,e[2]*=n,e[6]*=i,e[10]*=r,e[3]*=n,e[7]*=i,e[11]*=r,this}getMaxScaleOnAxis(){const t=this.elements,e=t[0]*t[0]+t[1]*t[1]+t[2]*t[2],n=t[4]*t[4]+t[5]*t[5]+t[6]*t[6],i=t[8]*t[8]+t[9]*t[9]+t[10]*t[10];return Math.sqrt(Math.max(e,n,i))}makeTranslation(t,e,n){return this.set(1,0,0,t,0,1,0,e,0,0,1,n,0,0,0,1),this}makeRotationX(t){const e=Math.cos(t),n=Math.sin(t);return this.set(1,0,0,0,0,e,-n,0,0,n,e,0,0,0,0,1),this}makeRotationY(t){const e=Math.cos(t),n=Math.sin(t);return this.set(e,0,n,0,0,1,0,0,-n,0,e,0,0,0,0,1),this}makeRotationZ(t){const e=Math.cos(t),n=Math.sin(t);return this.set(e,-n,0,0,n,e,0,0,0,0,1,0,0,0,0,1),this}makeRotationAxis(t,e){const n=Math.cos(e),i=Math.sin(e),r=1-n,s=t.x,a=t.y,o=t.z,l=r*s,c=r*a;return this.set(l*s+n,l*a-i*o,l*o+i*a,0,l*a+i*o,c*a+n,c*o-i*s,0,l*o-i*a,c*o+i*s,r*o*o+n,0,0,0,0,1),this}makeScale(t,e,n){return this.set(t,0,0,0,0,e,0,0,0,0,n,0,0,0,0,1),this}makeShear(t,e,n){return this.set(1,e,n,0,t,1,n,0,t,e,1,0,0,0,0,1),this}compose(t,e,n){const i=this.elements,r=e._x,s=e._y,a=e._z,o=e._w,l=r+r,c=s+s,h=a+a,u=r*l,d=r*c,p=r*h,m=s*c,f=s*h,g=a*h,v=o*l,y=o*c,x=o*h,_=n.x,w=n.y,b=n.z;return i[0]=(1-(m+g))*_,i[1]=(d+x)*_,i[2]=(p-y)*_,i[3]=0,i[4]=(d-x)*w,i[5]=(1-(u+g))*w,i[6]=(f+v)*w,i[7]=0,i[8]=(p+y)*b,i[9]=(f-v)*b,i[10]=(1-(u+m))*b,i[11]=0,i[12]=t.x,i[13]=t.y,i[14]=t.z,i[15]=1,this}decompose(t,e,n){const i=this.elements;let r=ae.set(i[0],i[1],i[2]).length();const s=ae.set(i[4],i[5],i[6]).length(),a=ae.set(i[8],i[9],i[10]).length();this.determinant()&lt;0&amp;&amp;(r=-r),t.x=i[12],t.y=i[13],t.z=i[14],oe.copy(this);const o=1/r,l=1/s,c=1/a;return oe.elements[0]*=o,oe.elements[1]*=o,oe.elements[2]*=o,oe.elements[4]*=l,oe.elements[5]*=l,oe.elements[6]*=l,oe.elements[8]*=c,oe.elements[9]*=c,oe.elements[10]*=c,e.setFromRotationMatrix(oe),n.x=r,n.y=s,n.z=a,this}makePerspective(t,e,n,i,r,s){void 0===s&amp;&amp;console.warn("THREE.Matrix4: .makePerspective() has been redefined and has a new signature. Please check the docs.");const a=this.elements,o=2*r/(e-t),l=2*r/(n-i),c=(e+t)/(e-t),h=(n+i)/(n-i),u=-(s+r)/(s-r),d=-2*s*r/(s-r);return a[0]=o,a[4]=0,a[8]=c,a[12]=0,a[1]=0,a[5]=l,a[9]=h,a[13]=0,a[2]=0,a[6]=0,a[10]=u,a[14]=d,a[3]=0,a[7]=0,a[11]=-1,a[15]=0,this}makeOrthographic(t,e,n,i,r,s){const a=this.elements,o=1/(e-t),l=1/(n-i),c=1/(s-r),h=(e+t)*o,u=(n+i)*l,d=(s+r)*c;return a[0]=2*o,a[4]=0,a[8]=0,a[12]=-h,a[1]=0,a[5]=2*l,a[9]=0,a[13]=-u,a[2]=0,a[6]=0,a[10]=-2*c,a[14]=-d,a[3]=0,a[7]=0,a[11]=0,a[15]=1,this}equals(t){const e=this.elements,n=t.elements;for(let t=0;t&lt;16;t++)if(e[t]!==n[t])return!1;return!0}fromArray(t,e=0){for(let n=0;n&lt;16;n++)this.elements[n]=t[n+e];return this}toArray(t=[],e=0){const n=this.elements;return t[e]=n[0],t[e+1]=n[1],t[e+2]=n[2],t[e+3]=n[3],t[e+4]=n[4],t[e+5]=n[5],t[e+6]=n[6],t[e+7]=n[7],t[e+8]=n[8],t[e+9]=n[9],t[e+10]=n[10],t[e+11]=n[11],t[e+12]=n[12],t[e+13]=n[13],t[e+14]=n[14],t[e+15]=n[15],t}}se.prototype.isMatrix4=!0;const ae=new Lt,oe=new se,le=new Lt(0,0,0),ce=new Lt(1,1,1),he=new Lt,ue=new Lt,de=new Lt,pe=new se,me=new At;class fe{constructor(t=0,e=0,n=0,i=fe.DefaultOrder){this._x=t,this._y=e,this._z=n,this._order=i}get x(){return this._x}set x(t){this._x=t,this._onChangeCallback()}get y(){return this._y}set y(t){this._y=t,this._onChangeCallback()}get z(){return this._z}set z(t){this._z=t,this._onChangeCallback()}get order(){return this._order}set order(t){this._order=t,this._onChangeCallback()}set(t,e,n,i){return this._x=t,this._y=e,this._z=n,this._order=i||this._order,this._onChangeCallback(),this}clone(){return new this.constructor(this._x,this._y,this._z,this._order)}copy(t){return this._x=t._x,this._y=t._y,this._z=t._z,this._order=t._order,this._onChangeCallback(),this}setFromRotationMatrix(t,e,n){const i=t.elements,r=i[0],s=i[4],a=i[8],o=i[1],l=i[5],c=i[9],h=i[2],u=i[6],d=i[10];switch(e=e||this._order){case"XYZ":this._y=Math.asin(ht(a,-1,1)),Math.abs(a)&lt;.9999999?(this._x=Math.atan2(-c,d),this._z=Math.atan2(-s,r)):(this._x=Math.atan2(u,l),this._z=0);break;case"YXZ":this._x=Math.asin(-ht(c,-1,1)),Math.abs(c)&lt;.9999999?(this._y=Math.atan2(a,d),this._z=Math.atan2(o,l)):(this._y=Math.atan2(-h,r),this._z=0);break;case"ZXY":this._x=Math.asin(ht(u,-1,1)),Math.abs(u)&lt;.9999999?(this._y=Math.atan2(-h,d),this._z=Math.atan2(-s,l)):(this._y=0,this._z=Math.atan2(o,r));break;case"ZYX":this._y=Math.asin(-ht(h,-1,1)),Math.abs(h)&lt;.9999999?(this._x=Math.atan2(u,d),this._z=Math.atan2(o,r)):(this._x=0,this._z=Math.atan2(-s,l));break;case"YZX":this._z=Math.asin(ht(o,-1,1)),Math.abs(o)&lt;.9999999?(this._x=Math.atan2(-c,l),this._y=Math.atan2(-h,r)):(this._x=0,this._y=Math.atan2(a,d));break;case"XZY":this._z=Math.asin(-ht(s,-1,1)),Math.abs(s)&lt;.9999999?(this._x=Math.atan2(u,l),this._y=Math.atan2(a,r)):(this._x=Math.atan2(-c,d),this._y=0);break;default:console.warn("THREE.Euler: .setFromRotationMatrix() encountered an unknown order: "+e)}return this._order=e,!1!==n&amp;&amp;this._onChangeCallback(),this}setFromQuaternion(t,e,n){return pe.makeRotationFromQuaternion(t),this.setFromRotationMatrix(pe,e,n)}setFromVector3(t,e){return this.set(t.x,t.y,t.z,e||this._order)}reorder(t){return me.setFromEuler(this),this.setFromQuaternion(me,t)}equals(t){return t._x===this._x&amp;&amp;t._y===this._y&amp;&amp;t._z===this._z&amp;&amp;t._order===this._order}fromArray(t){return this._x=t[0],this._y=t[1],this._z=t[2],void 0!==t[3]&amp;&amp;(this._order=t[3]),this._onChangeCallback(),this}toArray(t=[],e=0){return t[e]=this._x,t[e+1]=this._y,t[e+2]=this._z,t[e+3]=this._order,t}toVector3(t){return t?t.set(this._x,this._y,this._z):new Lt(this._x,this._y,this._z)}_onChange(t){return this._onChangeCallback=t,this}_onChangeCallback(){}}fe.prototype.isEuler=!0,fe.DefaultOrder="XYZ",fe.RotationOrders=["XYZ","YZX","ZXY","XZY","YXZ","ZYX"];class ge{constructor(){this.mask=1}set(t){this.mask=1&lt;&lt;t|0}enable(t){this.mask|=1&lt;&lt;t|0}enableAll(){this.mask=-1}toggle(t){this.mask^=1&lt;&lt;t|0}disable(t){this.mask&amp;=~(1&lt;&lt;t|0)}disableAll(){this.mask=0}test(t){return 0!=(this.mask&amp;t.mask)}}let ve=0;const ye=new Lt,xe=new At,_e=new se,we=new Lt,be=new Lt,Me=new Lt,Se=new At,Te=new Lt(1,0,0),Ee=new Lt(0,1,0),Ae=new Lt(0,0,1),Le={type:"added"},Re={type:"removed"};class Ce extends rt{constructor(){super(),Object.defineProperty(this,"id",{value:ve++}),this.uuid=ct(),this.name="",this.type="Object3D",this.parent=null,this.children=[],this.up=Ce.DefaultUp.clone();const t=new Lt,e=new fe,n=new At,i=new Lt(1,1,1);e._onChange((function(){n.setFromEuler(e,!1)})),n._onChange((function(){e.setFromQuaternion(n,void 0,!1)})),Object.defineProperties(this,{position:{configurable:!0,enumerable:!0,value:t},rotation:{configurable:!0,enumerable:!0,value:e},quaternion:{configurable:!0,enumerable:!0,value:n},scale:{configurable:!0,enumerable:!0,value:i},modelViewMatrix:{value:new se},normalMatrix:{value:new yt}}),this.matrix=new se,this.matrixWorld=new se,this.matrixAutoUpdate=Ce.DefaultMatrixAutoUpdate,this.matrixWorldNeedsUpdate=!1,this.layers=new ge,this.visible=!0,this.castShadow=!1,this.receiveShadow=!1,this.frustumCulled=!0,this.renderOrder=0,this.animations=[],this.userData={}}onBeforeRender(){}onAfterRender(){}applyMatrix4(t){this.matrixAutoUpdate&amp;&amp;this.updateMatrix(),this.matrix.premultiply(t),this.matrix.decompose(this.position,this.quaternion,this.scale)}applyQuaternion(t){return this.quaternion.premultiply(t),this}setRotationFromAxisAngle(t,e){this.quaternion.setFromAxisAngle(t,e)}setRotationFromEuler(t){this.quaternion.setFromEuler(t,!0)}setRotationFromMatrix(t){this.quaternion.setFromRotationMatrix(t)}setRotationFromQuaternion(t){this.quaternion.copy(t)}rotateOnAxis(t,e){return xe.setFromAxisAngle(t,e),this.quaternion.multiply(xe),this}rotateOnWorldAxis(t,e){return xe.setFromAxisAngle(t,e),this.quaternion.premultiply(xe),this}rotateX(t){return this.rotateOnAxis(Te,t)}rotateY(t){return this.rotateOnAxis(Ee,t)}rotateZ(t){return this.rotateOnAxis(Ae,t)}translateOnAxis(t,e){return ye.copy(t).applyQuaternion(this.quaternion),this.position.add(ye.multiplyScalar(e)),this}translateX(t){return this.translateOnAxis(Te,t)}translateY(t){return this.translateOnAxis(Ee,t)}translateZ(t){return this.translateOnAxis(Ae,t)}localToWorld(t){return t.applyMatrix4(this.matrixWorld)}worldToLocal(t){return t.applyMatrix4(_e.copy(this.matrixWorld).invert())}lookAt(t,e,n){t.isVector3?we.copy(t):we.set(t,e,n);const i=this.parent;this.updateWorldMatrix(!0,!1),be.setFromMatrixPosition(this.matrixWorld),this.isCamera||this.isLight?_e.lookAt(be,we,this.up):_e.lookAt(we,be,this.up),this.quaternion.setFromRotationMatrix(_e),i&amp;&amp;(_e.extractRotation(i.matrixWorld),xe.setFromRotationMatrix(_e),this.quaternion.premultiply(xe.invert()))}add(t){if(arguments.length&gt;1){for(let t=0;t&lt;arguments.length;t++)this.add(arguments[t]);return this}return t===this?(console.error("THREE.Object3D.add: object can't be added as a child of itself.",t),this):(t&amp;&amp;t.isObject3D?(null!==t.parent&amp;&amp;t.parent.remove(t),t.parent=this,this.children.push(t),t.dispatchEvent(Le)):console.error("THREE.Object3D.add: object not an instance of THREE.Object3D.",t),this)}remove(t){if(arguments.length&gt;1){for(let t=0;t&lt;arguments.length;t++)this.remove(arguments[t]);return this}const e=this.children.indexOf(t);return-1!==e&amp;&amp;(t.parent=null,this.children.splice(e,1),t.dispatchEvent(Re)),this}clear(){for(let t=0;t&lt;this.children.length;t++){const e=this.children[t];e.parent=null,e.dispatchEvent(Re)}return this.children.length=0,this}attach(t){return this.updateWorldMatrix(!0,!1),_e.copy(this.matrixWorld).invert(),null!==t.parent&amp;&amp;(t.parent.updateWorldMatrix(!0,!1),_e.multiply(t.parent.matrixWorld)),t.applyMatrix4(_e),this.add(t),t.updateWorldMatrix(!1,!0),this}getObjectById(t){return this.getObjectByProperty("id",t)}getObjectByName(t){return this.getObjectByProperty("name",t)}getObjectByProperty(t,e){if(this[t]===e)return this;for(let n=0,i=this.children.length;n&lt;i;n++){const i=this.children[n].getObjectByProperty(t,e);if(void 0!==i)return i}}getWorldPosition(t){return void 0===t&amp;&amp;(console.warn("THREE.Object3D: .getWorldPosition() target is now required"),t=new Lt),this.updateWorldMatrix(!0,!1),t.setFromMatrixPosition(this.matrixWorld)}getWorldQuaternion(t){return void 0===t&amp;&amp;(console.warn("THREE.Object3D: .getWorldQuaternion() target is now required"),t=new At),this.updateWorldMatrix(!0,!1),this.matrixWorld.decompose(be,t,Me),t}getWorldScale(t){return void 0===t&amp;&amp;(console.warn("THREE.Object3D: .getWorldScale() target is now required"),t=new Lt),this.updateWorldMatrix(!0,!1),this.matrixWorld.decompose(be,Se,t),t}getWorldDirection(t){void 0===t&amp;&amp;(console.warn("THREE.Object3D: .getWorldDirection() target is now required"),t=new Lt),this.updateWorldMatrix(!0,!1);const e=this.matrixWorld.elements;return t.set(e[8],e[9],e[10]).normalize()}raycast(){}traverse(t){t(this);const e=this.children;for(let n=0,i=e.length;n&lt;i;n++)e[n].traverse(t)}traverseVisible(t){if(!1===this.visible)return;t(this);const e=this.children;for(let n=0,i=e.length;n&lt;i;n++)e[n].traverseVisible(t)}traverseAncestors(t){const e=this.parent;null!==e&amp;&amp;(t(e),e.traverseAncestors(t))}updateMatrix(){this.matrix.compose(this.position,this.quaternion,this.scale),this.matrixWorldNeedsUpdate=!0}updateMatrixWorld(t){this.matrixAutoUpdate&amp;&amp;this.updateMatrix(),(this.matrixWorldNeedsUpdate||t)&amp;&amp;(null===this.parent?this.matrixWorld.copy(this.matrix):this.matrixWorld.multiplyMatrices(this.parent.matrixWorld,this.matrix),this.matrixWorldNeedsUpdate=!1,t=!0);const e=this.children;for(let n=0,i=e.length;n&lt;i;n++)e[n].updateMatrixWorld(t)}updateWorldMatrix(t,e){const n=this.parent;if(!0===t&amp;&amp;null!==n&amp;&amp;n.updateWorldMatrix(!0,!1),this.matrixAutoUpdate&amp;&amp;this.updateMatrix(),null===this.parent?this.matrixWorld.copy(this.matrix):this.matrixWorld.multiplyMatrices(this.parent.matrixWorld,this.matrix),!0===e){const t=this.children;for(let e=0,n=t.length;e&lt;n;e++)t[e].updateWorldMatrix(!1,!0)}}toJSON(t){const e=void 0===t||"string"==typeof t,n={};e&amp;&amp;(t={geometries:{},materials:{},textures:{},images:{},shapes:{},skeletons:{},animations:{}},n.metadata={version:4.5,type:"Object",generator:"Object3D.toJSON"});const i={};function r(e,n){return void 0===e[n.uuid]&amp;&amp;(e[n.uuid]=n.toJSON(t)),n.uuid}if(i.uuid=this.uuid,i.type=this.type,""!==this.name&amp;&amp;(i.name=this.name),!0===this.castShadow&amp;&amp;(i.castShadow=!0),!0===this.receiveShadow&amp;&amp;(i.receiveShadow=!0),!1===this.visible&amp;&amp;(i.visible=!1),!1===this.frustumCulled&amp;&amp;(i.frustumCulled=!1),0!==this.renderOrder&amp;&amp;(i.renderOrder=this.renderOrder),"{}"!==JSON.stringify(this.userData)&amp;&amp;(i.userData=this.userData),i.layers=this.layers.mask,i.matrix=this.matrix.toArray(),!1===this.matrixAutoUpdate&amp;&amp;(i.matrixAutoUpdate=!1),this.isInstancedMesh&amp;&amp;(i.type="InstancedMesh",i.count=this.count,i.instanceMatrix=this.instanceMatrix.toJSON(),null!==this.instanceColor&amp;&amp;(i.instanceColor=this.instanceColor.toJSON())),this.isMesh||this.isLine||this.isPoints){i.geometry=r(t.geometries,this.geometry);const e=this.geometry.parameters;if(void 0!==e&amp;&amp;void 0!==e.shapes){const n=e.shapes;if(Array.isArray(n))for(let e=0,i=n.length;e&lt;i;e++){const i=n[e];r(t.shapes,i)}else r(t.shapes,n)}}if(this.isSkinnedMesh&amp;&amp;(i.bindMode=this.bindMode,i.bindMatrix=this.bindMatrix.toArray(),void 0!==this.skeleton&amp;&amp;(r(t.skeletons,this.skeleton),i.skeleton=this.skeleton.uuid)),void 0!==this.material)if(Array.isArray(this.material)){const e=[];for(let n=0,i=this.material.length;n&lt;i;n++)e.push(r(t.materials,this.material[n]));i.material=e}else i.material=r(t.materials,this.material);if(this.children.length&gt;0){i.children=[];for(let e=0;e&lt;this.children.length;e++)i.children.push(this.children[e].toJSON(t).object)}if(this.animations.length&gt;0){i.animations=[];for(let e=0;e&lt;this.animations.length;e++){const n=this.animations[e];i.animations.push(r(t.animations,n))}}if(e){const e=s(t.geometries),i=s(t.materials),r=s(t.textures),a=s(t.images),o=s(t.shapes),l=s(t.skeletons),c=s(t.animations);e.length&gt;0&amp;&amp;(n.geometries=e),i.length&gt;0&amp;&amp;(n.materials=i),r.length&gt;0&amp;&amp;(n.textures=r),a.length&gt;0&amp;&amp;(n.images=a),o.length&gt;0&amp;&amp;(n.shapes=o),l.length&gt;0&amp;&amp;(n.skeletons=l),c.length&gt;0&amp;&amp;(n.animations=c)}return n.object=i,n;function s(t){const e=[];for(const n in t){const i=t[n];delete i.metadata,e.push(i)}return e}}clone(t){return(new this.constructor).copy(this,t)}copy(t,e=!0){if(this.name=t.name,this.up.copy(t.up),this.position.copy(t.position),this.rotation.order=t.rotation.order,this.quaternion.copy(t.quaternion),this.scale.copy(t.scale),this.matrix.copy(t.matrix),this.matrixWorld.copy(t.matrixWorld),this.matrixAutoUpdate=t.matrixAutoUpdate,this.matrixWorldNeedsUpdate=t.matrixWorldNeedsUpdate,this.layers.mask=t.layers.mask,this.visible=t.visible,this.castShadow=t.castShadow,this.receiveShadow=t.receiveShadow,this.frustumCulled=t.frustumCulled,this.renderOrder=t.renderOrder,this.userData=JSON.parse(JSON.stringify(t.userData)),!0===e)for(let e=0;e&lt;t.children.length;e++){const n=t.children[e];this.add(n.clone())}return this}}Ce.DefaultUp=new Lt(0,1,0),Ce.DefaultMatrixAutoUpdate=!0,Ce.prototype.isObject3D=!0;const Pe=new Lt,De=new Lt,Ie=new yt;class Ne{constructor(t=new Lt(1,0,0),e=0){this.normal=t,this.constant=e}set(t,e){return this.normal.copy(t),this.constant=e,this}setComponents(t,e,n,i){return this.normal.set(t,e,n),this.constant=i,this}setFromNormalAndCoplanarPoint(t,e){return this.normal.copy(t),this.constant=-e.dot(this.normal),this}setFromCoplanarPoints(t,e,n){const i=Pe.subVectors(n,e).cross(De.subVectors(t,e)).normalize();return this.setFromNormalAndCoplanarPoint(i,t),this}copy(t){return this.normal.copy(t.normal),this.constant=t.constant,this}normalize(){const t=1/this.normal.length();return this.normal.multiplyScalar(t),this.constant*=t,this}negate(){return this.constant*=-1,this.normal.negate(),this}distanceToPoint(t){return this.normal.dot(t)+this.constant}distanceToSphere(t){return this.distanceToPoint(t.center)-t.radius}projectPoint(t,e){return void 0===e&amp;&amp;(console.warn("THREE.Plane: .projectPoint() target is now required"),e=new Lt),e.copy(this.normal).multiplyScalar(-this.distanceToPoint(t)).add(t)}intersectLine(t,e){void 0===e&amp;&amp;(console.warn("THREE.Plane: .intersectLine() target is now required"),e=new Lt);const n=t.delta(Pe),i=this.normal.dot(n);if(0===i)return 0===this.distanceToPoint(t.start)?e.copy(t.start):null;const r=-(t.start.dot(this.normal)+this.constant)/i;return r&lt;0||r&gt;1?null:e.copy(n).multiplyScalar(r).add(t.start)}intersectsLine(t){const e=this.distanceToPoint(t.start),n=this.distanceToPoint(t.end);return e&lt;0&amp;&amp;n&gt;0||n&lt;0&amp;&amp;e&gt;0}intersectsBox(t){return t.intersectsPlane(this)}intersectsSphere(t){return t.intersectsPlane(this)}coplanarPoint(t){return void 0===t&amp;&amp;(console.warn("THREE.Plane: .coplanarPoint() target is now required"),t=new Lt),t.copy(this.normal).multiplyScalar(-this.constant)}applyMatrix4(t,e){const n=e||Ie.getNormalMatrix(t),i=this.coplanarPoint(Pe).applyMatrix4(t),r=this.normal.applyMatrix3(n).normalize();return this.constant=-i.dot(r),this}translate(t){return this.constant-=t.dot(this.normal),this}equals(t){return t.normal.equals(this.normal)&amp;&amp;t.constant===this.constant}clone(){return(new this.constructor).copy(this)}}Ne.prototype.isPlane=!0;const Be=new Lt,ze=new Lt,Fe=new Lt,Oe=new Lt,He=new Lt,Ge=new Lt,Ue=new Lt,ke=new Lt,Ve=new Lt,We=new Lt;class je{constructor(t=new Lt,e=new Lt,n=new Lt){this.a=t,this.b=e,this.c=n}static getNormal(t,e,n,i){void 0===i&amp;&amp;(console.warn("THREE.Triangle: .getNormal() target is now required"),i=new Lt),i.subVectors(n,e),Be.subVectors(t,e),i.cross(Be);const r=i.lengthSq();return r&gt;0?i.multiplyScalar(1/Math.sqrt(r)):i.set(0,0,0)}static getBarycoord(t,e,n,i,r){Be.subVectors(i,e),ze.subVectors(n,e),Fe.subVectors(t,e);const s=Be.dot(Be),a=Be.dot(ze),o=Be.dot(Fe),l=ze.dot(ze),c=ze.dot(Fe),h=s*l-a*a;if(void 0===r&amp;&amp;(console.warn("THREE.Triangle: .getBarycoord() target is now required"),r=new Lt),0===h)return r.set(-2,-1,-1);const u=1/h,d=(l*o-a*c)*u,p=(s*c-a*o)*u;return r.set(1-d-p,p,d)}static containsPoint(t,e,n,i){return this.getBarycoord(t,e,n,i,Oe),Oe.x&gt;=0&amp;&amp;Oe.y&gt;=0&amp;&amp;Oe.x+Oe.y&lt;=1}static getUV(t,e,n,i,r,s,a,o){return this.getBarycoord(t,e,n,i,Oe),o.set(0,0),o.addScaledVector(r,Oe.x),o.addScaledVector(s,Oe.y),o.addScaledVector(a,Oe.z),o}static isFrontFacing(t,e,n,i){return Be.subVectors(n,e),ze.subVectors(t,e),Be.cross(ze).dot(i)&lt;0}set(t,e,n){return this.a.copy(t),this.b.copy(e),this.c.copy(n),this}setFromPointsAndIndices(t,e,n,i){return this.a.copy(t[e]),this.b.copy(t[n]),this.c.copy(t[i]),this}clone(){return(new this.constructor).copy(this)}copy(t){return this.a.copy(t.a),this.b.copy(t.b),this.c.copy(t.c),this}getArea(){return Be.subVectors(this.c,this.b),ze.subVectors(this.a,this.b),.5*Be.cross(ze).length()}getMidpoint(t){return void 0===t&amp;&amp;(console.warn("THREE.Triangle: .getMidpoint() target is now required"),t=new Lt),t.addVectors(this.a,this.b).add(this.c).multiplyScalar(1/3)}getNormal(t){return je.getNormal(this.a,this.b,this.c,t)}getPlane(t){return void 0===t&amp;&amp;(console.warn("THREE.Triangle: .getPlane() target is now required"),t=new Ne),t.setFromCoplanarPoints(this.a,this.b,this.c)}getBarycoord(t,e){return je.getBarycoord(t,this.a,this.b,this.c,e)}getUV(t,e,n,i,r){return je.getUV(t,this.a,this.b,this.c,e,n,i,r)}containsPoint(t){return je.containsPoint(t,this.a,this.b,this.c)}isFrontFacing(t){return je.isFrontFacing(this.a,this.b,this.c,t)}intersectsBox(t){return t.intersectsTriangle(this)}closestPointToPoint(t,e){void 0===e&amp;&amp;(console.warn("THREE.Triangle: .closestPointToPoint() target is now required"),e=new Lt);const n=this.a,i=this.b,r=this.c;let s,a;He.subVectors(i,n),Ge.subVectors(r,n),ke.subVectors(t,n);const o=He.dot(ke),l=Ge.dot(ke);if(o&lt;=0&amp;&amp;l&lt;=0)return e.copy(n);Ve.subVectors(t,i);const c=He.dot(Ve),h=Ge.dot(Ve);if(c&gt;=0&amp;&amp;h&lt;=c)return e.copy(i);const u=o*h-c*l;if(u&lt;=0&amp;&amp;o&gt;=0&amp;&amp;c&lt;=0)return s=o/(o-c),e.copy(n).addScaledVector(He,s);We.subVectors(t,r);const d=He.dot(We),p=Ge.dot(We);if(p&gt;=0&amp;&amp;d&lt;=p)return e.copy(r);const m=d*l-o*p;if(m&lt;=0&amp;&amp;l&gt;=0&amp;&amp;p&lt;=0)return a=l/(l-p),e.copy(n).addScaledVector(Ge,a);const f=c*p-d*h;if(f&lt;=0&amp;&amp;h-c&gt;=0&amp;&amp;d-p&gt;=0)return Ue.subVectors(r,i),a=(h-c)/(h-c+(d-p)),e.copy(i).addScaledVector(Ue,a);const g=1/(f+m+u);return s=m*g,a=u*g,e.copy(n).addScaledVector(He,s).addScaledVector(Ge,a)}equals(t){return t.a.equals(this.a)&amp;&amp;t.b.equals(this.b)&amp;&amp;t.c.equals(this.c)}}let qe=0;function Xe(){Object.defineProperty(this,"id",{value:qe++}),this.uuid=ct(),this.name="",this.type="Material",this.fog=!0,this.blending=1,this.side=0,this.vertexColors=!1,this.opacity=1,this.transparent=!1,this.blendSrc=204,this.blendDst=205,this.blendEquation=n,this.blendSrcAlpha=null,this.blendDstAlpha=null,this.blendEquationAlpha=null,this.depthFunc=3,this.depthTest=!0,this.depthWrite=!0,this.stencilWriteMask=255,this.stencilFunc=519,this.stencilRef=0,this.stencilFuncMask=255,this.stencilFail=tt,this.stencilZFail=tt,this.stencilZPass=tt,this.stencilWrite=!1,this.clippingPlanes=null,this.clipIntersection=!1,this.clipShadows=!1,this.shadowSide=null,this.colorWrite=!0,this.precision=null,this.polygonOffset=!1,this.polygonOffsetFactor=0,this.polygonOffsetUnits=0,this.dithering=!1,this.alphaTest=0,this.alphaToCoverage=!1,this.premultipliedAlpha=!1,this.visible=!0,this.toneMapped=!0,this.userData={},this.version=0}Xe.prototype=Object.assign(Object.create(rt.prototype),{constructor:Xe,isMaterial:!0,onBuild:function(){},onBeforeCompile:function(){},customProgramCacheKey:function(){return this.onBeforeCompile.toString()},setValues:function(t){if(void 0!==t)for(const e in t){const n=t[e];if(void 0===n){console.warn("THREE.Material: '"+e+"' parameter is undefined.");continue}if("shading"===e){console.warn("THREE."+this.type+": .shading has been removed. Use the boolean .flatShading instead."),this.flatShading=1===n;continue}const i=this[e];void 0!==i?i&amp;&amp;i.isColor?i.set(n):i&amp;&amp;i.isVector3&amp;&amp;n&amp;&amp;n.isVector3?i.copy(n):this[e]=n:console.warn("THREE."+this.type+": '"+e+"' is not a property of this material.")}},toJSON:function(t){const e=void 0===t||"string"==typeof t;e&amp;&amp;(t={textures:{},images:{}});const n={metadata:{version:4.5,type:"Material",generator:"Material.toJSON"}};function i(t){const e=[];for(const n in t){const i=t[n];delete i.metadata,e.push(i)}return e}if(n.uuid=this.uuid,n.type=this.type,""!==this.name&amp;&amp;(n.name=this.name),this.color&amp;&amp;this.color.isColor&amp;&amp;(n.color=this.color.getHex()),void 0!==this.roughness&amp;&amp;(n.roughness=this.roughness),void 0!==this.metalness&amp;&amp;(n.metalness=this.metalness),this.sheen&amp;&amp;this.sheen.isColor&amp;&amp;(n.sheen=this.sheen.getHex()),this.emissive&amp;&amp;this.emissive.isColor&amp;&amp;(n.emissive=this.emissive.getHex()),this.emissiveIntensity&amp;&amp;1!==this.emissiveIntensity&amp;&amp;(n.emissiveIntensity=this.emissiveIntensity),this.specular&amp;&amp;this.specular.isColor&amp;&amp;(n.specular=this.specular.getHex()),void 0!==this.shininess&amp;&amp;(n.shininess=this.shininess),void 0!==this.clearcoat&amp;&amp;(n.clearcoat=this.clearcoat),void 0!==this.clearcoatRoughness&amp;&amp;(n.clearcoatRoughness=this.clearcoatRoughness),this.clearcoatMap&amp;&amp;this.clearcoatMap.isTexture&amp;&amp;(n.clearcoatMap=this.clearcoatMap.toJSON(t).uuid),this.clearcoatRoughnessMap&amp;&amp;this.clearcoatRoughnessMap.isTexture&amp;&amp;(n.clearcoatRoughnessMap=this.clearcoatRoughnessMap.toJSON(t).uuid),this.clearcoatNormalMap&amp;&amp;this.clearcoatNormalMap.isTexture&amp;&amp;(n.clearcoatNormalMap=this.clearcoatNormalMap.toJSON(t).uuid,n.clearcoatNormalScale=this.clearcoatNormalScale.toArray()),this.map&amp;&amp;this.map.isTexture&amp;&amp;(n.map=this.map.toJSON(t).uuid),this.matcap&amp;&amp;this.matcap.isTexture&amp;&amp;(n.matcap=this.matcap.toJSON(t).uuid),this.alphaMap&amp;&amp;this.alphaMap.isTexture&amp;&amp;(n.alphaMap=this.alphaMap.toJSON(t).uuid),this.lightMap&amp;&amp;this.lightMap.isTexture&amp;&amp;(n.lightMap=this.lightMap.toJSON(t).uuid,n.lightMapIntensity=this.lightMapIntensity),this.aoMap&amp;&amp;this.aoMap.isTexture&amp;&amp;(n.aoMap=this.aoMap.toJSON(t).uuid,n.aoMapIntensity=this.aoMapIntensity),this.bumpMap&amp;&amp;this.bumpMap.isTexture&amp;&amp;(n.bumpMap=this.bumpMap.toJSON(t).uuid,n.bumpScale=this.bumpScale),this.normalMap&amp;&amp;this.normalMap.isTexture&amp;&amp;(n.normalMap=this.normalMap.toJSON(t).uuid,n.normalMapType=this.normalMapType,n.normalScale=this.normalScale.toArray()),this.displacementMap&amp;&amp;this.displacementMap.isTexture&amp;&amp;(n.displacementMap=this.displacementMap.toJSON(t).uuid,n.displacementScale=this.displacementScale,n.displacementBias=this.displacementBias),this.roughnessMap&amp;&amp;this.roughnessMap.isTexture&amp;&amp;(n.roughnessMap=this.roughnessMap.toJSON(t).uuid),this.metalnessMap&amp;&amp;this.metalnessMap.isTexture&amp;&amp;(n.metalnessMap=this.metalnessMap.toJSON(t).uuid),this.emissiveMap&amp;&amp;this.emissiveMap.isTexture&amp;&amp;(n.emissiveMap=this.emissiveMap.toJSON(t).uuid),this.specularMap&amp;&amp;this.specularMap.isTexture&amp;&amp;(n.specularMap=this.specularMap.toJSON(t).uuid),this.envMap&amp;&amp;this.envMap.isTexture&amp;&amp;(n.envMap=this.envMap.toJSON(t).uuid,void 0!==this.combine&amp;&amp;(n.combine=this.combine)),void 0!==this.envMapIntensity&amp;&amp;(n.envMapIntensity=this.envMapIntensity),void 0!==this.reflectivity&amp;&amp;(n.reflectivity=this.reflectivity),void 0!==this.refractionRatio&amp;&amp;(n.refractionRatio=this.refractionRatio),this.gradientMap&amp;&amp;this.gradientMap.isTexture&amp;&amp;(n.gradientMap=this.gradientMap.toJSON(t).uuid),void 0!==this.size&amp;&amp;(n.size=this.size),null!==this.shadowSide&amp;&amp;(n.shadowSide=this.shadowSide),void 0!==this.sizeAttenuation&amp;&amp;(n.sizeAttenuation=this.sizeAttenuation),1!==this.blending&amp;&amp;(n.blending=this.blending),0!==this.side&amp;&amp;(n.side=this.side),this.vertexColors&amp;&amp;(n.vertexColors=!0),this.opacity&lt;1&amp;&amp;(n.opacity=this.opacity),!0===this.transparent&amp;&amp;(n.transparent=this.transparent),n.depthFunc=this.depthFunc,n.depthTest=this.depthTest,n.depthWrite=this.depthWrite,n.colorWrite=this.colorWrite,n.stencilWrite=this.stencilWrite,n.stencilWriteMask=this.stencilWriteMask,n.stencilFunc=this.stencilFunc,n.stencilRef=this.stencilRef,n.stencilFuncMask=this.stencilFuncMask,n.stencilFail=this.stencilFail,n.stencilZFail=this.stencilZFail,n.stencilZPass=this.stencilZPass,this.rotation&amp;&amp;0!==this.rotation&amp;&amp;(n.rotation=this.rotation),!0===this.polygonOffset&amp;&amp;(n.polygonOffset=!0),0!==this.polygonOffsetFactor&amp;&amp;(n.polygonOffsetFactor=this.polygonOffsetFactor),0!==this.polygonOffsetUnits&amp;&amp;(n.polygonOffsetUnits=this.polygonOffsetUnits),this.linewidth&amp;&amp;1!==this.linewidth&amp;&amp;(n.linewidth=this.linewidth),void 0!==this.dashSize&amp;&amp;(n.dashSize=this.dashSize),void 0!==this.gapSize&amp;&amp;(n.gapSize=this.gapSize),void 0!==this.scale&amp;&amp;(n.scale=this.scale),!0===this.dithering&amp;&amp;(n.dithering=!0),this.alphaTest&gt;0&amp;&amp;(n.alphaTest=this.alphaTest),!0===this.alphaToCoverage&amp;&amp;(n.alphaToCoverage=this.alphaToCoverage),!0===this.premultipliedAlpha&amp;&amp;(n.premultipliedAlpha=this.premultipliedAlpha),!0===this.wireframe&amp;&amp;(n.wireframe=this.wireframe),this.wireframeLinewidth&gt;1&amp;&amp;(n.wireframeLinewidth=this.wireframeLinewidth),"round"!==this.wireframeLinecap&amp;&amp;(n.wireframeLinecap=this.wireframeLinecap),"round"!==this.wireframeLinejoin&amp;&amp;(n.wireframeLinejoin=this.wireframeLinejoin),!0===this.morphTargets&amp;&amp;(n.morphTargets=!0),!0===this.morphNormals&amp;&amp;(n.morphNormals=!0),!0===this.skinning&amp;&amp;(n.skinning=!0),!0===this.flatShading&amp;&amp;(n.flatShading=this.flatShading),!1===this.visible&amp;&amp;(n.visible=!1),!1===this.toneMapped&amp;&amp;(n.toneMapped=!1),"{}"!==JSON.stringify(this.userData)&amp;&amp;(n.userData=this.userData),e){const e=i(t.textures),r=i(t.images);e.length&gt;0&amp;&amp;(n.textures=e),r.length&gt;0&amp;&amp;(n.images=r)}return n},clone:function(){return(new this.constructor).copy(this)},copy:function(t){this.name=t.name,this.fog=t.fog,this.blending=t.blending,this.side=t.side,this.vertexColors=t.vertexColors,this.opacity=t.opacity,this.transparent=t.transparent,this.blendSrc=t.blendSrc,this.blendDst=t.blendDst,this.blendEquation=t.blendEquation,this.blendSrcAlpha=t.blendSrcAlpha,this.blendDstAlpha=t.blendDstAlpha,this.blendEquationAlpha=t.blendEquationAlpha,this.depthFunc=t.depthFunc,this.depthTest=t.depthTest,this.depthWrite=t.depthWrite,this.stencilWriteMask=t.stencilWriteMask,this.stencilFunc=t.stencilFunc,this.stencilRef=t.stencilRef,this.stencilFuncMask=t.stencilFuncMask,this.stencilFail=t.stencilFail,this.stencilZFail=t.stencilZFail,this.stencilZPass=t.stencilZPass,this.stencilWrite=t.stencilWrite;const e=t.clippingPlanes;let n=null;if(null!==e){const t=e.length;n=new Array(t);for(let i=0;i!==t;++i)n[i]=e[i].clone()}return this.clippingPlanes=n,this.clipIntersection=t.clipIntersection,this.clipShadows=t.clipShadows,this.shadowSide=t.shadowSide,this.colorWrite=t.colorWrite,this.precision=t.precision,this.polygonOffset=t.polygonOffset,this.polygonOffsetFactor=t.polygonOffsetFactor,this.polygonOffsetUnits=t.polygonOffsetUnits,this.dithering=t.dithering,this.alphaTest=t.alphaTest,this.alphaToCoverage=t.alphaToCoverage,this.premultipliedAlpha=t.premultipliedAlpha,this.visible=t.visible,this.toneMapped=t.toneMapped,this.userData=JSON.parse(JSON.stringify(t.userData)),this},dispose:function(){this.dispatchEvent({type:"dispose"})}}),Object.defineProperty(Xe.prototype,"needsUpdate",{set:function(t){!0===t&amp;&amp;this.version++}});const Ye={aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074},Ze={h:0,s:0,l:0},Je={h:0,s:0,l:0};function Qe(t,e,n){return n&lt;0&amp;&amp;(n+=1),n&gt;1&amp;&amp;(n-=1),n&lt;1/6?t+6*(e-t)*n:n&lt;.5?e:n&lt;2/3?t+6*(e-t)*(2/3-n):t}function Ke(t){return t&lt;.04045?.0773993808*t:Math.pow(.9478672986*t+.0521327014,2.4)}function $e(t){return t&lt;.0031308?12.92*t:1.055*Math.pow(t,.41666)-.055}class tn{constructor(t,e,n){return void 0===e&amp;&amp;void 0===n?this.set(t):this.setRGB(t,e,n)}set(t){return t&amp;&amp;t.isColor?this.copy(t):"number"==typeof t?this.setHex(t):"string"==typeof t&amp;&amp;this.setStyle(t),this}setScalar(t){return this.r=t,this.g=t,this.b=t,this}setHex(t){return t=Math.floor(t),this.r=(t&gt;&gt;16&amp;255)/255,this.g=(t&gt;&gt;8&amp;255)/255,this.b=(255&amp;t)/255,this}setRGB(t,e,n){return this.r=t,this.g=e,this.b=n,this}setHSL(t,e,n){if(t=ut(t,1),e=ht(e,0,1),n=ht(n,0,1),0===e)this.r=this.g=this.b=n;else{const i=n&lt;=.5?n*(1+e):n+e-n*e,r=2*n-i;this.r=Qe(r,i,t+1/3),this.g=Qe(r,i,t),this.b=Qe(r,i,t-1/3)}return this}setStyle(t){function e(e){void 0!==e&amp;&amp;parseFloat(e)&lt;1&amp;&amp;console.warn("THREE.Color: Alpha component of "+t+" will be ignored.")}let n;if(n=/^((?:rgb|hsl)a?)\(([^\)]*)\)/.exec(t)){let t;const i=n[1],r=n[2];switch(i){case"rgb":case"rgba":if(t=/^\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*(?:,\s*(\d*\.?\d+)\s*)?$/.exec(r))return this.r=Math.min(255,parseInt(t[1],10))/255,this.g=Math.min(255,parseInt(t[2],10))/255,this.b=Math.min(255,parseInt(t[3],10))/255,e(t[4]),this;if(t=/^\s*(\d+)\%\s*,\s*(\d+)\%\s*,\s*(\d+)\%\s*(?:,\s*(\d*\.?\d+)\s*)?$/.exec(r))return this.r=Math.min(100,parseInt(t[1],10))/100,this.g=Math.min(100,parseInt(t[2],10))/100,this.b=Math.min(100,parseInt(t[3],10))/100,e(t[4]),this;break;case"hsl":case"hsla":if(t=/^\s*(\d*\.?\d+)\s*,\s*(\d+)\%\s*,\s*(\d+)\%\s*(?:,\s*(\d*\.?\d+)\s*)?$/.exec(r)){const n=parseFloat(t[1])/360,i=parseInt(t[2],10)/100,r=parseInt(t[3],10)/100;return e(t[4]),this.setHSL(n,i,r)}}}else if(n=/^\#([A-Fa-f\d]+)$/.exec(t)){const t=n[1],e=t.length;if(3===e)return this.r=parseInt(t.charAt(0)+t.charAt(0),16)/255,this.g=parseInt(t.charAt(1)+t.charAt(1),16)/255,this.b=parseInt(t.charAt(2)+t.charAt(2),16)/255,this;if(6===e)return this.r=parseInt(t.charAt(0)+t.charAt(1),16)/255,this.g=parseInt(t.charAt(2)+t.charAt(3),16)/255,this.b=parseInt(t.charAt(4)+t.charAt(5),16)/255,this}return t&amp;&amp;t.length&gt;0?this.setColorName(t):this}setColorName(t){const e=Ye[t.toLowerCase()];return void 0!==e?this.setHex(e):console.warn("THREE.Color: Unknown color "+t),this}clone(){return new this.constructor(this.r,this.g,this.b)}copy(t){return this.r=t.r,this.g=t.g,this.b=t.b,this}copyGammaToLinear(t,e=2){return this.r=Math.pow(t.r,e),this.g=Math.pow(t.g,e),this.b=Math.pow(t.b,e),this}copyLinearToGamma(t,e=2){const n=e&gt;0?1/e:1;return this.r=Math.pow(t.r,n),this.g=Math.pow(t.g,n),this.b=Math.pow(t.b,n),this}convertGammaToLinear(t){return this.copyGammaToLinear(this,t),this}convertLinearToGamma(t){return this.copyLinearToGamma(this,t),this}copySRGBToLinear(t){return this.r=Ke(t.r),this.g=Ke(t.g),this.b=Ke(t.b),this}copyLinearToSRGB(t){return this.r=$e(t.r),this.g=$e(t.g),this.b=$e(t.b),this}convertSRGBToLinear(){return this.copySRGBToLinear(this),this}convertLinearToSRGB(){return this.copyLinearToSRGB(this),this}getHex(){return 255*this.r&lt;&lt;16^255*this.g&lt;&lt;8^255*this.b&lt;&lt;0}getHexString(){return("000000"+this.getHex().toString(16)).slice(-6)}getHSL(t){void 0===t&amp;&amp;(console.warn("THREE.Color: .getHSL() target is now required"),t={h:0,s:0,l:0});const e=this.r,n=this.g,i=this.b,r=Math.max(e,n,i),s=Math.min(e,n,i);let a,o;const l=(s+r)/2;if(s===r)a=0,o=0;else{const t=r-s;switch(o=l&lt;=.5?t/(r+s):t/(2-r-s),r){case e:a=(n-i)/t+(n&lt;i?6:0);break;case n:a=(i-e)/t+2;break;case i:a=(e-n)/t+4}a/=6}return t.h=a,t.s=o,t.l=l,t}getStyle(){return"rgb("+(255*this.r|0)+","+(255*this.g|0)+","+(255*this.b|0)+")"}offsetHSL(t,e,n){return this.getHSL(Ze),Ze.h+=t,Ze.s+=e,Ze.l+=n,this.setHSL(Ze.h,Ze.s,Ze.l),this}add(t){return this.r+=t.r,this.g+=t.g,this.b+=t.b,this}addColors(t,e){return this.r=t.r+e.r,this.g=t.g+e.g,this.b=t.b+e.b,this}addScalar(t){return this.r+=t,this.g+=t,this.b+=t,this}sub(t){return this.r=Math.max(0,this.r-t.r),this.g=Math.max(0,this.g-t.g),this.b=Math.max(0,this.b-t.b),this}multiply(t){return this.r*=t.r,this.g*=t.g,this.b*=t.b,this}multiplyScalar(t){return this.r*=t,this.g*=t,this.b*=t,this}lerp(t,e){return this.r+=(t.r-this.r)*e,this.g+=(t.g-this.g)*e,this.b+=(t.b-this.b)*e,this}lerpColors(t,e,n){return this.r=t.r+(e.r-t.r)*n,this.g=t.g+(e.g-t.g)*n,this.b=t.b+(e.b-t.b)*n,this}lerpHSL(t,e){this.getHSL(Ze),t.getHSL(Je);const n=dt(Ze.h,Je.h,e),i=dt(Ze.s,Je.s,e),r=dt(Ze.l,Je.l,e);return this.setHSL(n,i,r),this}equals(t){return t.r===this.r&amp;&amp;t.g===this.g&amp;&amp;t.b===this.b}fromArray(t,e=0){return this.r=t[e],this.g=t[e+1],this.b=t[e+2],this}toArray(t=[],e=0){return t[e]=this.r,t[e+1]=this.g,t[e+2]=this.b,t}fromBufferAttribute(t,e){return this.r=t.getX(e),this.g=t.getY(e),this.b=t.getZ(e),!0===t.normalized&amp;&amp;(this.r/=255,this.g/=255,this.b/=255),this}toJSON(){return this.getHex()}}tn.NAMES=Ye,tn.prototype.isColor=!0,tn.prototype.r=1,tn.prototype.g=1,tn.prototype.b=1;class en extends Xe{constructor(t){super(),this.type="MeshBasicMaterial",this.color=new tn(16777215),this.map=null,this.lightMap=null,this.lightMapIntensity=1,this.aoMap=null,this.aoMapIntensity=1,this.specularMap=null,this.alphaMap=null,this.envMap=null,this.combine=0,this.reflectivity=1,this.refractionRatio=.98,this.wireframe=!1,this.wireframeLinewidth=1,this.wireframeLinecap="round",this.wireframeLinejoin="round",this.skinning=!1,this.morphTargets=!1,this.setValues(t)}copy(t){return super.copy(t),this.color.copy(t.color),this.map=t.map,this.lightMap=t.lightMap,this.lightMapIntensity=t.lightMapIntensity,this.aoMap=t.aoMap,this.aoMapIntensity=t.aoMapIntensity,this.specularMap=t.specularMap,this.alphaMap=t.alphaMap,this.envMap=t.envMap,this.combine=t.combine,this.reflectivity=t.reflectivity,this.refractionRatio=t.refractionRatio,this.wireframe=t.wireframe,this.wireframeLinewidth=t.wireframeLinewidth,this.wireframeLinecap=t.wireframeLinecap,this.wireframeLinejoin=t.wireframeLinejoin,this.skinning=t.skinning,this.morphTargets=t.morphTargets,this}}en.prototype.isMeshBasicMaterial=!0;const nn=new Lt,rn=new vt;class sn{constructor(t,e,n){if(Array.isArray(t))throw new TypeError("THREE.BufferAttribute: array should be a Typed Array.");this.name="",this.array=t,this.itemSize=e,this.count=void 0!==t?t.length/e:0,this.normalized=!0===n,this.usage=et,this.updateRange={offset:0,count:-1},this.version=0,this.onUploadCallback=function(){}}set needsUpdate(t){!0===t&amp;&amp;this.version++}setUsage(t){return this.usage=t,this}copy(t){return this.name=t.name,this.array=new t.array.constructor(t.array),this.itemSize=t.itemSize,this.count=t.count,this.normalized=t.normalized,this.usage=t.usage,this}copyAt(t,e,n){t*=this.itemSize,n*=e.itemSize;for(let i=0,r=this.itemSize;i&lt;r;i++)this.array[t+i]=e.array[n+i];return this}copyArray(t){return this.array.set(t),this}copyColorsArray(t){const e=this.array;let n=0;for(let i=0,r=t.length;i&lt;r;i++){let r=t[i];void 0===r&amp;&amp;(console.warn("THREE.BufferAttribute.copyColorsArray(): color is undefined",i),r=new tn),e[n++]=r.r,e[n++]=r.g,e[n++]=r.b}return this}copyVector2sArray(t){const e=this.array;let n=0;for(let i=0,r=t.length;i&lt;r;i++){let r=t[i];void 0===r&amp;&amp;(console.warn("THREE.BufferAttribute.copyVector2sArray(): vector is undefined",i),r=new vt),e[n++]=r.x,e[n++]=r.y}return this}copyVector3sArray(t){const e=this.array;let n=0;for(let i=0,r=t.length;i&lt;r;i++){let r=t[i];void 0===r&amp;&amp;(console.warn("THREE.BufferAttribute.copyVector3sArray(): vector is undefined",i),r=new Lt),e[n++]=r.x,e[n++]=r.y,e[n++]=r.z}return this}copyVector4sArray(t){const e=this.array;let n=0;for(let i=0,r=t.length;i&lt;r;i++){let r=t[i];void 0===r&amp;&amp;(console.warn("THREE.BufferAttribute.copyVector4sArray(): vector is undefined",i),r=new St),e[n++]=r.x,e[n++]=r.y,e[n++]=r.z,e[n++]=r.w}return this}applyMatrix3(t){if(2===this.itemSize)for(let e=0,n=this.count;e&lt;n;e++)rn.fromBufferAttribute(this,e),rn.applyMatrix3(t),this.setXY(e,rn.x,rn.y);else if(3===this.itemSize)for(let e=0,n=this.count;e&lt;n;e++)nn.fromBufferAttribute(this,e),nn.applyMatrix3(t),this.setXYZ(e,nn.x,nn.y,nn.z);return this}applyMatrix4(t){for(let e=0,n=this.count;e&lt;n;e++)nn.x=this.getX(e),nn.y=this.getY(e),nn.z=this.getZ(e),nn.applyMatrix4(t),this.setXYZ(e,nn.x,nn.y,nn.z);return this}applyNormalMatrix(t){for(let e=0,n=this.count;e&lt;n;e++)nn.x=this.getX(e),nn.y=this.getY(e),nn.z=this.getZ(e),nn.applyNormalMatrix(t),this.setXYZ(e,nn.x,nn.y,nn.z);return this}transformDirection(t){for(let e=0,n=this.count;e&lt;n;e++)nn.x=this.getX(e),nn.y=this.getY(e),nn.z=this.getZ(e),nn.transformDirection(t),this.setXYZ(e,nn.x,nn.y,nn.z);return this}set(t,e=0){return this.array.set(t,e),this}getX(t){return this.array[t*this.itemSize]}setX(t,e){return this.array[t*this.itemSize]=e,this}getY(t){return this.array[t*this.itemSize+1]}setY(t,e){return this.array[t*this.itemSize+1]=e,this}getZ(t){return this.array[t*this.itemSize+2]}setZ(t,e){return this.array[t*this.itemSize+2]=e,this}getW(t){return this.array[t*this.itemSize+3]}setW(t,e){return this.array[t*this.itemSize+3]=e,this}setXY(t,e,n){return t*=this.itemSize,this.array[t+0]=e,this.array[t+1]=n,this}setXYZ(t,e,n,i){return t*=this.itemSize,this.array[t+0]=e,this.array[t+1]=n,this.array[t+2]=i,this}setXYZW(t,e,n,i,r){return t*=this.itemSize,this.array[t+0]=e,this.array[t+1]=n,this.array[t+2]=i,this.array[t+3]=r,this}onUpload(t){return this.onUploadCallback=t,this}clone(){return new this.constructor(this.array,this.itemSize).copy(this)}toJSON(){const t={itemSize:this.itemSize,type:this.array.constructor.name,array:Array.prototype.slice.call(this.array),normalized:this.normalized};return""!==this.name&amp;&amp;(t.name=this.name),this.usage!==et&amp;&amp;(t.usage=this.usage),0===this.updateRange.offset&amp;&amp;-1===this.updateRange.count||(t.updateRange=this.updateRange),t}}sn.prototype.isBufferAttribute=!0;class an extends sn{constructor(t,e,n){super(new Int8Array(t),e,n)}}class on extends sn{constructor(t,e,n){super(new Uint8Array(t),e,n)}}class ln extends sn{constructor(t,e,n){super(new Uint8ClampedArray(t),e,n)}}class cn extends sn{constructor(t,e,n){super(new Int16Array(t),e,n)}}class hn extends sn{constructor(t,e,n){super(new Uint16Array(t),e,n)}}class un extends sn{constructor(t,e,n){super(new Int32Array(t),e,n)}}class dn extends sn{constructor(t,e,n){super(new Uint32Array(t),e,n)}}class pn extends sn{constructor(t,e,n){super(new Uint16Array(t),e,n)}}pn.prototype.isFloat16BufferAttribute=!0;class mn extends sn{constructor(t,e,n){super(new Float32Array(t),e,n)}}class fn extends sn{constructor(t,e,n){super(new Float64Array(t),e,n)}}function gn(t){if(0===t.length)return-1/0;let e=t[0];for(let n=1,i=t.length;n&lt;i;++n)t[n]&gt;e&amp;&amp;(e=t[n]);return e}const vn={Int8Array:Int8Array,Uint8Array:Uint8Array,Uint8ClampedArray:Uint8ClampedArray,Int16Array:Int16Array,Uint16Array:Uint16Array,Int32Array:Int32Array,Uint32Array:Uint32Array,Float32Array:Float32Array,Float64Array:Float64Array};function yn(t,e){return new vn[t](e)}let xn=0;const _n=new se,wn=new Ce,bn=new Lt,Mn=new Pt,Sn=new Pt,Tn=new Lt;class En extends rt{constructor(){super(),Object.defineProperty(this,"id",{value:xn++}),this.uuid=ct(),this.name="",this.type="BufferGeometry",this.index=null,this.attributes={},this.morphAttributes={},this.morphTargetsRelative=!1,this.groups=[],this.boundingBox=null,this.boundingSphere=null,this.drawRange={start:0,count:1/0},this.userData={}}getIndex(){return this.index}setIndex(t){return Array.isArray(t)?this.index=new(gn(t)&gt;65535?dn:hn)(t,1):this.index=t,this}getAttribute(t){return this.attributes[t]}setAttribute(t,e){return this.attributes[t]=e,this}deleteAttribute(t){return delete this.attributes[t],this}hasAttribute(t){return void 0!==this.attributes[t]}addGroup(t,e,n=0){this.groups.push({start:t,count:e,materialIndex:n})}clearGroups(){this.groups=[]}setDrawRange(t,e){this.drawRange.start=t,this.drawRange.count=e}applyMatrix4(t){const e=this.attributes.position;void 0!==e&amp;&amp;(e.applyMatrix4(t),e.needsUpdate=!0);const n=this.attributes.normal;if(void 0!==n){const e=(new yt).getNormalMatrix(t);n.applyNormalMatrix(e),n.needsUpdate=!0}const i=this.attributes.tangent;return void 0!==i&amp;&amp;(i.transformDirection(t),i.needsUpdate=!0),null!==this.boundingBox&amp;&amp;this.computeBoundingBox(),null!==this.boundingSphere&amp;&amp;this.computeBoundingSphere(),this}rotateX(t){return _n.makeRotationX(t),this.applyMatrix4(_n),this}rotateY(t){return _n.makeRotationY(t),this.applyMatrix4(_n),this}rotateZ(t){return _n.makeRotationZ(t),this.applyMatrix4(_n),this}translate(t,e,n){return _n.makeTranslation(t,e,n),this.applyMatrix4(_n),this}scale(t,e,n){return _n.makeScale(t,e,n),this.applyMatrix4(_n),this}lookAt(t){return wn.lookAt(t),wn.updateMatrix(),this.applyMatrix4(wn.matrix),this}center(){return this.computeBoundingBox(),this.boundingBox.getCenter(bn).negate(),this.translate(bn.x,bn.y,bn.z),this}setFromPoints(t){const e=[];for(let n=0,i=t.length;n&lt;i;n++){const i=t[n];e.push(i.x,i.y,i.z||0)}return this.setAttribute("position",new mn(e,3)),this}computeBoundingBox(){null===this.boundingBox&amp;&amp;(this.boundingBox=new Pt);const t=this.attributes.position,e=this.morphAttributes.position;if(t&amp;&amp;t.isGLBufferAttribute)return console.error('THREE.BufferGeometry.computeBoundingBox(): GLBufferAttribute requires a manual bounding box. Alternatively set "mesh.frustumCulled" to "false".',this),void this.boundingBox.set(new Lt(-1/0,-1/0,-1/0),new Lt(1/0,1/0,1/0));if(void 0!==t){if(this.boundingBox.setFromBufferAttribute(t),e)for(let t=0,n=e.length;t&lt;n;t++){const n=e[t];Mn.setFromBufferAttribute(n),this.morphTargetsRelative?(Tn.addVectors(this.boundingBox.min,Mn.min),this.boundingBox.expandByPoint(Tn),Tn.addVectors(this.boundingBox.max,Mn.max),this.boundingBox.expandByPoint(Tn)):(this.boundingBox.expandByPoint(Mn.min),this.boundingBox.expandByPoint(Mn.max))}}else this.boundingBox.makeEmpty();(isNaN(this.boundingBox.min.x)||isNaN(this.boundingBox.min.y)||isNaN(this.boundingBox.min.z))&amp;&amp;console.error('THREE.BufferGeometry.computeBoundingBox(): Computed min/max have NaN values. The "position" attribute is likely to have NaN values.',this)}computeBoundingSphere(){null===this.boundingSphere&amp;&amp;(this.boundingSphere=new Jt);const t=this.attributes.position,e=this.morphAttributes.position;if(t&amp;&amp;t.isGLBufferAttribute)return console.error('THREE.BufferGeometry.computeBoundingSphere(): GLBufferAttribute requires a manual bounding sphere. Alternatively set "mesh.frustumCulled" to "false".',this),void this.boundingSphere.set(new Lt,1/0);if(t){const n=this.boundingSphere.center;if(Mn.setFromBufferAttribute(t),e)for(let t=0,n=e.length;t&lt;n;t++){const n=e[t];Sn.setFromBufferAttribute(n),this.morphTargetsRelative?(Tn.addVectors(Mn.min,Sn.min),Mn.expandByPoint(Tn),Tn.addVectors(Mn.max,Sn.max),Mn.expandByPoint(Tn)):(Mn.expandByPoint(Sn.min),Mn.expandByPoint(Sn.max))}Mn.getCenter(n);let i=0;for(let e=0,r=t.count;e&lt;r;e++)Tn.fromBufferAttribute(t,e),i=Math.max(i,n.distanceToSquared(Tn));if(e)for(let r=0,s=e.length;r&lt;s;r++){const s=e[r],a=this.morphTargetsRelative;for(let e=0,r=s.count;e&lt;r;e++)Tn.fromBufferAttribute(s,e),a&amp;&amp;(bn.fromBufferAttribute(t,e),Tn.add(bn)),i=Math.max(i,n.distanceToSquared(Tn))}this.boundingSphere.radius=Math.sqrt(i),isNaN(this.boundingSphere.radius)&amp;&amp;console.error('THREE.BufferGeometry.computeBoundingSphere(): Computed radius is NaN. The "position" attribute is likely to have NaN values.',this)}}computeFaceNormals(){}computeTangents(){const t=this.index,e=this.attributes;if(null===t||void 0===e.position||void 0===e.normal||void 0===e.uv)return void console.error("THREE.BufferGeometry: .computeTangents() failed. Missing required attributes (index, position, normal or uv)");const n=t.array,i=e.position.array,r=e.normal.array,s=e.uv.array,a=i.length/3;void 0===e.tangent&amp;&amp;this.setAttribute("tangent",new sn(new Float32Array(4*a),4));const o=e.tangent.array,l=[],c=[];for(let t=0;t&lt;a;t++)l[t]=new Lt,c[t]=new Lt;const h=new Lt,u=new Lt,d=new Lt,p=new vt,m=new vt,f=new vt,g=new Lt,v=new Lt;function y(t,e,n){h.fromArray(i,3*t),u.fromArray(i,3*e),d.fromArray(i,3*n),p.fromArray(s,2*t),m.fromArray(s,2*e),f.fromArray(s,2*n),u.sub(h),d.sub(h),m.sub(p),f.sub(p);const r=1/(m.x*f.y-f.x*m.y);isFinite(r)&amp;&amp;(g.copy(u).multiplyScalar(f.y).addScaledVector(d,-m.y).multiplyScalar(r),v.copy(d).multiplyScalar(m.x).addScaledVector(u,-f.x).multiplyScalar(r),l[t].add(g),l[e].add(g),l[n].add(g),c[t].add(v),c[e].add(v),c[n].add(v))}let x=this.groups;0===x.length&amp;&amp;(x=[{start:0,count:n.length}]);for(let t=0,e=x.length;t&lt;e;++t){const e=x[t],i=e.start;for(let t=i,r=i+e.count;t&lt;r;t+=3)y(n[t+0],n[t+1],n[t+2])}const _=new Lt,w=new Lt,b=new Lt,M=new Lt;function S(t){b.fromArray(r,3*t),M.copy(b);const e=l[t];_.copy(e),_.sub(b.multiplyScalar(b.dot(e))).normalize(),w.crossVectors(M,e);const n=w.dot(c[t])&lt;0?-1:1;o[4*t]=_.x,o[4*t+1]=_.y,o[4*t+2]=_.z,o[4*t+3]=n}for(let t=0,e=x.length;t&lt;e;++t){const e=x[t],i=e.start;for(let t=i,r=i+e.count;t&lt;r;t+=3)S(n[t+0]),S(n[t+1]),S(n[t+2])}}computeVertexNormals(){const t=this.index,e=this.getAttribute("position");if(void 0!==e){let n=this.getAttribute("normal");if(void 0===n)n=new sn(new Float32Array(3*e.count),3),this.setAttribute("normal",n);else for(let t=0,e=n.count;t&lt;e;t++)n.setXYZ(t,0,0,0);const i=new Lt,r=new Lt,s=new Lt,a=new Lt,o=new Lt,l=new Lt,c=new Lt,h=new Lt;if(t)for(let u=0,d=t.count;u&lt;d;u+=3){const d=t.getX(u+0),p=t.getX(u+1),m=t.getX(u+2);i.fromBufferAttribute(e,d),r.fromBufferAttribute(e,p),s.fromBufferAttribute(e,m),c.subVectors(s,r),h.subVectors(i,r),c.cross(h),a.fromBufferAttribute(n,d),o.fromBufferAttribute(n,p),l.fromBufferAttribute(n,m),a.add(c),o.add(c),l.add(c),n.setXYZ(d,a.x,a.y,a.z),n.setXYZ(p,o.x,o.y,o.z),n.setXYZ(m,l.x,l.y,l.z)}else for(let t=0,a=e.count;t&lt;a;t+=3)i.fromBufferAttribute(e,t+0),r.fromBufferAttribute(e,t+1),s.fromBufferAttribute(e,t+2),c.subVectors(s,r),h.subVectors(i,r),c.cross(h),n.setXYZ(t+0,c.x,c.y,c.z),n.setXYZ(t+1,c.x,c.y,c.z),n.setXYZ(t+2,c.x,c.y,c.z);this.normalizeNormals(),n.needsUpdate=!0}}merge(t,e){if(!t||!t.isBufferGeometry)return void console.error("THREE.BufferGeometry.merge(): geometry not an instance of THREE.BufferGeometry.",t);void 0===e&amp;&amp;(e=0,console.warn("THREE.BufferGeometry.merge(): Overwriting original geometry, starting at offset=0. Use BufferGeometryUtils.mergeBufferGeometries() for lossless merge."));const n=this.attributes;for(const i in n){if(void 0===t.attributes[i])continue;const r=n[i].array,s=t.attributes[i],a=s.array,o=s.itemSize*e,l=Math.min(a.length,r.length-o);for(let t=0,e=o;t&lt;l;t++,e++)r[e]=a[t]}return this}normalizeNormals(){const t=this.attributes.normal;for(let e=0,n=t.count;e&lt;n;e++)Tn.fromBufferAttribute(t,e),Tn.normalize(),t.setXYZ(e,Tn.x,Tn.y,Tn.z)}toNonIndexed(){function t(t,e){const n=t.array,i=t.itemSize,r=t.normalized,s=new n.constructor(e.length*i);let a=0,o=0;for(let t=0,r=e.length;t&lt;r;t++){a=e[t]*i;for(let t=0;t&lt;i;t++)s[o++]=n[a++]}return new sn(s,i,r)}if(null===this.index)return console.warn("THREE.BufferGeometry.toNonIndexed(): BufferGeometry is already non-indexed."),this;const e=new En,n=this.index.array,i=this.attributes;for(const r in i){const s=t(i[r],n);e.setAttribute(r,s)}const r=this.morphAttributes;for(const i in r){const s=[],a=r[i];for(let e=0,i=a.length;e&lt;i;e++){const i=t(a[e],n);s.push(i)}e.morphAttributes[i]=s}e.morphTargetsRelative=this.morphTargetsRelative;const s=this.groups;for(let t=0,n=s.length;t&lt;n;t++){const n=s[t];e.addGroup(n.start,n.count,n.materialIndex)}return e}toJSON(){const t={metadata:{version:4.5,type:"BufferGeometry",generator:"BufferGeometry.toJSON"}};if(t.uuid=this.uuid,t.type=this.type,""!==this.name&amp;&amp;(t.name=this.name),Object.keys(this.userData).length&gt;0&amp;&amp;(t.userData=this.userData),void 0!==this.parameters){const e=this.parameters;for(const n in e)void 0!==e[n]&amp;&amp;(t[n]=e[n]);return t}t.data={attributes:{}};const e=this.index;null!==e&amp;&amp;(t.data.index={type:e.array.constructor.name,array:Array.prototype.slice.call(e.array)});const n=this.attributes;for(const e in n){const i=n[e];t.data.attributes[e]=i.toJSON(t.data)}const i={};let r=!1;for(const e in this.morphAttributes){const n=this.morphAttributes[e],s=[];for(let e=0,i=n.length;e&lt;i;e++){const i=n[e];s.push(i.toJSON(t.data))}s.length&gt;0&amp;&amp;(i[e]=s,r=!0)}r&amp;&amp;(t.data.morphAttributes=i,t.data.morphTargetsRelative=this.morphTargetsRelative);const s=this.groups;s.length&gt;0&amp;&amp;(t.data.groups=JSON.parse(JSON.stringify(s)));const a=this.boundingSphere;return null!==a&amp;&amp;(t.data.boundingSphere={center:a.center.toArray(),radius:a.radius}),t}clone(){return(new En).copy(this)}copy(t){this.index=null,this.attributes={},this.morphAttributes={},this.groups=[],this.boundingBox=null,this.boundingSphere=null;const e={};this.name=t.name;const n=t.index;null!==n&amp;&amp;this.setIndex(n.clone(e));const i=t.attributes;for(const t in i){const n=i[t];this.setAttribute(t,n.clone(e))}const r=t.morphAttributes;for(const t in r){const n=[],i=r[t];for(let t=0,r=i.length;t&lt;r;t++)n.push(i[t].clone(e));this.morphAttributes[t]=n}this.morphTargetsRelative=t.morphTargetsRelative;const s=t.groups;for(let t=0,e=s.length;t&lt;e;t++){const e=s[t];this.addGroup(e.start,e.count,e.materialIndex)}const a=t.boundingBox;null!==a&amp;&amp;(this.boundingBox=a.clone());const o=t.boundingSphere;return null!==o&amp;&amp;(this.boundingSphere=o.clone()),this.drawRange.start=t.drawRange.start,this.drawRange.count=t.drawRange.count,this.userData=t.userData,this}dispose(){this.dispatchEvent({type:"dispose"})}}En.prototype.isBufferGeometry=!0;const An=new se,Ln=new re,Rn=new Jt,Cn=new Lt,Pn=new Lt,Dn=new Lt,In=new Lt,Nn=new Lt,Bn=new Lt,zn=new Lt,Fn=new Lt,On=new Lt,Hn=new vt,Gn=new vt,Un=new vt,kn=new Lt,Vn=new Lt;class Wn extends Ce{constructor(t=new En,e=new en){super(),this.type="Mesh",this.geometry=t,this.material=e,this.updateMorphTargets()}copy(t){return super.copy(t),void 0!==t.morphTargetInfluences&amp;&amp;(this.morphTargetInfluences=t.morphTargetInfluences.slice()),void 0!==t.morphTargetDictionary&amp;&amp;(this.morphTargetDictionary=Object.assign({},t.morphTargetDictionary)),this.material=t.material,this.geometry=t.geometry,this}updateMorphTargets(){const t=this.geometry;if(t.isBufferGeometry){const e=t.morphAttributes,n=Object.keys(e);if(n.length&gt;0){const t=e[n[0]];if(void 0!==t){this.morphTargetInfluences=[],this.morphTargetDictionary={};for(let e=0,n=t.length;e&lt;n;e++){const n=t[e].name||String(e);this.morphTargetInfluences.push(0),this.morphTargetDictionary[n]=e}}}}else{const e=t.morphTargets;void 0!==e&amp;&amp;e.length&gt;0&amp;&amp;console.error("THREE.Mesh.updateMorphTargets() no longer supports THREE.Geometry. Use THREE.BufferGeometry instead.")}}raycast(t,e){const n=this.geometry,i=this.material,r=this.matrixWorld;if(void 0===i)return;if(null===n.boundingSphere&amp;&amp;n.computeBoundingSphere(),Rn.copy(n.boundingSphere),Rn.applyMatrix4(r),!1===t.ray.intersectsSphere(Rn))return;if(An.copy(r).invert(),Ln.copy(t.ray).applyMatrix4(An),null!==n.boundingBox&amp;&amp;!1===Ln.intersectsBox(n.boundingBox))return;let s;if(n.isBufferGeometry){const r=n.index,a=n.attributes.position,o=n.morphAttributes.position,l=n.morphTargetsRelative,c=n.attributes.uv,h=n.attributes.uv2,u=n.groups,d=n.drawRange;if(null!==r)if(Array.isArray(i))for(let n=0,p=u.length;n&lt;p;n++){const p=u[n],m=i[p.materialIndex];for(let n=Math.max(p.start,d.start),i=Math.min(p.start+p.count,d.start+d.count);n&lt;i;n+=3){const i=r.getX(n),u=r.getX(n+1),d=r.getX(n+2);s=jn(this,m,t,Ln,a,o,l,c,h,i,u,d),s&amp;&amp;(s.faceIndex=Math.floor(n/3),s.face.materialIndex=p.materialIndex,e.push(s))}}else{for(let n=Math.max(0,d.start),u=Math.min(r.count,d.start+d.count);n&lt;u;n+=3){const u=r.getX(n),d=r.getX(n+1),p=r.getX(n+2);s=jn(this,i,t,Ln,a,o,l,c,h,u,d,p),s&amp;&amp;(s.faceIndex=Math.floor(n/3),e.push(s))}}else if(void 0!==a)if(Array.isArray(i))for(let n=0,r=u.length;n&lt;r;n++){const r=u[n],p=i[r.materialIndex];for(let n=Math.max(r.start,d.start),i=Math.min(r.start+r.count,d.start+d.count);n&lt;i;n+=3){s=jn(this,p,t,Ln,a,o,l,c,h,n,n+1,n+2),s&amp;&amp;(s.faceIndex=Math.floor(n/3),s.face.materialIndex=r.materialIndex,e.push(s))}}else{for(let n=Math.max(0,d.start),r=Math.min(a.count,d.start+d.count);n&lt;r;n+=3){s=jn(this,i,t,Ln,a,o,l,c,h,n,n+1,n+2),s&amp;&amp;(s.faceIndex=Math.floor(n/3),e.push(s))}}}else n.isGeometry&amp;&amp;console.error("THREE.Mesh.raycast() no longer supports THREE.Geometry. Use THREE.BufferGeometry instead.")}}function jn(t,e,n,i,r,s,a,o,l,c,h,u){Cn.fromBufferAttribute(r,c),Pn.fromBufferAttribute(r,h),Dn.fromBufferAttribute(r,u);const d=t.morphTargetInfluences;if(e.morphTargets&amp;&amp;s&amp;&amp;d){zn.set(0,0,0),Fn.set(0,0,0),On.set(0,0,0);for(let t=0,e=s.length;t&lt;e;t++){const e=d[t],n=s[t];0!==e&amp;&amp;(In.fromBufferAttribute(n,c),Nn.fromBufferAttribute(n,h),Bn.fromBufferAttribute(n,u),a?(zn.addScaledVector(In,e),Fn.addScaledVector(Nn,e),On.addScaledVector(Bn,e)):(zn.addScaledVector(In.sub(Cn),e),Fn.addScaledVector(Nn.sub(Pn),e),On.addScaledVector(Bn.sub(Dn),e)))}Cn.add(zn),Pn.add(Fn),Dn.add(On)}t.isSkinnedMesh&amp;&amp;e.skinning&amp;&amp;(t.boneTransform(c,Cn),t.boneTransform(h,Pn),t.boneTransform(u,Dn));const p=function(t,e,n,i,r,s,a,o){let l;if(l=1===e.side?i.intersectTriangle(a,s,r,!0,o):i.intersectTriangle(r,s,a,2!==e.side,o),null===l)return null;Vn.copy(o),Vn.applyMatrix4(t.matrixWorld);const c=n.ray.origin.distanceTo(Vn);return c&lt;n.near||c&gt;n.far?null:{distance:c,point:Vn.clone(),object:t}}(t,e,n,i,Cn,Pn,Dn,kn);if(p){o&amp;&amp;(Hn.fromBufferAttribute(o,c),Gn.fromBufferAttribute(o,h),Un.fromBufferAttribute(o,u),p.uv=je.getUV(kn,Cn,Pn,Dn,Hn,Gn,Un,new vt)),l&amp;&amp;(Hn.fromBufferAttribute(l,c),Gn.fromBufferAttribute(l,h),Un.fromBufferAttribute(l,u),p.uv2=je.getUV(kn,Cn,Pn,Dn,Hn,Gn,Un,new vt));const t={a:c,b:h,c:u,normal:new Lt,materialIndex:0};je.getNormal(Cn,Pn,Dn,t.normal),p.face=t}return p}Wn.prototype.isMesh=!0;class qn extends En{constructor(t=1,e=1,n=1,i=1,r=1,s=1){super(),this.type="BoxGeometry",this.parameters={width:t,height:e,depth:n,widthSegments:i,heightSegments:r,depthSegments:s};const a=this;i=Math.floor(i),r=Math.floor(r),s=Math.floor(s);const o=[],l=[],c=[],h=[];let u=0,d=0;function p(t,e,n,i,r,s,p,m,f,g,v){const y=s/f,x=p/g,_=s/2,w=p/2,b=m/2,M=f+1,S=g+1;let T=0,E=0;const A=new Lt;for(let s=0;s&lt;S;s++){const a=s*x-w;for(let o=0;o&lt;M;o++){const u=o*y-_;A[t]=u*i,A[e]=a*r,A[n]=b,l.push(A.x,A.y,A.z),A[t]=0,A[e]=0,A[n]=m&gt;0?1:-1,c.push(A.x,A.y,A.z),h.push(o/f),h.push(1-s/g),T+=1}}for(let t=0;t&lt;g;t++)for(let e=0;e&lt;f;e++){const n=u+e+M*t,i=u+e+M*(t+1),r=u+(e+1)+M*(t+1),s=u+(e+1)+M*t;o.push(n,i,s),o.push(i,r,s),E+=6}a.addGroup(d,E,v),d+=E,u+=T}p("z","y","x",-1,-1,n,e,t,s,r,0),p("z","y","x",1,-1,n,e,-t,s,r,1),p("x","z","y",1,1,t,n,e,i,s,2),p("x","z","y",1,-1,t,n,-e,i,s,3),p("x","y","z",1,-1,t,e,n,i,r,4),p("x","y","z",-1,-1,t,e,-n,i,r,5),this.setIndex(o),this.setAttribute("position",new mn(l,3)),this.setAttribute("normal",new mn(c,3)),this.setAttribute("uv",new mn(h,2))}}function Xn(t){const e={};for(const n in t){e[n]={};for(const i in t[n]){const r=t[n][i];r&amp;&amp;(r.isColor||r.isMatrix3||r.isMatrix4||r.isVector2||r.isVector3||r.isVector4||r.isTexture||r.isQuaternion)?e[n][i]=r.clone():Array.isArray(r)?e[n][i]=r.slice():e[n][i]=r}}return e}function Yn(t){const e={};for(let n=0;n&lt;t.length;n++){const i=Xn(t[n]);for(const t in i)e[t]=i[t]}return e}const Zn={clone:Xn,merge:Yn};class Jn extends Xe{constructor(t){super(),this.type="ShaderMaterial",this.defines={},this.uniforms={},this.vertexShader="void main() {\n\tgl_Position = projectionMatrix * modelViewMatrix * vec4( position, 1.0 );\n}",this.fragmentShader="void main() {\n\tgl_FragColor = vec4( 1.0, 0.0, 0.0, 1.0 );\n}",this.linewidth=1,this.wireframe=!1,this.wireframeLinewidth=1,this.fog=!1,this.lights=!1,this.clipping=!1,this.skinning=!1,this.morphTargets=!1,this.morphNormals=!1,this.extensions={derivatives:!1,fragDepth:!1,drawBuffers:!1,shaderTextureLOD:!1},this.defaultAttributeValues={color:[1,1,1],uv:[0,0],uv2:[0,0]},this.index0AttributeName=void 0,this.uniformsNeedUpdate=!1,this.glslVersion=null,void 0!==t&amp;&amp;(void 0!==t.attributes&amp;&amp;console.error("THREE.ShaderMaterial: attributes should now be defined in THREE.BufferGeometry instead."),this.setValues(t))}copy(t){return super.copy(t),this.fragmentShader=t.fragmentShader,this.vertexShader=t.vertexShader,this.uniforms=Xn(t.uniforms),this.defines=Object.assign({},t.defines),this.wireframe=t.wireframe,this.wireframeLinewidth=t.wireframeLinewidth,this.lights=t.lights,this.clipping=t.clipping,this.skinning=t.skinning,this.morphTargets=t.morphTargets,this.morphNormals=t.morphNormals,this.extensions=Object.assign({},t.extensions),this.glslVersion=t.glslVersion,this}toJSON(t){const e=super.toJSON(t);e.glslVersion=this.glslVersion,e.uniforms={};for(const n in this.uniforms){const i=this.uniforms[n].value;i&amp;&amp;i.isTexture?e.uniforms[n]={type:"t",value:i.toJSON(t).uuid}:i&amp;&amp;i.isColor?e.uniforms[n]={type:"c",value:i.getHex()}:i&amp;&amp;i.isVector2?e.uniforms[n]={type:"v2",value:i.toArray()}:i&amp;&amp;i.isVector3?e.uniforms[n]={type:"v3",value:i.toArray()}:i&amp;&amp;i.isVector4?e.uniforms[n]={type:"v4",value:i.toArray()}:i&amp;&amp;i.isMatrix3?e.uniforms[n]={type:"m3",value:i.toArray()}:i&amp;&amp;i.isMatrix4?e.uniforms[n]={type:"m4",value:i.toArray()}:e.uniforms[n]={value:i}}Object.keys(this.defines).length&gt;0&amp;&amp;(e.defines=this.defines),e.vertexShader=this.vertexShader,e.fragmentShader=this.fragmentShader;const n={};for(const t in this.extensions)!0===this.extensions[t]&amp;&amp;(n[t]=!0);return Object.keys(n).length&gt;0&amp;&amp;(e.extensions=n),e}}Jn.prototype.isShaderMaterial=!0;class Qn extends Ce{constructor(){super(),this.type="Camera",this.matrixWorldInverse=new se,this.projectionMatrix=new se,this.projectionMatrixInverse=new se}copy(t,e){return super.copy(t,e),this.matrixWorldInverse.copy(t.matrixWorldInverse),this.projectionMatrix.copy(t.projectionMatrix),this.projectionMatrixInverse.copy(t.projectionMatrixInverse),this}getWorldDirection(t){void 0===t&amp;&amp;(console.warn("THREE.Camera: .getWorldDirection() target is now required"),t=new Lt),this.updateWorldMatrix(!0,!1);const e=this.matrixWorld.elements;return t.set(-e[8],-e[9],-e[10]).normalize()}updateMatrixWorld(t){super.updateMatrixWorld(t),this.matrixWorldInverse.copy(this.matrixWorld).invert()}updateWorldMatrix(t,e){super.updateWorldMatrix(t,e),this.matrixWorldInverse.copy(this.matrixWorld).invert()}clone(){return(new this.constructor).copy(this)}}Qn.prototype.isCamera=!0;class Kn extends Qn{constructor(t=50,e=1,n=.1,i=2e3){super(),this.type="PerspectiveCamera",this.fov=t,this.zoom=1,this.near=n,this.far=i,this.focus=10,this.aspect=e,this.view=null,this.filmGauge=35,this.filmOffset=0,this.updateProjectionMatrix()}copy(t,e){return super.copy(t,e),this.fov=t.fov,this.zoom=t.zoom,this.near=t.near,this.far=t.far,this.focus=t.focus,this.aspect=t.aspect,this.view=null===t.view?null:Object.assign({},t.view),this.filmGauge=t.filmGauge,this.filmOffset=t.filmOffset,this}setFocalLength(t){const e=.5*this.getFilmHeight()/t;this.fov=2*lt*Math.atan(e),this.updateProjectionMatrix()}getFocalLength(){const t=Math.tan(.5*ot*this.fov);return.5*this.getFilmHeight()/t}getEffectiveFOV(){return 2*lt*Math.atan(Math.tan(.5*ot*this.fov)/this.zoom)}getFilmWidth(){return this.filmGauge*Math.min(this.aspect,1)}getFilmHeight(){return this.filmGauge/Math.max(this.aspect,1)}setViewOffset(t,e,n,i,r,s){this.aspect=t/e,null===this.view&amp;&amp;(this.view={enabled:!0,fullWidth:1,fullHeight:1,offsetX:0,offsetY:0,width:1,height:1}),this.view.enabled=!0,this.view.fullWidth=t,this.view.fullHeight=e,this.view.offsetX=n,this.view.offsetY=i,this.view.width=r,this.view.height=s,this.updateProjectionMatrix()}clearViewOffset(){null!==this.view&amp;&amp;(this.view.enabled=!1),this.updateProjectionMatrix()}updateProjectionMatrix(){const t=this.near;let e=t*Math.tan(.5*ot*this.fov)/this.zoom,n=2*e,i=this.aspect*n,r=-.5*i;const s=this.view;if(null!==this.view&amp;&amp;this.view.enabled){const t=s.fullWidth,a=s.fullHeight;r+=s.offsetX*i/t,e-=s.offsetY*n/a,i*=s.width/t,n*=s.height/a}const a=this.filmOffset;0!==a&amp;&amp;(r+=t*a/this.getFilmWidth()),this.projectionMatrix.makePerspective(r,r+i,e,e-n,t,this.far),this.projectionMatrixInverse.copy(this.projectionMatrix).invert()}toJSON(t){const e=super.toJSON(t);return e.object.fov=this.fov,e.object.zoom=this.zoom,e.object.near=this.near,e.object.far=this.far,e.object.focus=this.focus,e.object.aspect=this.aspect,null!==this.view&amp;&amp;(e.object.view=Object.assign({},this.view)),e.object.filmGauge=this.filmGauge,e.object.filmOffset=this.filmOffset,e}}Kn.prototype.isPerspectiveCamera=!0;const $n=90;class ti extends Ce{constructor(t,e,n){if(super(),this.type="CubeCamera",!0!==n.isWebGLCubeRenderTarget)return void console.error("THREE.CubeCamera: The constructor now expects an instance of WebGLCubeRenderTarget as third parameter.");this.renderTarget=n;const i=new Kn($n,1,t,e);i.layers=this.layers,i.up.set(0,-1,0),i.lookAt(new Lt(1,0,0)),this.add(i);const r=new Kn($n,1,t,e);r.layers=this.layers,r.up.set(0,-1,0),r.lookAt(new Lt(-1,0,0)),this.add(r);const s=new Kn($n,1,t,e);s.layers=this.layers,s.up.set(0,0,1),s.lookAt(new Lt(0,1,0)),this.add(s);const a=new Kn($n,1,t,e);a.layers=this.layers,a.up.set(0,0,-1),a.lookAt(new Lt(0,-1,0)),this.add(a);const o=new Kn($n,1,t,e);o.layers=this.layers,o.up.set(0,-1,0),o.lookAt(new Lt(0,0,1)),this.add(o);const l=new Kn($n,1,t,e);l.layers=this.layers,l.up.set(0,-1,0),l.lookAt(new Lt(0,0,-1)),this.add(l)}update(t,e){null===this.parent&amp;&amp;this.updateMatrixWorld();const n=this.renderTarget,[i,r,s,a,o,l]=this.children,c=t.xr.enabled,h=t.getRenderTarget();t.xr.enabled=!1;const u=n.texture.generateMipmaps;n.texture.generateMipmaps=!1,t.setRenderTarget(n,0),t.render(e,i),t.setRenderTarget(n,1),t.render(e,r),t.setRenderTarget(n,2),t.render(e,s),t.setRenderTarget(n,3),t.render(e,a),t.setRenderTarget(n,4),t.render(e,o),n.texture.generateMipmaps=u,t.setRenderTarget(n,5),t.render(e,l),t.setRenderTarget(h),t.xr.enabled=c}}class ei extends bt{constructor(t,e,n,i,s,a,o,l,c,h){super(t=void 0!==t?t:[],e=void 0!==e?e:r,n,i,s,a,o=void 0!==o?o:T,l,c,h),this._needsFlipEnvMap=!0,this.flipY=!1}get images(){return this.image}set images(t){this.image=t}}ei.prototype.isCubeTexture=!0;class ni extends Tt{constructor(t,e,n){Number.isInteger(e)&amp;&amp;(console.warn("THREE.WebGLCubeRenderTarget: constructor signature is now WebGLCubeRenderTarget( size, options )"),e=n),super(t,t,e),e=e||{},this.texture=new ei(void 0,e.mapping,e.wrapS,e.wrapT,e.magFilter,e.minFilter,e.format,e.type,e.anisotropy,e.encoding),this.texture.generateMipmaps=void 0!==e.generateMipmaps&amp;&amp;e.generateMipmaps,this.texture.minFilter=void 0!==e.minFilter?e.minFilter:g,this.texture._needsFlipEnvMap=!1}fromEquirectangularTexture(t,e){this.texture.type=e.type,this.texture.format=E,this.texture.encoding=e.encoding,this.texture.generateMipmaps=e.generateMipmaps,this.texture.minFilter=e.minFilter,this.texture.magFilter=e.magFilter;const n={uniforms:{tEquirect:{value:null}},vertexShader:"\n\n\t\t\t\tvarying vec3 vWorldDirection;\n\n\t\t\t\tvec3 transformDirection( in vec3 dir, in mat4 matrix ) {\n\n\t\t\t\t\treturn normalize( ( matrix * vec4( dir, 0.0 ) ).xyz );\n\n\t\t\t\t}\n\n\t\t\t\tvoid main() {\n\n\t\t\t\t\tvWorldDirection = transformDirection( position, modelMatrix );\n\n\t\t\t\t\t#include &lt;begin_vertex&gt;\n\t\t\t\t\t#include &lt;project_vertex&gt;\n\n\t\t\t\t}\n\t\t\t",fragmentShader:"\n\n\t\t\t\tuniform sampler2D tEquirect;\n\n\t\t\t\tvarying vec3 vWorldDirection;\n\n\t\t\t\t#include &lt;common&gt;\n\n\t\t\t\tvoid main() {\n\n\t\t\t\t\tvec3 direction = normalize( vWorldDirection );\n\n\t\t\t\t\tvec2 sampleUV = equirectUv( direction );\n\n\t\t\t\t\tgl_FragColor = texture2D( tEquirect, sampleUV );\n\n\t\t\t\t}\n\t\t\t"},i=new qn(5,5,5),r=new Jn({name:"CubemapFromEquirect",uniforms:Xn(n.uniforms),vertexShader:n.vertexShader,fragmentShader:n.fragmentShader,side:1,blending:0});r.uniforms.tEquirect.value=e;const s=new Wn(i,r),a=e.minFilter;e.minFilter===y&amp;&amp;(e.minFilter=g);return new ti(1,10,this).update(t,s),e.minFilter=a,s.geometry.dispose(),s.material.dispose(),this}clear(t,e,n,i){const r=t.getRenderTarget();for(let r=0;r&lt;6;r++)t.setRenderTarget(this,r),t.clear(e,n,i);t.setRenderTarget(r)}}ni.prototype.isWebGLCubeRenderTarget=!0;class ii extends bt{constructor(t,e,n,i,r,s,a,o,l,c,h,u){super(null,s,a,o,l,c,i,r,h,u),this.image={data:t||null,width:e||1,height:n||1},this.magFilter=void 0!==l?l:p,this.minFilter=void 0!==c?c:p,this.generateMipmaps=!1,this.flipY=!1,this.unpackAlignment=1,this.needsUpdate=!0}}ii.prototype.isDataTexture=!0;const ri=new Jt,si=new Lt;class ai{constructor(t=new Ne,e=new Ne,n=new Ne,i=new Ne,r=new Ne,s=new Ne){this.planes=[t,e,n,i,r,s]}set(t,e,n,i,r,s){const a=this.planes;return a[0].copy(t),a[1].copy(e),a[2].copy(n),a[3].copy(i),a[4].copy(r),a[5].copy(s),this}copy(t){const e=this.planes;for(let n=0;n&lt;6;n++)e[n].copy(t.planes[n]);return this}setFromProjectionMatrix(t){const e=this.planes,n=t.elements,i=n[0],r=n[1],s=n[2],a=n[3],o=n[4],l=n[5],c=n[6],h=n[7],u=n[8],d=n[9],p=n[10],m=n[11],f=n[12],g=n[13],v=n[14],y=n[15];return e[0].setComponents(a-i,h-o,m-u,y-f).normalize(),e[1].setComponents(a+i,h+o,m+u,y+f).normalize(),e[2].setComponents(a+r,h+l,m+d,y+g).normalize(),e[3].setComponents(a-r,h-l,m-d,y-g).normalize(),e[4].setComponents(a-s,h-c,m-p,y-v).normalize(),e[5].setComponents(a+s,h+c,m+p,y+v).normalize(),this}intersectsObject(t){const e=t.geometry;return null===e.boundingSphere&amp;&amp;e.computeBoundingSphere(),ri.copy(e.boundingSphere).applyMatrix4(t.matrixWorld),this.intersectsSphere(ri)}intersectsSprite(t){return ri.center.set(0,0,0),ri.radius=.7071067811865476,ri.applyMatrix4(t.matrixWorld),this.intersectsSphere(ri)}intersectsSphere(t){const e=this.planes,n=t.center,i=-t.radius;for(let t=0;t&lt;6;t++){if(e[t].distanceToPoint(n)&lt;i)return!1}return!0}intersectsBox(t){const e=this.planes;for(let n=0;n&lt;6;n++){const i=e[n];if(si.x=i.normal.x&gt;0?t.max.x:t.min.x,si.y=i.normal.y&gt;0?t.max.y:t.min.y,si.z=i.normal.z&gt;0?t.max.z:t.min.z,i.distanceToPoint(si)&lt;0)return!1}return!0}containsPoint(t){const e=this.planes;for(let n=0;n&lt;6;n++)if(e[n].distanceToPoint(t)&lt;0)return!1;return!0}clone(){return(new this.constructor).copy(this)}}function oi(){let t=null,e=!1,n=null,i=null;function r(e,s){n(e,s),i=t.requestAnimationFrame(r)}return{start:function(){!0!==e&amp;&amp;null!==n&amp;&amp;(i=t.requestAnimationFrame(r),e=!0)},stop:function(){t.cancelAnimationFrame(i),e=!1},setAnimationLoop:function(t){n=t},setContext:function(e){t=e}}}function li(t,e){const n=e.isWebGL2,i=new WeakMap;return{get:function(t){return t.isInterleavedBufferAttribute&amp;&amp;(t=t.data),i.get(t)},remove:function(e){e.isInterleavedBufferAttribute&amp;&amp;(e=e.data);const n=i.get(e);n&amp;&amp;(t.deleteBuffer(n.buffer),i.delete(e))},update:function(e,r){if(e.isGLBufferAttribute){const t=i.get(e);return void((!t||t.version&lt;e.version)&amp;&amp;i.set(e,{buffer:e.buffer,type:e.type,bytesPerElement:e.elementSize,version:e.version}))}e.isInterleavedBufferAttribute&amp;&amp;(e=e.data);const s=i.get(e);void 0===s?i.set(e,function(e,i){const r=e.array,s=e.usage,a=t.createBuffer();t.bindBuffer(i,a),t.bufferData(i,r,s),e.onUploadCallback();let o=5126;return r instanceof Float32Array?o=5126:r instanceof Float64Array?console.warn("THREE.WebGLAttributes: Unsupported data buffer format: Float64Array."):r instanceof Uint16Array?e.isFloat16BufferAttribute?n?o=5131:console.warn("THREE.WebGLAttributes: Usage of Float16BufferAttribute requires WebGL2."):o=5123:r instanceof Int16Array?o=5122:r instanceof Uint32Array?o=5125:r instanceof Int32Array?o=5124:r instanceof Int8Array?o=5120:r instanceof Uint8Array&amp;&amp;(o=5121),{buffer:a,type:o,bytesPerElement:r.BYTES_PER_ELEMENT,version:e.version}}(e,r)):s.version&lt;e.version&amp;&amp;(!function(e,i,r){const s=i.array,a=i.updateRange;t.bindBuffer(r,e),-1===a.count?t.bufferSubData(r,0,s):(n?t.bufferSubData(r,a.offset*s.BYTES_PER_ELEMENT,s,a.offset,a.count):t.bufferSubData(r,a.offset*s.BYTES_PER_ELEMENT,s.subarray(a.offset,a.offset+a.count)),a.count=-1)}(s.buffer,e,r),s.version=e.version)}}}class ci extends En{constructor(t=1,e=1,n=1,i=1){super(),this.type="PlaneGeometry",this.parameters={width:t,height:e,widthSegments:n,heightSegments:i};const r=t/2,s=e/2,a=Math.floor(n),o=Math.floor(i),l=a+1,c=o+1,h=t/a,u=e/o,d=[],p=[],m=[],f=[];for(let t=0;t&lt;c;t++){const e=t*u-s;for(let n=0;n&lt;l;n++){const i=n*h-r;p.push(i,-e,0),m.push(0,0,1),f.push(n/a),f.push(1-t/o)}}for(let t=0;t&lt;o;t++)for(let e=0;e&lt;a;e++){const n=e+l*t,i=e+l*(t+1),r=e+1+l*(t+1),s=e+1+l*t;d.push(n,i,s),d.push(i,r,s)}this.setIndex(d),this.setAttribute("position",new mn(p,3)),this.setAttribute("normal",new mn(m,3)),this.setAttribute("uv",new mn(f,2))}}const hi={alphamap_fragment:"#ifdef USE_ALPHAMAP\n\tdiffuseColor.a *= texture2D( alphaMap, vUv ).g;\n#endif",alphamap_pars_fragment:"#ifdef USE_ALPHAMAP\n\tuniform sampler2D alphaMap;\n#endif",alphatest_fragment:"#ifdef ALPHATEST\n\tif ( diffuseColor.a &lt; ALPHATEST ) discard;\n#endif",aomap_fragment:"#ifdef USE_AOMAP\n\tfloat ambientOcclusion = ( texture2D( aoMap, vUv2 ).r - 1.0 ) * aoMapIntensity + 1.0;\n\treflectedLight.indirectDiffuse *= ambientOcclusion;\n\t#if defined( USE_ENVMAP ) &amp;&amp; defined( STANDARD )\n\t\tfloat dotNV = saturate( dot( geometry.normal, geometry.viewDir ) );\n\t\treflectedLight.indirectSpecular *= computeSpecularOcclusion( dotNV, ambientOcclusion, material.specularRoughness );\n\t#endif\n#endif",aomap_pars_fragment:"#ifdef USE_AOMAP\n\tuniform sampler2D aoMap;\n\tuniform float aoMapIntensity;\n#endif",begin_vertex:"vec3 transformed = vec3( position );",beginnormal_vertex:"vec3 objectNormal = vec3( normal );\n#ifdef USE_TANGENT\n\tvec3 objectTangent = vec3( tangent.xyz );\n#endif",bsdfs:"vec2 integrateSpecularBRDF( const in float dotNV, const in float roughness ) {\n\tconst vec4 c0 = vec4( - 1, - 0.0275, - 0.572, 0.022 );\n\tconst vec4 c1 = vec4( 1, 0.0425, 1.04, - 0.04 );\n\tvec4 r = roughness * c0 + c1;\n\tfloat a004 = min( r.x * r.x, exp2( - 9.28 * dotNV ) ) * r.x + r.y;\n\treturn vec2( -1.04, 1.04 ) * a004 + r.zw;\n}\nfloat punctualLightIntensityToIrradianceFactor( const in float lightDistance, const in float cutoffDistance, const in float decayExponent ) {\n#if defined ( PHYSICALLY_CORRECT_LIGHTS )\n\tfloat distanceFalloff = 1.0 / max( pow( lightDistance, decayExponent ), 0.01 );\n\tif( cutoffDistance &gt; 0.0 ) {\n\t\tdistanceFalloff *= pow2( saturate( 1.0 - pow4( lightDistance / cutoffDistance ) ) );\n\t}\n\treturn distanceFalloff;\n#else\n\tif( cutoffDistance &gt; 0.0 &amp;&amp; decayExponent &gt; 0.0 ) {\n\t\treturn pow( saturate( -lightDistance / cutoffDistance + 1.0 ), decayExponent );\n\t}\n\treturn 1.0;\n#endif\n}\nvec3 BRDF_Diffuse_Lambert( const in vec3 diffuseColor ) {\n\treturn RECIPROCAL_PI * diffuseColor;\n}\nvec3 F_Schlick( const in vec3 specularColor, const in float dotLH ) {\n\tfloat fresnel = exp2( ( -5.55473 * dotLH - 6.98316 ) * dotLH );\n\treturn ( 1.0 - specularColor ) * fresnel + specularColor;\n}\nvec3 F_Schlick_RoughnessDependent( const in vec3 F0, const in float dotNV, const in float roughness ) {\n\tfloat fresnel = exp2( ( -5.55473 * dotNV - 6.98316 ) * dotNV );\n\tvec3 Fr = max( vec3( 1.0 - roughness ), F0 ) - F0;\n\treturn Fr * fresnel + F0;\n}\nfloat G_GGX_Smith( const in float alpha, const in float dotNL, const in float dotNV ) {\n\tfloat a2 = pow2( alpha );\n\tfloat gl = dotNL + sqrt( a2 + ( 1.0 - a2 ) * pow2( dotNL ) );\n\tfloat gv = dotNV + sqrt( a2 + ( 1.0 - a2 ) * pow2( dotNV ) );\n\treturn 1.0 / ( gl * gv );\n}\nfloat G_GGX_SmithCorrelated( const in float alpha, const in float dotNL, const in float dotNV ) {\n\tfloat a2 = pow2( alpha );\n\tfloat gv = dotNL * sqrt( a2 + ( 1.0 - a2 ) * pow2( dotNV ) );\n\tfloat gl = dotNV * sqrt( a2 + ( 1.0 - a2 ) * pow2( dotNL ) );\n\treturn 0.5 / max( gv + gl, EPSILON );\n}\nfloat D_GGX( const in float alpha, const in float dotNH ) {\n\tfloat a2 = pow2( alpha );\n\tfloat denom = pow2( dotNH ) * ( a2 - 1.0 ) + 1.0;\n\treturn RECIPROCAL_PI * a2 / pow2( denom );\n}\nvec3 BRDF_Specular_GGX( const in IncidentLight incidentLight, const in vec3 viewDir, const in vec3 normal, const in vec3 specularColor, const in float roughness ) {\n\tfloat alpha = pow2( roughness );\n\tvec3 halfDir = normalize( incidentLight.direction + viewDir );\n\tfloat dotNL = saturate( dot( normal, incidentLight.direction ) );\n\tfloat dotNV = saturate( dot( normal, viewDir ) );\n\tfloat dotNH = saturate( dot( normal, halfDir ) );\n\tfloat dotLH = saturate( dot( incidentLight.direction, halfDir ) );\n\tvec3 F = F_Schlick( specularColor, dotLH );\n\tfloat G = G_GGX_SmithCorrelated( alpha, dotNL, dotNV );\n\tfloat D = D_GGX( alpha, dotNH );\n\treturn F * ( G * D );\n}\nvec2 LTC_Uv( const in vec3 N, const in vec3 V, const in float roughness ) {\n\tconst float LUT_SIZE = 64.0;\n\tconst float LUT_SCALE = ( LUT_SIZE - 1.0 ) / LUT_SIZE;\n\tconst float LUT_BIAS = 0.5 / LUT_SIZE;\n\tfloat dotNV = saturate( dot( N, V ) );\n\tvec2 uv = vec2( roughness, sqrt( 1.0 - dotNV ) );\n\tuv = uv * LUT_SCALE + LUT_BIAS;\n\treturn uv;\n}\nfloat LTC_ClippedSphereFormFactor( const in vec3 f ) {\n\tfloat l = length( f );\n\treturn max( ( l * l + f.z ) / ( l + 1.0 ), 0.0 );\n}\nvec3 LTC_EdgeVectorFormFactor( const in vec3 v1, const in vec3 v2 ) {\n\tfloat x = dot( v1, v2 );\n\tfloat y = abs( x );\n\tfloat a = 0.8543985 + ( 0.4965155 + 0.0145206 * y ) * y;\n\tfloat b = 3.4175940 + ( 4.1616724 + y ) * y;\n\tfloat v = a / b;\n\tfloat theta_sintheta = ( x &gt; 0.0 ) ? v : 0.5 * inversesqrt( max( 1.0 - x * x, 1e-7 ) ) - v;\n\treturn cross( v1, v2 ) * theta_sintheta;\n}\nvec3 LTC_Evaluate( const in vec3 N, const in vec3 V, const in vec3 P, const in mat3 mInv, const in vec3 rectCoords[ 4 ] ) {\n\tvec3 v1 = rectCoords[ 1 ] - rectCoords[ 0 ];\n\tvec3 v2 = rectCoords[ 3 ] - rectCoords[ 0 ];\n\tvec3 lightNormal = cross( v1, v2 );\n\tif( dot( lightNormal, P - rectCoords[ 0 ] ) &lt; 0.0 ) return vec3( 0.0 );\n\tvec3 T1, T2;\n\tT1 = normalize( V - N * dot( V, N ) );\n\tT2 = - cross( N, T1 );\n\tmat3 mat = mInv * transposeMat3( mat3( T1, T2, N ) );\n\tvec3 coords[ 4 ];\n\tcoords[ 0 ] = mat * ( rectCoords[ 0 ] - P );\n\tcoords[ 1 ] = mat * ( rectCoords[ 1 ] - P );\n\tcoords[ 2 ] = mat * ( rectCoords[ 2 ] - P );\n\tcoords[ 3 ] = mat * ( rectCoords[ 3 ] - P );\n\tcoords[ 0 ] = normalize( coords[ 0 ] );\n\tcoords[ 1 ] = normalize( coords[ 1 ] );\n\tcoords[ 2 ] = normalize( coords[ 2 ] );\n\tcoords[ 3 ] = normalize( coords[ 3 ] );\n\tvec3 vectorFormFactor = vec3( 0.0 );\n\tvectorFormFactor += LTC_EdgeVectorFormFactor( coords[ 0 ], coords[ 1 ] );\n\tvectorFormFactor += LTC_EdgeVectorFormFactor( coords[ 1 ], coords[ 2 ] );\n\tvectorFormFactor += LTC_EdgeVectorFormFactor( coords[ 2 ], coords[ 3 ] );\n\tvectorFormFactor += LTC_EdgeVectorFormFactor( coords[ 3 ], coords[ 0 ] );\n\tfloat result = LTC_ClippedSphereFormFactor( vectorFormFactor );\n\treturn vec3( result );\n}\nvec3 BRDF_Specular_GGX_Environment( const in vec3 viewDir, const in vec3 normal, const in vec3 specularColor, const in float roughness ) {\n\tfloat dotNV = saturate( dot( normal, viewDir ) );\n\tvec2 brdf = integrateSpecularBRDF( dotNV, roughness );\n\treturn specularColor * brdf.x + brdf.y;\n}\nvoid BRDF_Specular_Multiscattering_Environment( const in GeometricContext geometry, const in vec3 specularColor, const in float roughness, inout vec3 singleScatter, inout vec3 multiScatter ) {\n\tfloat dotNV = saturate( dot( geometry.normal, geometry.viewDir ) );\n\tvec3 F = F_Schlick_RoughnessDependent( specularColor, dotNV, roughness );\n\tvec2 brdf = integrateSpecularBRDF( dotNV, roughness );\n\tvec3 FssEss = F * brdf.x + brdf.y;\n\tfloat Ess = brdf.x + brdf.y;\n\tfloat Ems = 1.0 - Ess;\n\tvec3 Favg = specularColor + ( 1.0 - specularColor ) * 0.047619;\tvec3 Fms = FssEss * Favg / ( 1.0 - Ems * Favg );\n\tsingleScatter += FssEss;\n\tmultiScatter += Fms * Ems;\n}\nfloat G_BlinnPhong_Implicit( ) {\n\treturn 0.25;\n}\nfloat D_BlinnPhong( const in float shininess, const in float dotNH ) {\n\treturn RECIPROCAL_PI * ( shininess * 0.5 + 1.0 ) * pow( dotNH, shininess );\n}\nvec3 BRDF_Specular_BlinnPhong( const in IncidentLight incidentLight, const in GeometricContext geometry, const in vec3 specularColor, const in float shininess ) {\n\tvec3 halfDir = normalize( incidentLight.direction + geometry.viewDir );\n\tfloat dotNH = saturate( dot( geometry.normal, halfDir ) );\n\tfloat dotLH = saturate( dot( incidentLight.direction, halfDir ) );\n\tvec3 F = F_Schlick( specularColor, dotLH );\n\tfloat G = G_BlinnPhong_Implicit( );\n\tfloat D = D_BlinnPhong( shininess, dotNH );\n\treturn F * ( G * D );\n}\nfloat GGXRoughnessToBlinnExponent( const in float ggxRoughness ) {\n\treturn ( 2.0 / pow2( ggxRoughness + 0.0001 ) - 2.0 );\n}\nfloat BlinnExponentToGGXRoughness( const in float blinnExponent ) {\n\treturn sqrt( 2.0 / ( blinnExponent + 2.0 ) );\n}\n#if defined( USE_SHEEN )\nfloat D_Charlie(float roughness, float NoH) {\n\tfloat invAlpha = 1.0 / roughness;\n\tfloat cos2h = NoH * NoH;\n\tfloat sin2h = max(1.0 - cos2h, 0.0078125);\treturn (2.0 + invAlpha) * pow(sin2h, invAlpha * 0.5) / (2.0 * PI);\n}\nfloat V_Neubelt(float NoV, float NoL) {\n\treturn saturate(1.0 / (4.0 * (NoL + NoV - NoL * NoV)));\n}\nvec3 BRDF_Specular_Sheen( const in float roughness, const in vec3 L, const in GeometricContext geometry, vec3 specularColor ) {\n\tvec3 N = geometry.normal;\n\tvec3 V = geometry.viewDir;\n\tvec3 H = normalize( V + L );\n\tfloat dotNH = saturate( dot( N, H ) );\n\treturn specularColor * D_Charlie( roughness, dotNH ) * V_Neubelt( dot(N, V), dot(N, L) );\n}\n#endif",bumpmap_pars_fragment:"#ifdef USE_BUMPMAP\n\tuniform sampler2D bumpMap;\n\tuniform float bumpScale;\n\tvec2 dHdxy_fwd() {\n\t\tvec2 dSTdx = dFdx( vUv );\n\t\tvec2 dSTdy = dFdy( vUv );\n\t\tfloat Hll = bumpScale * texture2D( bumpMap, vUv ).x;\n\t\tfloat dBx = bumpScale * texture2D( bumpMap, vUv + dSTdx ).x - Hll;\n\t\tfloat dBy = bumpScale * texture2D( bumpMap, vUv + dSTdy ).x - Hll;\n\t\treturn vec2( dBx, dBy );\n\t}\n\tvec3 perturbNormalArb( vec3 surf_pos, vec3 surf_norm, vec2 dHdxy, float faceDirection ) {\n\t\tvec3 vSigmaX = vec3( dFdx( surf_pos.x ), dFdx( surf_pos.y ), dFdx( surf_pos.z ) );\n\t\tvec3 vSigmaY = vec3( dFdy( surf_pos.x ), dFdy( surf_pos.y ), dFdy( surf_pos.z ) );\n\t\tvec3 vN = surf_norm;\n\t\tvec3 R1 = cross( vSigmaY, vN );\n\t\tvec3 R2 = cross( vN, vSigmaX );\n\t\tfloat fDet = dot( vSigmaX, R1 ) * faceDirection;\n\t\tvec3 vGrad = sign( fDet ) * ( dHdxy.x * R1 + dHdxy.y * R2 );\n\t\treturn normalize( abs( fDet ) * surf_norm - vGrad );\n\t}\n#endif",clipping_planes_fragment:"#if NUM_CLIPPING_PLANES &gt; 0\n\tvec4 plane;\n\t#pragma unroll_loop_start\n\tfor ( int i = 0; i &lt; UNION_CLIPPING_PLANES; i ++ ) {\n\t\tplane = clippingPlanes[ i ];\n\t\tif ( dot( vClipPosition, plane.xyz ) &gt; plane.w ) discard;\n\t}\n\t#pragma unroll_loop_end\n\t#if UNION_CLIPPING_PLANES &lt; NUM_CLIPPING_PLANES\n\t\tbool clipped = true;\n\t\t#pragma unroll_loop_start\n\t\tfor ( int i = UNION_CLIPPING_PLANES; i &lt; NUM_CLIPPING_PLANES; i ++ ) {\n\t\t\tplane = clippingPlanes[ i ];\n\t\t\tclipped = ( dot( vClipPosition, plane.xyz ) &gt; plane.w ) &amp;&amp; clipped;\n\t\t}\n\t\t#pragma unroll_loop_end\n\t\tif ( clipped ) discard;\n\t#endif\n#endif",clipping_planes_pars_fragment:"#if NUM_CLIPPING_PLANES &gt; 0\n\tvarying vec3 vClipPosition;\n\tuniform vec4 clippingPlanes[ NUM_CLIPPING_PLANES ];\n#endif",clipping_planes_pars_vertex:"#if NUM_CLIPPING_PLANES &gt; 0\n\tvarying vec3 vClipPosition;\n#endif",clipping_planes_vertex:"#if NUM_CLIPPING_PLANES &gt; 0\n\tvClipPosition = - mvPosition.xyz;\n#endif",color_fragment:"#if defined( USE_COLOR_ALPHA )\n\tdiffuseColor *= vColor;\n#elif defined( USE_COLOR )\n\tdiffuseColor.rgb *= vColor;\n#endif",color_pars_fragment:"#if defined( USE_COLOR_ALPHA )\n\tvarying vec4 vColor;\n#elif defined( USE_COLOR )\n\tvarying vec3 vColor;\n#endif",color_pars_vertex:"#if defined( USE_COLOR_ALPHA )\n\tvarying vec4 vColor;\n#elif defined( USE_COLOR ) || defined( USE_INSTANCING_COLOR )\n\tvarying vec3 vColor;\n#endif",color_vertex:"#if defined( USE_COLOR_ALPHA )\n\tvColor = vec4( 1.0 );\n#elif defined( USE_COLOR ) || defined( USE_INSTANCING_COLOR )\n\tvColor = vec3( 1.0 );\n#endif\n#ifdef USE_COLOR\n\tvColor *= color;\n#endif\n#ifdef USE_INSTANCING_COLOR\n\tvColor.xyz *= instanceColor.xyz;\n#endif",common:"#define PI 3.141592653589793\n#define PI2 6.283185307179586\n#define PI_HALF 1.5707963267948966\n#define RECIPROCAL_PI 0.3183098861837907\n#define RECIPROCAL_PI2 0.15915494309189535\n#define EPSILON 1e-6\n#ifndef saturate\n#define saturate(a) clamp( a, 0.0, 1.0 )\n#endif\n#define whiteComplement(a) ( 1.0 - saturate( a ) )\nfloat pow2( const in float x ) { return x*x; }\nfloat pow3( const in float x ) { return x*x*x; }\nfloat pow4( const in float x ) { float x2 = x*x; return x2*x2; }\nfloat average( const in vec3 color ) { return dot( color, vec3( 0.3333 ) ); }\nhighp float rand( const in vec2 uv ) {\n\tconst highp float a = 12.9898, b = 78.233, c = 43758.5453;\n\thighp float dt = dot( uv.xy, vec2( a,b ) ), sn = mod( dt, PI );\n\treturn fract(sin(sn) * c);\n}\n#ifdef HIGH_PRECISION\n\tfloat precisionSafeLength( vec3 v ) { return length( v ); }\n#else\n\tfloat max3( vec3 v ) { return max( max( v.x, v.y ), v.z ); }\n\tfloat precisionSafeLength( vec3 v ) {\n\t\tfloat maxComponent = max3( abs( v ) );\n\t\treturn length( v / maxComponent ) * maxComponent;\n\t}\n#endif\nstruct IncidentLight {\n\tvec3 color;\n\tvec3 direction;\n\tbool visible;\n};\nstruct ReflectedLight {\n\tvec3 directDiffuse;\n\tvec3 directSpecular;\n\tvec3 indirectDiffuse;\n\tvec3 indirectSpecular;\n};\nstruct GeometricContext {\n\tvec3 position;\n\tvec3 normal;\n\tvec3 viewDir;\n#ifdef CLEARCOAT\n\tvec3 clearcoatNormal;\n#endif\n};\nvec3 transformDirection( in vec3 dir, in mat4 matrix ) {\n\treturn normalize( ( matrix * vec4( dir, 0.0 ) ).xyz );\n}\nvec3 inverseTransformDirection( in vec3 dir, in mat4 matrix ) {\n\treturn normalize( ( vec4( dir, 0.0 ) * matrix ).xyz );\n}\nvec3 projectOnPlane(in vec3 point, in vec3 pointOnPlane, in vec3 planeNormal ) {\n\tfloat distance = dot( planeNormal, point - pointOnPlane );\n\treturn - distance * planeNormal + point;\n}\nfloat sideOfPlane( in vec3 point, in vec3 pointOnPlane, in vec3 planeNormal ) {\n\treturn sign( dot( point - pointOnPlane, planeNormal ) );\n}\nvec3 linePlaneIntersect( in vec3 pointOnLine, in vec3 lineDirection, in vec3 pointOnPlane, in vec3 planeNormal ) {\n\treturn lineDirection * ( dot( planeNormal, pointOnPlane - pointOnLine ) / dot( planeNormal, lineDirection ) ) + pointOnLine;\n}\nmat3 transposeMat3( const in mat3 m ) {\n\tmat3 tmp;\n\ttmp[ 0 ] = vec3( m[ 0 ].x, m[ 1 ].x, m[ 2 ].x );\n\ttmp[ 1 ] = vec3( m[ 0 ].y, m[ 1 ].y, m[ 2 ].y );\n\ttmp[ 2 ] = vec3( m[ 0 ].z, m[ 1 ].z, m[ 2 ].z );\n\treturn tmp;\n}\nfloat linearToRelativeLuminance( const in vec3 color ) {\n\tvec3 weights = vec3( 0.2126, 0.7152, 0.0722 );\n\treturn dot( weights, color.rgb );\n}\nbool isPerspectiveMatrix( mat4 m ) {\n\treturn m[ 2 ][ 3 ] == - 1.0;\n}\nvec2 equirectUv( in vec3 dir ) {\n\tfloat u = atan( dir.z, dir.x ) * RECIPROCAL_PI2 + 0.5;\n\tfloat v = asin( clamp( dir.y, - 1.0, 1.0 ) ) * RECIPROCAL_PI + 0.5;\n\treturn vec2( u, v );\n}",cube_uv_reflection_fragment:"#ifdef ENVMAP_TYPE_CUBE_UV\n\t#define cubeUV_maxMipLevel 8.0\n\t#define cubeUV_minMipLevel 4.0\n\t#define cubeUV_maxTileSize 256.0\n\t#define cubeUV_minTileSize 16.0\n\tfloat getFace( vec3 direction ) {\n\t\tvec3 absDirection = abs( direction );\n\t\tfloat face = - 1.0;\n\t\tif ( absDirection.x &gt; absDirection.z ) {\n\t\t\tif ( absDirection.x &gt; absDirection.y )\n\t\t\t\tface = direction.x &gt; 0.0 ? 0.0 : 3.0;\n\t\t\telse\n\t\t\t\tface = direction.y &gt; 0.0 ? 1.0 : 4.0;\n\t\t} else {\n\t\t\tif ( absDirection.z &gt; absDirection.y )\n\t\t\t\tface = direction.z &gt; 0.0 ? 2.0 : 5.0;\n\t\t\telse\n\t\t\t\tface = direction.y &gt; 0.0 ? 1.0 : 4.0;\n\t\t}\n\t\treturn face;\n\t}\n\tvec2 getUV( vec3 direction, float face ) {\n\t\tvec2 uv;\n\t\tif ( face == 0.0 ) {\n\t\t\tuv = vec2( direction.z, direction.y ) / abs( direction.x );\n\t\t} else if ( face == 1.0 ) {\n\t\t\tuv = vec2( - direction.x, - direction.z ) / abs( direction.y );\n\t\t} else if ( face == 2.0 ) {\n\t\t\tuv = vec2( - direction.x, direction.y ) / abs( direction.z );\n\t\t} else if ( face == 3.0 ) {\n\t\t\tuv = vec2( - direction.z, direction.y ) / abs( direction.x );\n\t\t} else if ( face == 4.0 ) {\n\t\t\tuv = vec2( - direction.x, direction.z ) / abs( direction.y );\n\t\t} else {\n\t\t\tuv = vec2( direction.x, direction.y ) / abs( direction.z );\n\t\t}\n\t\treturn 0.5 * ( uv + 1.0 );\n\t}\n\tvec3 bilinearCubeUV( sampler2D envMap, vec3 direction, float mipInt ) {\n\t\tfloat face = getFace( direction );\n\t\tfloat filterInt = max( cubeUV_minMipLevel - mipInt, 0.0 );\n\t\tmipInt = max( mipInt, cubeUV_minMipLevel );\n\t\tfloat faceSize = exp2( mipInt );\n\t\tfloat texelSize = 1.0 / ( 3.0 * cubeUV_maxTileSize );\n\t\tvec2 uv = getUV( direction, face ) * ( faceSize - 1.0 );\n\t\tvec2 f = fract( uv );\n\t\tuv += 0.5 - f;\n\t\tif ( face &gt; 2.0 ) {\n\t\t\tuv.y += faceSize;\n\t\t\tface -= 3.0;\n\t\t}\n\t\tuv.x += face * faceSize;\n\t\tif ( mipInt &lt; cubeUV_maxMipLevel ) {\n\t\t\tuv.y += 2.0 * cubeUV_maxTileSize;\n\t\t}\n\t\tuv.y += filterInt * 2.0 * cubeUV_minTileSize;\n\t\tuv.x += 3.0 * max( 0.0, cubeUV_maxTileSize - 2.0 * faceSize );\n\t\tuv *= texelSize;\n\t\tvec3 tl = envMapTexelToLinear( texture2D( envMap, uv ) ).rgb;\n\t\tuv.x += texelSize;\n\t\tvec3 tr = envMapTexelToLinear( texture2D( envMap, uv ) ).rgb;\n\t\tuv.y += texelSize;\n\t\tvec3 br = envMapTexelToLinear( texture2D( envMap, uv ) ).rgb;\n\t\tuv.x -= texelSize;\n\t\tvec3 bl = envMapTexelToLinear( texture2D( envMap, uv ) ).rgb;\n\t\tvec3 tm = mix( tl, tr, f.x );\n\t\tvec3 bm = mix( bl, br, f.x );\n\t\treturn mix( tm, bm, f.y );\n\t}\n\t#define r0 1.0\n\t#define v0 0.339\n\t#define m0 - 2.0\n\t#define r1 0.8\n\t#define v1 0.276\n\t#define m1 - 1.0\n\t#define r4 0.4\n\t#define v4 0.046\n\t#define m4 2.0\n\t#define r5 0.305\n\t#define v5 0.016\n\t#define m5 3.0\n\t#define r6 0.21\n\t#define v6 0.0038\n\t#define m6 4.0\n\tfloat roughnessToMip( float roughness ) {\n\t\tfloat mip = 0.0;\n\t\tif ( roughness &gt;= r1 ) {\n\t\t\tmip = ( r0 - roughness ) * ( m1 - m0 ) / ( r0 - r1 ) + m0;\n\t\t} else if ( roughness &gt;= r4 ) {\n\t\t\tmip = ( r1 - roughness ) * ( m4 - m1 ) / ( r1 - r4 ) + m1;\n\t\t} else if ( roughness &gt;= r5 ) {\n\t\t\tmip = ( r4 - roughness ) * ( m5 - m4 ) / ( r4 - r5 ) + m4;\n\t\t} else if ( roughness &gt;= r6 ) {\n\t\t\tmip = ( r5 - roughness ) * ( m6 - m5 ) / ( r5 - r6 ) + m5;\n\t\t} else {\n\t\t\tmip = - 2.0 * log2( 1.16 * roughness );\t\t}\n\t\treturn mip;\n\t}\n\tvec4 textureCubeUV( sampler2D envMap, vec3 sampleDir, float roughness ) {\n\t\tfloat mip = clamp( roughnessToMip( roughness ), m0, cubeUV_maxMipLevel );\n\t\tfloat mipF = fract( mip );\n\t\tfloat mipInt = floor( mip );\n\t\tvec3 color0 = bilinearCubeUV( envMap, sampleDir, mipInt );\n\t\tif ( mipF == 0.0 ) {\n\t\t\treturn vec4( color0, 1.0 );\n\t\t} else {\n\t\t\tvec3 color1 = bilinearCubeUV( envMap, sampleDir, mipInt + 1.0 );\n\t\t\treturn vec4( mix( color0, color1, mipF ), 1.0 );\n\t\t}\n\t}\n#endif",defaultnormal_vertex:"vec3 transformedNormal = objectNormal;\n#ifdef USE_INSTANCING\n\tmat3 m = mat3( instanceMatrix );\n\ttransformedNormal /= vec3( dot( m[ 0 ], m[ 0 ] ), dot( m[ 1 ], m[ 1 ] ), dot( m[ 2 ], m[ 2 ] ) );\n\ttransformedNormal = m * transformedNormal;\n#endif\ntransformedNormal = normalMatrix * transformedNormal;\n#ifdef FLIP_SIDED\n\ttransformedNormal = - transformedNormal;\n#endif\n#ifdef USE_TANGENT\n\tvec3 transformedTangent = ( modelViewMatrix * vec4( objectTangent, 0.0 ) ).xyz;\n\t#ifdef FLIP_SIDED\n\t\ttransformedTangent = - transformedTangent;\n\t#endif\n#endif",displacementmap_pars_vertex:"#ifdef USE_DISPLACEMENTMAP\n\tuniform sampler2D displacementMap;\n\tuniform float displacementScale;\n\tuniform float displacementBias;\n#endif",displacementmap_vertex:"#ifdef USE_DISPLACEMENTMAP\n\ttransformed += normalize( objectNormal ) * ( texture2D( displacementMap, vUv ).x * displacementScale + displacementBias );\n#endif",emissivemap_fragment:"#ifdef USE_EMISSIVEMAP\n\tvec4 emissiveColor = texture2D( emissiveMap, vUv );\n\temissiveColor.rgb = emissiveMapTexelToLinear( emissiveColor ).rgb;\n\ttotalEmissiveRadiance *= emissiveColor.rgb;\n#endif",emissivemap_pars_fragment:"#ifdef USE_EMISSIVEMAP\n\tuniform sampler2D emissiveMap;\n#endif",encodings_fragment:"gl_FragColor = linearToOutputTexel( gl_FragColor );",encodings_pars_fragment:"\nvec4 LinearToLinear( in vec4 value ) {\n\treturn value;\n}\nvec4 GammaToLinear( in vec4 value, in float gammaFactor ) {\n\treturn vec4( pow( value.rgb, vec3( gammaFactor ) ), value.a );\n}\nvec4 LinearToGamma( in vec4 value, in float gammaFactor ) {\n\treturn vec4( pow( value.rgb, vec3( 1.0 / gammaFactor ) ), value.a );\n}\nvec4 sRGBToLinear( in vec4 value ) {\n\treturn vec4( mix( pow( value.rgb * 0.9478672986 + vec3( 0.0521327014 ), vec3( 2.4 ) ), value.rgb * 0.0773993808, vec3( lessThanEqual( value.rgb, vec3( 0.04045 ) ) ) ), value.a );\n}\nvec4 LinearTosRGB( in vec4 value ) {\n\treturn vec4( mix( pow( value.rgb, vec3( 0.41666 ) ) * 1.055 - vec3( 0.055 ), value.rgb * 12.92, vec3( lessThanEqual( value.rgb, vec3( 0.0031308 ) ) ) ), value.a );\n}\nvec4 RGBEToLinear( in vec4 value ) {\n\treturn vec4( value.rgb * exp2( value.a * 255.0 - 128.0 ), 1.0 );\n}\nvec4 LinearToRGBE( in vec4 value ) {\n\tfloat maxComponent = max( max( value.r, value.g ), value.b );\n\tfloat fExp = clamp( ceil( log2( maxComponent ) ), -128.0, 127.0 );\n\treturn vec4( value.rgb / exp2( fExp ), ( fExp + 128.0 ) / 255.0 );\n}\nvec4 RGBMToLinear( in vec4 value, in float maxRange ) {\n\treturn vec4( value.rgb * value.a * maxRange, 1.0 );\n}\nvec4 LinearToRGBM( in vec4 value, in float maxRange ) {\n\tfloat maxRGB = max( value.r, max( value.g, value.b ) );\n\tfloat M = clamp( maxRGB / maxRange, 0.0, 1.0 );\n\tM = ceil( M * 255.0 ) / 255.0;\n\treturn vec4( value.rgb / ( M * maxRange ), M );\n}\nvec4 RGBDToLinear( in vec4 value, in float maxRange ) {\n\treturn vec4( value.rgb * ( ( maxRange / 255.0 ) / value.a ), 1.0 );\n}\nvec4 LinearToRGBD( in vec4 value, in float maxRange ) {\n\tfloat maxRGB = max( value.r, max( value.g, value.b ) );\n\tfloat D = max( maxRange / maxRGB, 1.0 );\n\tD = clamp( floor( D ) / 255.0, 0.0, 1.0 );\n\treturn vec4( value.rgb * ( D * ( 255.0 / maxRange ) ), D );\n}\nconst mat3 cLogLuvM = mat3( 0.2209, 0.3390, 0.4184, 0.1138, 0.6780, 0.7319, 0.0102, 0.1130, 0.2969 );\nvec4 LinearToLogLuv( in vec4 value ) {\n\tvec3 Xp_Y_XYZp = cLogLuvM * value.rgb;\n\tXp_Y_XYZp = max( Xp_Y_XYZp, vec3( 1e-6, 1e-6, 1e-6 ) );\n\tvec4 vResult;\n\tvResult.xy = Xp_Y_XYZp.xy / Xp_Y_XYZp.z;\n\tfloat Le = 2.0 * log2(Xp_Y_XYZp.y) + 127.0;\n\tvResult.w = fract( Le );\n\tvResult.z = ( Le - ( floor( vResult.w * 255.0 ) ) / 255.0 ) / 255.0;\n\treturn vResult;\n}\nconst mat3 cLogLuvInverseM = mat3( 6.0014, -2.7008, -1.7996, -1.3320, 3.1029, -5.7721, 0.3008, -1.0882, 5.6268 );\nvec4 LogLuvToLinear( in vec4 value ) {\n\tfloat Le = value.z * 255.0 + value.w;\n\tvec3 Xp_Y_XYZp;\n\tXp_Y_XYZp.y = exp2( ( Le - 127.0 ) / 2.0 );\n\tXp_Y_XYZp.z = Xp_Y_XYZp.y / value.y;\n\tXp_Y_XYZp.x = value.x * Xp_Y_XYZp.z;\n\tvec3 vRGB = cLogLuvInverseM * Xp_Y_XYZp.rgb;\n\treturn vec4( max( vRGB, 0.0 ), 1.0 );\n}",envmap_fragment:"#ifdef USE_ENVMAP\n\t#ifdef ENV_WORLDPOS\n\t\tvec3 cameraToFrag;\n\t\tif ( isOrthographic ) {\n\t\t\tcameraToFrag = normalize( vec3( - viewMatrix[ 0 ][ 2 ], - viewMatrix[ 1 ][ 2 ], - viewMatrix[ 2 ][ 2 ] ) );\n\t\t} else {\n\t\t\tcameraToFrag = normalize( vWorldPosition - cameraPosition );\n\t\t}\n\t\tvec3 worldNormal = inverseTransformDirection( normal, viewMatrix );\n\t\t#ifdef ENVMAP_MODE_REFLECTION\n\t\t\tvec3 reflectVec = reflect( cameraToFrag, worldNormal );\n\t\t#else\n\t\t\tvec3 reflectVec = refract( cameraToFrag, worldNormal, refractionRatio );\n\t\t#endif\n\t#else\n\t\tvec3 reflectVec = vReflect;\n\t#endif\n\t#ifdef ENVMAP_TYPE_CUBE\n\t\tvec4 envColor = textureCube( envMap, vec3( flipEnvMap * reflectVec.x, reflectVec.yz ) );\n\t#elif defined( ENVMAP_TYPE_CUBE_UV )\n\t\tvec4 envColor = textureCubeUV( envMap, reflectVec, 0.0 );\n\t#else\n\t\tvec4 envColor = vec4( 0.0 );\n\t#endif\n\t#ifndef ENVMAP_TYPE_CUBE_UV\n\t\tenvColor = envMapTexelToLinear( envColor );\n\t#endif\n\t#ifdef ENVMAP_BLENDING_MULTIPLY\n\t\toutgoingLight = mix( outgoingLight, outgoingLight * envColor.xyz, specularStrength * reflectivity );\n\t#elif defined( ENVMAP_BLENDING_MIX )\n\t\toutgoingLight = mix( outgoingLight, envColor.xyz, specularStrength * reflectivity );\n\t#elif defined( ENVMAP_BLENDING_ADD )\n\t\toutgoingLight += envColor.xyz * specularStrength * reflectivity;\n\t#endif\n#endif",envmap_common_pars_fragment:"#ifdef USE_ENVMAP\n\tuniform float envMapIntensity;\n\tuniform float flipEnvMap;\n\tuniform int maxMipLevel;\n\t#ifdef ENVMAP_TYPE_CUBE\n\t\tuniform samplerCube envMap;\n\t#else\n\t\tuniform sampler2D envMap;\n\t#endif\n\t\n#endif",envmap_pars_fragment:"#ifdef USE_ENVMAP\n\tuniform float reflectivity;\n\t#if defined( USE_BUMPMAP ) || defined( USE_NORMALMAP ) || defined( PHONG )\n\t\t#define ENV_WORLDPOS\n\t#endif\n\t#ifdef ENV_WORLDPOS\n\t\tvarying vec3 vWorldPosition;\n\t\tuniform float refractionRatio;\n\t#else\n\t\tvarying vec3 vReflect;\n\t#endif\n#endif",envmap_pars_vertex:"#ifdef USE_ENVMAP\n\t#if defined( USE_BUMPMAP ) || defined( USE_NORMALMAP ) ||defined( PHONG )\n\t\t#define ENV_WORLDPOS\n\t#endif\n\t#ifdef ENV_WORLDPOS\n\t\t\n\t\tvarying vec3 vWorldPosition;\n\t#else\n\t\tvarying vec3 vReflect;\n\t\tuniform float refractionRatio;\n\t#endif\n#endif",envmap_physical_pars_fragment:"#if defined( USE_ENVMAP )\n\t#ifdef ENVMAP_MODE_REFRACTION\n\t\tuniform float refractionRatio;\n\t#endif\n\tvec3 getLightProbeIndirectIrradiance( const in GeometricContext geometry, const in int maxMIPLevel ) {\n\t\tvec3 worldNormal = inverseTransformDirection( geometry.normal, viewMatrix );\n\t\t#ifdef ENVMAP_TYPE_CUBE\n\t\t\tvec3 queryVec = vec3( flipEnvMap * worldNormal.x, worldNormal.yz );\n\t\t\t#ifdef TEXTURE_LOD_EXT\n\t\t\t\tvec4 envMapColor = textureCubeLodEXT( envMap, queryVec, float( maxMIPLevel ) );\n\t\t\t#else\n\t\t\t\tvec4 envMapColor = textureCube( envMap, queryVec, float( maxMIPLevel ) );\n\t\t\t#endif\n\t\t\tenvMapColor.rgb = envMapTexelToLinear( envMapColor ).rgb;\n\t\t#elif defined( ENVMAP_TYPE_CUBE_UV )\n\t\t\tvec4 envMapColor = textureCubeUV( envMap, worldNormal, 1.0 );\n\t\t#else\n\t\t\tvec4 envMapColor = vec4( 0.0 );\n\t\t#endif\n\t\treturn PI * envMapColor.rgb * envMapIntensity;\n\t}\n\tfloat getSpecularMIPLevel( const in float roughness, const in int maxMIPLevel ) {\n\t\tfloat maxMIPLevelScalar = float( maxMIPLevel );\n\t\tfloat sigma = PI * roughness * roughness / ( 1.0 + roughness );\n\t\tfloat desiredMIPLevel = maxMIPLevelScalar + log2( sigma );\n\t\treturn clamp( desiredMIPLevel, 0.0, maxMIPLevelScalar );\n\t}\n\tvec3 getLightProbeIndirectRadiance( const in vec3 viewDir, const in vec3 normal, const in float roughness, const in int maxMIPLevel ) {\n\t\t#ifdef ENVMAP_MODE_REFLECTION\n\t\t\tvec3 reflectVec = reflect( -viewDir, normal );\n\t\t\treflectVec = normalize( mix( reflectVec, normal, roughness * roughness) );\n\t\t#else\n\t\t\tvec3 reflectVec = refract( -viewDir, normal, refractionRatio );\n\t\t#endif\n\t\treflectVec = inverseTransformDirection( reflectVec, viewMatrix );\n\t\tfloat specularMIPLevel = getSpecularMIPLevel( roughness, maxMIPLevel );\n\t\t#ifdef ENVMAP_TYPE_CUBE\n\t\t\tvec3 queryReflectVec = vec3( flipEnvMap * reflectVec.x, reflectVec.yz );\n\t\t\t#ifdef TEXTURE_LOD_EXT\n\t\t\t\tvec4 envMapColor = textureCubeLodEXT( envMap, queryReflectVec, specularMIPLevel );\n\t\t\t#else\n\t\t\t\tvec4 envMapColor = textureCube( envMap, queryReflectVec, specularMIPLevel );\n\t\t\t#endif\n\t\t\tenvMapColor.rgb = envMapTexelToLinear( envMapColor ).rgb;\n\t\t#elif defined( ENVMAP_TYPE_CUBE_UV )\n\t\t\tvec4 envMapColor = textureCubeUV( envMap, reflectVec, roughness );\n\t\t#endif\n\t\treturn envMapColor.rgb * envMapIntensity;\n\t}\n#endif",envmap_vertex:"#ifdef USE_ENVMAP\n\t#ifdef ENV_WORLDPOS\n\t\tvWorldPosition = worldPosition.xyz;\n\t#else\n\t\tvec3 cameraToVertex;\n\t\tif ( isOrthographic ) {\n\t\t\tcameraToVertex = normalize( vec3( - viewMatrix[ 0 ][ 2 ], - viewMatrix[ 1 ][ 2 ], - viewMatrix[ 2 ][ 2 ] ) );\n\t\t} else {\n\t\t\tcameraToVertex = normalize( worldPosition.xyz - cameraPosition );\n\t\t}\n\t\tvec3 worldNormal = inverseTransformDirection( transformedNormal, viewMatrix );\n\t\t#ifdef ENVMAP_MODE_REFLECTION\n\t\t\tvReflect = reflect( cameraToVertex, worldNormal );\n\t\t#else\n\t\t\tvReflect = refract( cameraToVertex, worldNormal, refractionRatio );\n\t\t#endif\n\t#endif\n#endif",fog_vertex:"#ifdef USE_FOG\n\tfogDepth = - mvPosition.z;\n#endif",fog_pars_vertex:"#ifdef USE_FOG\n\tvarying float fogDepth;\n#endif",fog_fragment:"#ifdef USE_FOG\n\t#ifdef FOG_EXP2\n\t\tfloat fogFactor = 1.0 - exp( - fogDensity * fogDensity * fogDepth * fogDepth );\n\t#else\n\t\tfloat fogFactor = smoothstep( fogNear, fogFar, fogDepth );\n\t#endif\n\tgl_FragColor.rgb = mix( gl_FragColor.rgb, fogColor, fogFactor );\n#endif",fog_pars_fragment:"#ifdef USE_FOG\n\tuniform vec3 fogColor;\n\tvarying float fogDepth;\n\t#ifdef FOG_EXP2\n\t\tuniform float fogDensity;\n\t#else\n\t\tuniform float fogNear;\n\t\tuniform float fogFar;\n\t#endif\n#endif",gradientmap_pars_fragment:"#ifdef USE_GRADIENTMAP\n\tuniform sampler2D gradientMap;\n#endif\nvec3 getGradientIrradiance( vec3 normal, vec3 lightDirection ) {\n\tfloat dotNL = dot( normal, lightDirection );\n\tvec2 coord = vec2( dotNL * 0.5 + 0.5, 0.0 );\n\t#ifdef USE_GRADIENTMAP\n\t\treturn texture2D( gradientMap, coord ).rgb;\n\t#else\n\t\treturn ( coord.x &lt; 0.7 ) ? vec3( 0.7 ) : vec3( 1.0 );\n\t#endif\n}",lightmap_fragment:"#ifdef USE_LIGHTMAP\n\tvec4 lightMapTexel= texture2D( lightMap, vUv2 );\n\treflectedLight.indirectDiffuse += PI * lightMapTexelToLinear( lightMapTexel ).rgb * lightMapIntensity;\n#endif",lightmap_pars_fragment:"#ifdef USE_LIGHTMAP\n\tuniform sampler2D lightMap;\n\tuniform float lightMapIntensity;\n#endif",lights_lambert_vertex:"vec3 diffuse = vec3( 1.0 );\nGeometricContext geometry;\ngeometry.position = mvPosition.xyz;\ngeometry.normal = normalize( transformedNormal );\ngeometry.viewDir = ( isOrthographic ) ? vec3( 0, 0, 1 ) : normalize( -mvPosition.xyz );\nGeometricContext backGeometry;\nbackGeometry.position = geometry.position;\nbackGeometry.normal = -geometry.normal;\nbackGeometry.viewDir = geometry.viewDir;\nvLightFront = vec3( 0.0 );\nvIndirectFront = vec3( 0.0 );\n#ifdef DOUBLE_SIDED\n\tvLightBack = vec3( 0.0 );\n\tvIndirectBack = vec3( 0.0 );\n#endif\nIncidentLight directLight;\nfloat dotNL;\nvec3 directLightColor_Diffuse;\nvIndirectFront += getAmbientLightIrradiance( ambientLightColor );\nvIndirectFront += getLightProbeIrradiance( lightProbe, geometry );\n#ifdef DOUBLE_SIDED\n\tvIndirectBack += getAmbientLightIrradiance( ambientLightColor );\n\tvIndirectBack += getLightProbeIrradiance( lightProbe, backGeometry );\n#endif\n#if NUM_POINT_LIGHTS &gt; 0\n\t#pragma unroll_loop_start\n\tfor ( int i = 0; i &lt; NUM_POINT_LIGHTS; i ++ ) {\n\t\tgetPointDirectLightIrradiance( pointLights[ i ], geometry, directLight );\n\t\tdotNL = dot( geometry.normal, directLight.direction );\n\t\tdirectLightColor_Diffuse = PI * directLight.color;\n\t\tvLightFront += saturate( dotNL ) * directLightColor_Diffuse;\n\t\t#ifdef DOUBLE_SIDED\n\t\t\tvLightBack += saturate( -dotNL ) * directLightColor_Diffuse;\n\t\t#endif\n\t}\n\t#pragma unroll_loop_end\n#endif\n#if NUM_SPOT_LIGHTS &gt; 0\n\t#pragma unroll_loop_start\n\tfor ( int i = 0; i &lt; NUM_SPOT_LIGHTS; i ++ ) {\n\t\tgetSpotDirectLightIrradiance( spotLights[ i ], geometry, directLight );\n\t\tdotNL = dot( geometry.normal, directLight.direction );\n\t\tdirectLightColor_Diffuse = PI * directLight.color;\n\t\tvLightFront += saturate( dotNL ) * directLightColor_Diffuse;\n\t\t#ifdef DOUBLE_SIDED\n\t\t\tvLightBack += saturate( -dotNL ) * directLightColor_Diffuse;\n\t\t#endif\n\t}\n\t#pragma unroll_loop_end\n#endif\n#if NUM_DIR_LIGHTS &gt; 0\n\t#pragma unroll_loop_start\n\tfor ( int i = 0; i &lt; NUM_DIR_LIGHTS; i ++ ) {\n\t\tgetDirectionalDirectLightIrradiance( directionalLights[ i ], geometry, directLight );\n\t\tdotNL = dot( geometry.normal, directLight.direction );\n\t\tdirectLightColor_Diffuse = PI * directLight.color;\n\t\tvLightFront += saturate( dotNL ) * directLightColor_Diffuse;\n\t\t#ifdef DOUBLE_SIDED\n\t\t\tvLightBack += saturate( -dotNL ) * directLightColor_Diffuse;\n\t\t#endif\n\t}\n\t#pragma unroll_loop_end\n#endif\n#if NUM_HEMI_LIGHTS &gt; 0\n\t#pragma unroll_loop_start\n\tfor ( int i = 0; i &lt; NUM_HEMI_LIGHTS; i ++ ) {\n\t\tvIndirectFront += getHemisphereLightIrradiance( hemisphereLights[ i ], geometry );\n\t\t#ifdef DOUBLE_SIDED\n\t\t\tvIndirectBack += getHemisphereLightIrradiance( hemisphereLights[ i ], backGeometry );\n\t\t#endif\n\t}\n\t#pragma unroll_loop_end\n#endif",lights_pars_begin:"uniform bool receiveShadow;\nuniform vec3 ambientLightColor;\nuniform vec3 lightProbe[ 9 ];\nvec3 shGetIrradianceAt( in vec3 normal, in vec3 shCoefficients[ 9 ] ) {\n\tfloat x = normal.x, y = normal.y, z = normal.z;\n\tvec3 result = shCoefficients[ 0 ] * 0.886227;\n\tresult += shCoefficients[ 1 ] * 2.0 * 0.511664 * y;\n\tresult += shCoefficients[ 2 ] * 2.0 * 0.511664 * z;\n\tresult += shCoefficients[ 3 ] * 2.0 * 0.511664 * x;\n\tresult += shCoefficients[ 4 ] * 2.0 * 0.429043 * x * y;\n\tresult += shCoefficients[ 5 ] * 2.0 * 0.429043 * y * z;\n\tresult += shCoefficients[ 6 ] * ( 0.743125 * z * z - 0.247708 );\n\tresult += shCoefficients[ 7 ] * 2.0 * 0.429043 * x * z;\n\tresult += shCoefficients[ 8 ] * 0.429043 * ( x * x - y * y );\n\treturn result;\n}\nvec3 getLightProbeIrradiance( const in vec3 lightProbe[ 9 ], const in GeometricContext geometry ) {\n\tvec3 worldNormal = inverseTransformDirection( geometry.normal, viewMatrix );\n\tvec3 irradiance = shGetIrradianceAt( worldNormal, lightProbe );\n\treturn irradiance;\n}\nvec3 getAmbientLightIrradiance( const in vec3 ambientLightColor ) {\n\tvec3 irradiance = ambientLightColor;\n\t#ifndef PHYSICALLY_CORRECT_LIGHTS\n\t\tirradiance *= PI;\n\t#endif\n\treturn irradiance;\n}\n#if NUM_DIR_LIGHTS &gt; 0\n\tstruct DirectionalLight {\n\t\tvec3 direction;\n\t\tvec3 color;\n\t};\n\tuniform DirectionalLight directionalLights[ NUM_DIR_LIGHTS ];\n\tvoid getDirectionalDirectLightIrradiance( const in DirectionalLight directionalLight, const in GeometricContext geometry, out IncidentLight directLight ) {\n\t\tdirectLight.color = directionalLight.color;\n\t\tdirectLight.direction = directionalLight.direction;\n\t\tdirectLight.visible = true;\n\t}\n#endif\n#if NUM_POINT_LIGHTS &gt; 0\n\tstruct PointLight {\n\t\tvec3 position;\n\t\tvec3 color;\n\t\tfloat distance;\n\t\tfloat decay;\n\t};\n\tuniform PointLight pointLights[ NUM_POINT_LIGHTS ];\n\tvoid getPointDirectLightIrradiance( const in PointLight pointLight, const in GeometricContext geometry, out IncidentLight directLight ) {\n\t\tvec3 lVector = pointLight.position - geometry.position;\n\t\tdirectLight.direction = normalize( lVector );\n\t\tfloat lightDistance = length( lVector );\n\t\tdirectLight.color = pointLight.color;\n\t\tdirectLight.color *= punctualLightIntensityToIrradianceFactor( lightDistance, pointLight.distance, pointLight.decay );\n\t\tdirectLight.visible = ( directLight.color != vec3( 0.0 ) );\n\t}\n#endif\n#if NUM_SPOT_LIGHTS &gt; 0\n\tstruct SpotLight {\n\t\tvec3 position;\n\t\tvec3 direction;\n\t\tvec3 color;\n\t\tfloat distance;\n\t\tfloat decay;\n\t\tfloat coneCos;\n\t\tfloat penumbraCos;\n\t};\n\tuniform SpotLight spotLights[ NUM_SPOT_LIGHTS ];\n\tvoid getSpotDirectLightIrradiance( const in SpotLight spotLight, const in GeometricContext geometry, out IncidentLight directLight ) {\n\t\tvec3 lVector = spotLight.position - geometry.position;\n\t\tdirectLight.direction = normalize( lVector );\n\t\tfloat lightDistance = length( lVector );\n\t\tfloat angleCos = dot( directLight.direction, spotLight.direction );\n\t\tif ( angleCos &gt; spotLight.coneCos ) {\n\t\t\tfloat spotEffect = smoothstep( spotLight.coneCos, spotLight.penumbraCos, angleCos );\n\t\t\tdirectLight.color = spotLight.color;\n\t\t\tdirectLight.color *= spotEffect * punctualLightIntensityToIrradianceFactor( lightDistance, spotLight.distance, spotLight.decay );\n\t\t\tdirectLight.visible = true;\n\t\t} else {\n\t\t\tdirectLight.color = vec3( 0.0 );\n\t\t\tdirectLight.visible = false;\n\t\t}\n\t}\n#endif\n#if NUM_RECT_AREA_LIGHTS &gt; 0\n\tstruct RectAreaLight {\n\t\tvec3 color;\n\t\tvec3 position;\n\t\tvec3 halfWidth;\n\t\tvec3 halfHeight;\n\t};\n\tuniform sampler2D ltc_1;\tuniform sampler2D ltc_2;\n\tuniform RectAreaLight rectAreaLights[ NUM_RECT_AREA_LIGHTS ];\n#endif\n#if NUM_HEMI_LIGHTS &gt; 0\n\tstruct HemisphereLight {\n\t\tvec3 direction;\n\t\tvec3 skyColor;\n\t\tvec3 groundColor;\n\t};\n\tuniform HemisphereLight hemisphereLights[ NUM_HEMI_LIGHTS ];\n\tvec3 getHemisphereLightIrradiance( const in HemisphereLight hemiLight, const in GeometricContext geometry ) {\n\t\tfloat dotNL = dot( geometry.normal, hemiLight.direction );\n\t\tfloat hemiDiffuseWeight = 0.5 * dotNL + 0.5;\n\t\tvec3 irradiance = mix( hemiLight.groundColor, hemiLight.skyColor, hemiDiffuseWeight );\n\t\t#ifndef PHYSICALLY_CORRECT_LIGHTS\n\t\t\tirradiance *= PI;\n\t\t#endif\n\t\treturn irradiance;\n\t}\n#endif",lights_toon_fragment:"ToonMaterial material;\nmaterial.diffuseColor = diffuseColor.rgb;",lights_toon_pars_fragment:"varying vec3 vViewPosition;\n#ifndef FLAT_SHADED\n\tvarying vec3 vNormal;\n#endif\nstruct ToonMaterial {\n\tvec3 diffuseColor;\n};\nvoid RE_Direct_Toon( const in IncidentLight directLight, const in GeometricContext geometry, const in ToonMaterial material, inout ReflectedLight reflectedLight ) {\n\tvec3 irradiance = getGradientIrradiance( geometry.normal, directLight.direction ) * directLight.color;\n\t#ifndef PHYSICALLY_CORRECT_LIGHTS\n\t\tirradiance *= PI;\n\t#endif\n\treflectedLight.directDiffuse += irradiance * BRDF_Diffuse_Lambert( material.diffuseColor );\n}\nvoid RE_IndirectDiffuse_Toon( const in vec3 irradiance, const in GeometricContext geometry, const in ToonMaterial material, inout ReflectedLight reflectedLight ) {\n\treflectedLight.indirectDiffuse += irradiance * BRDF_Diffuse_Lambert( material.diffuseColor );\n}\n#define RE_Direct\t\t\t\tRE_Direct_Toon\n#define RE_IndirectDiffuse\t\tRE_IndirectDiffuse_Toon\n#define Material_LightProbeLOD( material )\t(0)",lights_phong_fragment:"BlinnPhongMaterial material;\nmaterial.diffuseColor = diffuseColor.rgb;\nmaterial.specularColor = specular;\nmaterial.specularShininess = shininess;\nmaterial.specularStrength = specularStrength;",lights_phong_pars_fragment:"varying vec3 vViewPosition;\n#ifndef FLAT_SHADED\n\tvarying vec3 vNormal;\n#endif\nstruct BlinnPhongMaterial {\n\tvec3 diffuseColor;\n\tvec3 specularColor;\n\tfloat specularShininess;\n\tfloat specularStrength;\n};\nvoid RE_Direct_BlinnPhong( const in IncidentLight directLight, const in GeometricContext geometry, const in BlinnPhongMaterial material, inout ReflectedLight reflectedLight ) {\n\tfloat dotNL = saturate( dot( geometry.normal, directLight.direction ) );\n\tvec3 irradiance = dotNL * directLight.color;\n\t#ifndef PHYSICALLY_CORRECT_LIGHTS\n\t\tirradiance *= PI;\n\t#endif\n\treflectedLight.directDiffuse += irradiance * BRDF_Diffuse_Lambert( material.diffuseColor );\n\treflectedLight.directSpecular += irradiance * BRDF_Specular_BlinnPhong( directLight, geometry, material.specularColor, material.specularShininess ) * material.specularStrength;\n}\nvoid RE_IndirectDiffuse_BlinnPhong( const in vec3 irradiance, const in GeometricContext geometry, const in BlinnPhongMaterial material, inout ReflectedLight reflectedLight ) {\n\treflectedLight.indirectDiffuse += irradiance * BRDF_Diffuse_Lambert( material.diffuseColor );\n}\n#define RE_Direct\t\t\t\tRE_Direct_BlinnPhong\n#define RE_IndirectDiffuse\t\tRE_IndirectDiffuse_BlinnPhong\n#define Material_LightProbeLOD( material )\t(0)",lights_physical_fragment:"PhysicalMaterial material;\nmaterial.diffuseColor = diffuseColor.rgb * ( 1.0 - metalnessFactor );\nvec3 dxy = max( abs( dFdx( geometryNormal ) ), abs( dFdy( geometryNormal ) ) );\nfloat geometryRoughness = max( max( dxy.x, dxy.y ), dxy.z );\nmaterial.specularRoughness = max( roughnessFactor, 0.0525 );material.specularRoughness += geometryRoughness;\nmaterial.specularRoughness = min( material.specularRoughness, 1.0 );\n#ifdef REFLECTIVITY\n\tmaterial.specularColor = mix( vec3( MAXIMUM_SPECULAR_COEFFICIENT * pow2( reflectivity ) ), diffuseColor.rgb, metalnessFactor );\n#else\n\tmaterial.specularColor = mix( vec3( DEFAULT_SPECULAR_COEFFICIENT ), diffuseColor.rgb, metalnessFactor );\n#endif\n#ifdef CLEARCOAT\n\tmaterial.clearcoat = clearcoat;\n\tmaterial.clearcoatRoughness = clearcoatRoughness;\n\t#ifdef USE_CLEARCOATMAP\n\t\tmaterial.clearcoat *= texture2D( clearcoatMap, vUv ).x;\n\t#endif\n\t#ifdef USE_CLEARCOAT_ROUGHNESSMAP\n\t\tmaterial.clearcoatRoughness *= texture2D( clearcoatRoughnessMap, vUv ).y;\n\t#endif\n\tmaterial.clearcoat = saturate( material.clearcoat );\tmaterial.clearcoatRoughness = max( material.clearcoatRoughness, 0.0525 );\n\tmaterial.clearcoatRoughness += geometryRoughness;\n\tmaterial.clearcoatRoughness = min( material.clearcoatRoughness, 1.0 );\n#endif\n#ifdef USE_SHEEN\n\tmaterial.sheenColor = sheen;\n#endif",lights_physical_pars_fragment:"struct PhysicalMaterial {\n\tvec3 diffuseColor;\n\tfloat specularRoughness;\n\tvec3 specularColor;\n#ifdef CLEARCOAT\n\tfloat clearcoat;\n\tfloat clearcoatRoughness;\n#endif\n#ifdef USE_SHEEN\n\tvec3 sheenColor;\n#endif\n};\n#define MAXIMUM_SPECULAR_COEFFICIENT 0.16\n#define DEFAULT_SPECULAR_COEFFICIENT 0.04\nfloat clearcoatDHRApprox( const in float roughness, const in float dotNL ) {\n\treturn DEFAULT_SPECULAR_COEFFICIENT + ( 1.0 - DEFAULT_SPECULAR_COEFFICIENT ) * ( pow( 1.0 - dotNL, 5.0 ) * pow( 1.0 - roughness, 2.0 ) );\n}\n#if NUM_RECT_AREA_LIGHTS &gt; 0\n\tvoid RE_Direct_RectArea_Physical( const in RectAreaLight rectAreaLight, const in GeometricContext geometry, const in PhysicalMaterial material, inout ReflectedLight reflectedLight ) {\n\t\tvec3 normal = geometry.normal;\n\t\tvec3 viewDir = geometry.viewDir;\n\t\tvec3 position = geometry.position;\n\t\tvec3 lightPos = rectAreaLight.position;\n\t\tvec3 halfWidth = rectAreaLight.halfWidth;\n\t\tvec3 halfHeight = rectAreaLight.halfHeight;\n\t\tvec3 lightColor = rectAreaLight.color;\n\t\tfloat roughness = material.specularRoughness;\n\t\tvec3 rectCoords[ 4 ];\n\t\trectCoords[ 0 ] = lightPos + halfWidth - halfHeight;\t\trectCoords[ 1 ] = lightPos - halfWidth - halfHeight;\n\t\trectCoords[ 2 ] = lightPos - halfWidth + halfHeight;\n\t\trectCoords[ 3 ] = lightPos + halfWidth + halfHeight;\n\t\tvec2 uv = LTC_Uv( normal, viewDir, roughness );\n\t\tvec4 t1 = texture2D( ltc_1, uv );\n\t\tvec4 t2 = texture2D( ltc_2, uv );\n\t\tmat3 mInv = mat3(\n\t\t\tvec3( t1.x, 0, t1.y ),\n\t\t\tvec3(\t\t0, 1,\t\t0 ),\n\t\t\tvec3( t1.z, 0, t1.w )\n\t\t);\n\t\tvec3 fresnel = ( material.specularColor * t2.x + ( vec3( 1.0 ) - material.specularColor ) * t2.y );\n\t\treflectedLight.directSpecular += lightColor * fresnel * LTC_Evaluate( normal, viewDir, position, mInv, rectCoords );\n\t\treflectedLight.directDiffuse += lightColor * material.diffuseColor * LTC_Evaluate( normal, viewDir, position, mat3( 1.0 ), rectCoords );\n\t}\n#endif\nvoid RE_Direct_Physical( const in IncidentLight directLight, const in GeometricContext geometry, const in PhysicalMaterial material, inout ReflectedLight reflectedLight ) {\n\tfloat dotNL = saturate( dot( geometry.normal, directLight.direction ) );\n\tvec3 irradiance = dotNL * directLight.color;\n\t#ifndef PHYSICALLY_CORRECT_LIGHTS\n\t\tirradiance *= PI;\n\t#endif\n\t#ifdef CLEARCOAT\n\t\tfloat ccDotNL = saturate( dot( geometry.clearcoatNormal, directLight.direction ) );\n\t\tvec3 ccIrradiance = ccDotNL * directLight.color;\n\t\t#ifndef PHYSICALLY_CORRECT_LIGHTS\n\t\t\tccIrradiance *= PI;\n\t\t#endif\n\t\tfloat clearcoatDHR = material.clearcoat * clearcoatDHRApprox( material.clearcoatRoughness, ccDotNL );\n\t\treflectedLight.directSpecular += ccIrradiance * material.clearcoat * BRDF_Specular_GGX( directLight, geometry.viewDir, geometry.clearcoatNormal, vec3( DEFAULT_SPECULAR_COEFFICIENT ), material.clearcoatRoughness );\n\t#else\n\t\tfloat clearcoatDHR = 0.0;\n\t#endif\n\t#ifdef USE_SHEEN\n\t\treflectedLight.directSpecular += ( 1.0 - clearcoatDHR ) * irradiance * BRDF_Specular_Sheen(\n\t\t\tmaterial.specularRoughness,\n\t\t\tdirectLight.direction,\n\t\t\tgeometry,\n\t\t\tmaterial.sheenColor\n\t\t);\n\t#else\n\t\treflectedLight.directSpecular += ( 1.0 - clearcoatDHR ) * irradiance * BRDF_Specular_GGX( directLight, geometry.viewDir, geometry.normal, material.specularColor, material.specularRoughness);\n\t#endif\n\treflectedLight.directDiffuse += ( 1.0 - clearcoatDHR ) * irradiance * BRDF_Diffuse_Lambert( material.diffuseColor );\n}\nvoid RE_IndirectDiffuse_Physical( const in vec3 irradiance, const in GeometricContext geometry, const in PhysicalMaterial material, inout ReflectedLight reflectedLight ) {\n\treflectedLight.indirectDiffuse += irradiance * BRDF_Diffuse_Lambert( material.diffuseColor );\n}\nvoid RE_IndirectSpecular_Physical( const in vec3 radiance, const in vec3 irradiance, const in vec3 clearcoatRadiance, const in GeometricContext geometry, const in PhysicalMaterial material, inout ReflectedLight reflectedLight) {\n\t#ifdef CLEARCOAT\n\t\tfloat ccDotNV = saturate( dot( geometry.clearcoatNormal, geometry.viewDir ) );\n\t\treflectedLight.indirectSpecular += clearcoatRadiance * material.clearcoat * BRDF_Specular_GGX_Environment( geometry.viewDir, geometry.clearcoatNormal, vec3( DEFAULT_SPECULAR_COEFFICIENT ), material.clearcoatRoughness );\n\t\tfloat ccDotNL = ccDotNV;\n\t\tfloat clearcoatDHR = material.clearcoat * clearcoatDHRApprox( material.clearcoatRoughness, ccDotNL );\n\t#else\n\t\tfloat clearcoatDHR = 0.0;\n\t#endif\n\tfloat clearcoatInv = 1.0 - clearcoatDHR;\n\tvec3 singleScattering = vec3( 0.0 );\n\tvec3 multiScattering = vec3( 0.0 );\n\tvec3 cosineWeightedIrradiance = irradiance * RECIPROCAL_PI;\n\tBRDF_Specular_Multiscattering_Environment( geometry, material.specularColor, material.specularRoughness, singleScattering, multiScattering );\n\tvec3 diffuse = material.diffuseColor * ( 1.0 - ( singleScattering + multiScattering ) );\n\treflectedLight.indirectSpecular += clearcoatInv * radiance * singleScattering;\n\treflectedLight.indirectSpecular += multiScattering * cosineWeightedIrradiance;\n\treflectedLight.indirectDiffuse += diffuse * cosineWeightedIrradiance;\n}\n#define RE_Direct\t\t\t\tRE_Direct_Physical\n#define RE_Direct_RectArea\t\tRE_Direct_RectArea_Physical\n#define RE_IndirectDiffuse\t\tRE_IndirectDiffuse_Physical\n#define RE_IndirectSpecular\t\tRE_IndirectSpecular_Physical\nfloat computeSpecularOcclusion( const in float dotNV, const in float ambientOcclusion, const in float roughness ) {\n\treturn saturate( pow( dotNV + ambientOcclusion, exp2( - 16.0 * roughness - 1.0 ) ) - 1.0 + ambientOcclusion );\n}",lights_fragment_begin:"\nGeometricContext geometry;\ngeometry.position = - vViewPosition;\ngeometry.normal = normal;\ngeometry.viewDir = ( isOrthographic ) ? vec3( 0, 0, 1 ) : normalize( vViewPosition );\n#ifdef CLEARCOAT\n\tgeometry.clearcoatNormal = clearcoatNormal;\n#endif\nIncidentLight directLight;\n#if ( NUM_POINT_LIGHTS &gt; 0 ) &amp;&amp; defined( RE_Direct )\n\tPointLight pointLight;\n\t#if defined( USE_SHADOWMAP ) &amp;&amp; NUM_POINT_LIGHT_SHADOWS &gt; 0\n\tPointLightShadow pointLightShadow;\n\t#endif\n\t#pragma unroll_loop_start\n\tfor ( int i = 0; i &lt; NUM_POINT_LIGHTS; i ++ ) {\n\t\tpointLight = pointLights[ i ];\n\t\tgetPointDirectLightIrradiance( pointLight, geometry, directLight );\n\t\t#if defined( USE_SHADOWMAP ) &amp;&amp; ( UNROLLED_LOOP_INDEX &lt; NUM_POINT_LIGHT_SHADOWS )\n\t\tpointLightShadow = pointLightShadows[ i ];\n\t\tdirectLight.color *= all( bvec2( directLight.visible, receiveShadow ) ) ? getPointShadow( pointShadowMap[ i ], pointLightShadow.shadowMapSize, pointLightShadow.shadowBias, pointLightShadow.shadowRadius, vPointShadowCoord[ i ], pointLightShadow.shadowCameraNear, pointLightShadow.shadowCameraFar ) : 1.0;\n\t\t#endif\n\t\tRE_Direct( directLight, geometry, material, reflectedLight );\n\t}\n\t#pragma unroll_loop_end\n#endif\n#if ( NUM_SPOT_LIGHTS &gt; 0 ) &amp;&amp; defined( RE_Direct )\n\tSpotLight spotLight;\n\t#if defined( USE_SHADOWMAP ) &amp;&amp; NUM_SPOT_LIGHT_SHADOWS &gt; 0\n\tSpotLightShadow spotLightShadow;\n\t#endif\n\t#pragma unroll_loop_start\n\tfor ( int i = 0; i &lt; NUM_SPOT_LIGHTS; i ++ ) {\n\t\tspotLight = spotLights[ i ];\n\t\tgetSpotDirectLightIrradiance( spotLight, geometry, directLight );\n\t\t#if defined( USE_SHADOWMAP ) &amp;&amp; ( UNROLLED_LOOP_INDEX &lt; NUM_SPOT_LIGHT_SHADOWS )\n\t\tspotLightShadow = spotLightShadows[ i ];\n\t\tdirectLight.color *= all( bvec2( directLight.visible, receiveShadow ) ) ? getShadow( spotShadowMap[ i ], spotLightShadow.shadowMapSize, spotLightShadow.shadowBias, spotLightShadow.shadowRadius, vSpotShadowCoord[ i ] ) : 1.0;\n\t\t#endif\n\t\tRE_Direct( directLight, geometry, material, reflectedLight );\n\t}\n\t#pragma unroll_loop_end\n#endif\n#if ( NUM_DIR_LIGHTS &gt; 0 ) &amp;&amp; defined( RE_Direct )\n\tDirectionalLight directionalLight;\n\t#if defined( USE_SHADOWMAP ) &amp;&amp; NUM_DIR_LIGHT_SHADOWS &gt; 0\n\tDirectionalLightShadow directionalLightShadow;\n\t#endif\n\t#pragma unroll_loop_start\n\tfor ( int i = 0; i &lt; NUM_DIR_LIGHTS; i ++ ) {\n\t\tdirectionalLight = directionalLights[ i ];\n\t\tgetDirectionalDirectLightIrradiance( directionalLight, geometry, directLight );\n\t\t#if defined( USE_SHADOWMAP ) &amp;&amp; ( UNROLLED_LOOP_INDEX &lt; NUM_DIR_LIGHT_SHADOWS )\n\t\tdirectionalLightShadow = directionalLightShadows[ i ];\n\t\tdirectLight.color *= all( bvec2( directLight.visible, receiveShadow ) ) ? getShadow( directionalShadowMap[ i ], directionalLightShadow.shadowMapSize, directionalLightShadow.shadowBias, directionalLightShadow.shadowRadius, vDirectionalShadowCoord[ i ] ) : 1.0;\n\t\t#endif\n\t\tRE_Direct( directLight, geometry, material, reflectedLight );\n\t}\n\t#pragma unroll_loop_end\n#endif\n#if ( NUM_RECT_AREA_LIGHTS &gt; 0 ) &amp;&amp; defined( RE_Direct_RectArea )\n\tRectAreaLight rectAreaLight;\n\t#pragma unroll_loop_start\n\tfor ( int i = 0; i &lt; NUM_RECT_AREA_LIGHTS; i ++ ) {\n\t\trectAreaLight = rectAreaLights[ i ];\n\t\tRE_Direct_RectArea( rectAreaLight, geometry, material, reflectedLight );\n\t}\n\t#pragma unroll_loop_end\n#endif\n#if defined( RE_IndirectDiffuse )\n\tvec3 iblIrradiance = vec3( 0.0 );\n\tvec3 irradiance = getAmbientLightIrradiance( ambientLightColor );\n\tirradiance += getLightProbeIrradiance( lightProbe, geometry );\n\t#if ( NUM_HEMI_LIGHTS &gt; 0 )\n\t\t#pragma unroll_loop_start\n\t\tfor ( int i = 0; i &lt; NUM_HEMI_LIGHTS; i ++ ) {\n\t\t\tirradiance += getHemisphereLightIrradiance( hemisphereLights[ i ], geometry );\n\t\t}\n\t\t#pragma unroll_loop_end\n\t#endif\n#endif\n#if defined( RE_IndirectSpecular )\n\tvec3 radiance = vec3( 0.0 );\n\tvec3 clearcoatRadiance = vec3( 0.0 );\n#endif",lights_fragment_maps:"#if defined( RE_IndirectDiffuse )\n\t#ifdef USE_LIGHTMAP\n\t\tvec4 lightMapTexel= texture2D( lightMap, vUv2 );\n\t\tvec3 lightMapIrradiance = lightMapTexelToLinear( lightMapTexel ).rgb * lightMapIntensity;\n\t\t#ifndef PHYSICALLY_CORRECT_LIGHTS\n\t\t\tlightMapIrradiance *= PI;\n\t\t#endif\n\t\tirradiance += lightMapIrradiance;\n\t#endif\n\t#if defined( USE_ENVMAP ) &amp;&amp; defined( STANDARD ) &amp;&amp; defined( ENVMAP_TYPE_CUBE_UV )\n\t\tiblIrradiance += getLightProbeIndirectIrradiance( geometry, maxMipLevel );\n\t#endif\n#endif\n#if defined( USE_ENVMAP ) &amp;&amp; defined( RE_IndirectSpecular )\n\tradiance += getLightProbeIndirectRadiance( geometry.viewDir, geometry.normal, material.specularRoughness, maxMipLevel );\n\t#ifdef CLEARCOAT\n\t\tclearcoatRadiance += getLightProbeIndirectRadiance( geometry.viewDir, geometry.clearcoatNormal, material.clearcoatRoughness, maxMipLevel );\n\t#endif\n#endif",lights_fragment_end:"#if defined( RE_IndirectDiffuse )\n\tRE_IndirectDiffuse( irradiance, geometry, material, reflectedLight );\n#endif\n#if defined( RE_IndirectSpecular )\n\tRE_IndirectSpecular( radiance, iblIrradiance, clearcoatRadiance, geometry, material, reflectedLight );\n#endif",logdepthbuf_fragment:"#if defined( USE_LOGDEPTHBUF ) &amp;&amp; defined( USE_LOGDEPTHBUF_EXT )\n\tgl_FragDepthEXT = vIsPerspective == 0.0 ? gl_FragCoord.z : log2( vFragDepth ) * logDepthBufFC * 0.5;\n#endif",logdepthbuf_pars_fragment:"#if defined( USE_LOGDEPTHBUF ) &amp;&amp; defined( USE_LOGDEPTHBUF_EXT )\n\tuniform float logDepthBufFC;\n\tvarying float vFragDepth;\n\tvarying float vIsPerspective;\n#endif",logdepthbuf_pars_vertex:"#ifdef USE_LOGDEPTHBUF\n\t#ifdef USE_LOGDEPTHBUF_EXT\n\t\tvarying float vFragDepth;\n\t\tvarying float vIsPerspective;\n\t#else\n\t\tuniform float logDepthBufFC;\n\t#endif\n#endif",logdepthbuf_vertex:"#ifdef USE_LOGDEPTHBUF\n\t#ifdef USE_LOGDEPTHBUF_EXT\n\t\tvFragDepth = 1.0 + gl_Position.w;\n\t\tvIsPerspective = float( isPerspectiveMatrix( projectionMatrix ) );\n\t#else\n\t\tif ( isPerspectiveMatrix( projectionMatrix ) ) {\n\t\t\tgl_Position.z = log2( max( EPSILON, gl_Position.w + 1.0 ) ) * logDepthBufFC - 1.0;\n\t\t\tgl_Position.z *= gl_Position.w;\n\t\t}\n\t#endif\n#endif",map_fragment:"#ifdef USE_MAP\n\tvec4 texelColor = texture2D( map, vUv );\n\ttexelColor = mapTexelToLinear( texelColor );\n\tdiffuseColor *= texelColor;\n#endif",map_pars_fragment:"#ifdef USE_MAP\n\tuniform sampler2D map;\n#endif",map_particle_fragment:"#if defined( USE_MAP ) || defined( USE_ALPHAMAP )\n\tvec2 uv = ( uvTransform * vec3( gl_PointCoord.x, 1.0 - gl_PointCoord.y, 1 ) ).xy;\n#endif\n#ifdef USE_MAP\n\tvec4 mapTexel = texture2D( map, uv );\n\tdiffuseColor *= mapTexelToLinear( mapTexel );\n#endif\n#ifdef USE_ALPHAMAP\n\tdiffuseColor.a *= texture2D( alphaMap, uv ).g;\n#endif",map_particle_pars_fragment:"#if defined( USE_MAP ) || defined( USE_ALPHAMAP )\n\tuniform mat3 uvTransform;\n#endif\n#ifdef USE_MAP\n\tuniform sampler2D map;\n#endif\n#ifdef USE_ALPHAMAP\n\tuniform sampler2D alphaMap;\n#endif",metalnessmap_fragment:"float metalnessFactor = metalness;\n#ifdef USE_METALNESSMAP\n\tvec4 texelMetalness = texture2D( metalnessMap, vUv );\n\tmetalnessFactor *= texelMetalness.b;\n#endif",metalnessmap_pars_fragment:"#ifdef USE_METALNESSMAP\n\tuniform sampler2D metalnessMap;\n#endif",morphnormal_vertex:"#ifdef USE_MORPHNORMALS\n\tobjectNormal *= morphTargetBaseInfluence;\n\tobjectNormal += morphNormal0 * morphTargetInfluences[ 0 ];\n\tobjectNormal += morphNormal1 * morphTargetInfluences[ 1 ];\n\tobjectNormal += morphNormal2 * morphTargetInfluences[ 2 ];\n\tobjectNormal += morphNormal3 * morphTargetInfluences[ 3 ];\n#endif",morphtarget_pars_vertex:"#ifdef USE_MORPHTARGETS\n\tuniform float morphTargetBaseInfluence;\n\t#ifndef USE_MORPHNORMALS\n\t\tuniform float morphTargetInfluences[ 8 ];\n\t#else\n\t\tuniform float morphTargetInfluences[ 4 ];\n\t#endif\n#endif",morphtarget_vertex:"#ifdef USE_MORPHTARGETS\n\ttransformed *= morphTargetBaseInfluence;\n\ttransformed += morphTarget0 * morphTargetInfluences[ 0 ];\n\ttransformed += morphTarget1 * morphTargetInfluences[ 1 ];\n\ttransformed += morphTarget2 * morphTargetInfluences[ 2 ];\n\ttransformed += morphTarget3 * morphTargetInfluences[ 3 ];\n\t#ifndef USE_MORPHNORMALS\n\t\ttransformed += morphTarget4 * morphTargetInfluences[ 4 ];\n\t\ttransformed += morphTarget5 * morphTargetInfluences[ 5 ];\n\t\ttransformed += morphTarget6 * morphTargetInfluences[ 6 ];\n\t\ttransformed += morphTarget7 * morphTargetInfluences[ 7 ];\n\t#endif\n#endif",normal_fragment_begin:"float faceDirection = gl_FrontFacing ? 1.0 : - 1.0;\n#ifdef FLAT_SHADED\n\tvec3 fdx = vec3( dFdx( vViewPosition.x ), dFdx( vViewPosition.y ), dFdx( vViewPosition.z ) );\n\tvec3 fdy = vec3( dFdy( vViewPosition.x ), dFdy( vViewPosition.y ), dFdy( vViewPosition.z ) );\n\tvec3 normal = normalize( cross( fdx, fdy ) );\n#else\n\tvec3 normal = normalize( vNormal );\n\t#ifdef DOUBLE_SIDED\n\t\tnormal = normal * faceDirection;\n\t#endif\n\t#ifdef USE_TANGENT\n\t\tvec3 tangent = normalize( vTangent );\n\t\tvec3 bitangent = normalize( vBitangent );\n\t\t#ifdef DOUBLE_SIDED\n\t\t\ttangent = tangent * faceDirection;\n\t\t\tbitangent = bitangent * faceDirection;\n\t\t#endif\n\t\t#if defined( TANGENTSPACE_NORMALMAP ) || defined( USE_CLEARCOAT_NORMALMAP )\n\t\t\tmat3 vTBN = mat3( tangent, bitangent, normal );\n\t\t#endif\n\t#endif\n#endif\nvec3 geometryNormal = normal;",normal_fragment_maps:"#ifdef OBJECTSPACE_NORMALMAP\n\tnormal = texture2D( normalMap, vUv ).xyz * 2.0 - 1.0;\n\t#ifdef FLIP_SIDED\n\t\tnormal = - normal;\n\t#endif\n\t#ifdef DOUBLE_SIDED\n\t\tnormal = normal * faceDirection;\n\t#endif\n\tnormal = normalize( normalMatrix * normal );\n#elif defined( TANGENTSPACE_NORMALMAP )\n\tvec3 mapN = texture2D( normalMap, vUv ).xyz * 2.0 - 1.0;\n\tmapN.xy *= normalScale;\n\t#ifdef USE_TANGENT\n\t\tnormal = normalize( vTBN * mapN );\n\t#else\n\t\tnormal = perturbNormal2Arb( -vViewPosition, normal, mapN, faceDirection );\n\t#endif\n#elif defined( USE_BUMPMAP )\n\tnormal = perturbNormalArb( -vViewPosition, normal, dHdxy_fwd(), faceDirection );\n#endif",normalmap_pars_fragment:"#ifdef USE_NORMALMAP\n\tuniform sampler2D normalMap;\n\tuniform vec2 normalScale;\n#endif\n#ifdef OBJECTSPACE_NORMALMAP\n\tuniform mat3 normalMatrix;\n#endif\n#if ! defined ( USE_TANGENT ) &amp;&amp; ( defined ( TANGENTSPACE_NORMALMAP ) || defined ( USE_CLEARCOAT_NORMALMAP ) )\n\tvec3 perturbNormal2Arb( vec3 eye_pos, vec3 surf_norm, vec3 mapN, float faceDirection ) {\n\t\tvec3 q0 = vec3( dFdx( eye_pos.x ), dFdx( eye_pos.y ), dFdx( eye_pos.z ) );\n\t\tvec3 q1 = vec3( dFdy( eye_pos.x ), dFdy( eye_pos.y ), dFdy( eye_pos.z ) );\n\t\tvec2 st0 = dFdx( vUv.st );\n\t\tvec2 st1 = dFdy( vUv.st );\n\t\tvec3 N = surf_norm;\n\t\tvec3 q1perp = cross( q1, N );\n\t\tvec3 q0perp = cross( N, q0 );\n\t\tvec3 T = q1perp * st0.x + q0perp * st1.x;\n\t\tvec3 B = q1perp * st0.y + q0perp * st1.y;\n\t\tfloat det = max( dot( T, T ), dot( B, B ) );\n\t\tfloat scale = ( det == 0.0 ) ? 0.0 : faceDirection * inversesqrt( det );\n\t\treturn normalize( T * ( mapN.x * scale ) + B * ( mapN.y * scale ) + N * mapN.z );\n\t}\n#endif",clearcoat_normal_fragment_begin:"#ifdef CLEARCOAT\n\tvec3 clearcoatNormal = geometryNormal;\n#endif",clearcoat_normal_fragment_maps:"#ifdef USE_CLEARCOAT_NORMALMAP\n\tvec3 clearcoatMapN = texture2D( clearcoatNormalMap, vUv ).xyz * 2.0 - 1.0;\n\tclearcoatMapN.xy *= clearcoatNormalScale;\n\t#ifdef USE_TANGENT\n\t\tclearcoatNormal = normalize( vTBN * clearcoatMapN );\n\t#else\n\t\tclearcoatNormal = perturbNormal2Arb( - vViewPosition, clearcoatNormal, clearcoatMapN, faceDirection );\n\t#endif\n#endif",clearcoat_pars_fragment:"#ifdef USE_CLEARCOATMAP\n\tuniform sampler2D clearcoatMap;\n#endif\n#ifdef USE_CLEARCOAT_ROUGHNESSMAP\n\tuniform sampler2D clearcoatRoughnessMap;\n#endif\n#ifdef USE_CLEARCOAT_NORMALMAP\n\tuniform sampler2D clearcoatNormalMap;\n\tuniform vec2 clearcoatNormalScale;\n#endif",packing:"vec3 packNormalToRGB( const in vec3 normal ) {\n\treturn normalize( normal ) * 0.5 + 0.5;\n}\nvec3 unpackRGBToNormal( const in vec3 rgb ) {\n\treturn 2.0 * rgb.xyz - 1.0;\n}\nconst float PackUpscale = 256. / 255.;const float UnpackDownscale = 255. / 256.;\nconst vec3 PackFactors = vec3( 256. * 256. * 256., 256. * 256., 256. );\nconst vec4 UnpackFactors = UnpackDownscale / vec4( PackFactors, 1. );\nconst float ShiftRight8 = 1. / 256.;\nvec4 packDepthToRGBA( const in float v ) {\n\tvec4 r = vec4( fract( v * PackFactors ), v );\n\tr.yzw -= r.xyz * ShiftRight8;\treturn r * PackUpscale;\n}\nfloat unpackRGBAToDepth( const in vec4 v ) {\n\treturn dot( v, UnpackFactors );\n}\nvec4 pack2HalfToRGBA( vec2 v ) {\n\tvec4 r = vec4( v.x, fract( v.x * 255.0 ), v.y, fract( v.y * 255.0 ));\n\treturn vec4( r.x - r.y / 255.0, r.y, r.z - r.w / 255.0, r.w);\n}\nvec2 unpackRGBATo2Half( vec4 v ) {\n\treturn vec2( v.x + ( v.y / 255.0 ), v.z + ( v.w / 255.0 ) );\n}\nfloat viewZToOrthographicDepth( const in float viewZ, const in float near, const in float far ) {\n\treturn ( viewZ + near ) / ( near - far );\n}\nfloat orthographicDepthToViewZ( const in float linearClipZ, const in float near, const in float far ) {\n\treturn linearClipZ * ( near - far ) - near;\n}\nfloat viewZToPerspectiveDepth( const in float viewZ, const in float near, const in float far ) {\n\treturn (( near + viewZ ) * far ) / (( far - near ) * viewZ );\n}\nfloat perspectiveDepthToViewZ( const in float invClipZ, const in float near, const in float far ) {\n\treturn ( near * far ) / ( ( far - near ) * invClipZ - far );\n}",premultiplied_alpha_fragment:"#ifdef PREMULTIPLIED_ALPHA\n\tgl_FragColor.rgb *= gl_FragColor.a;\n#endif",project_vertex:"vec4 mvPosition = vec4( transformed, 1.0 );\n#ifdef USE_INSTANCING\n\tmvPosition = instanceMatrix * mvPosition;\n#endif\nmvPosition = modelViewMatrix * mvPosition;\ngl_Position = projectionMatrix * mvPosition;",dithering_fragment:"#ifdef DITHERING\n\tgl_FragColor.rgb = dithering( gl_FragColor.rgb );\n#endif",dithering_pars_fragment:"#ifdef DITHERING\n\tvec3 dithering( vec3 color ) {\n\t\tfloat grid_position = rand( gl_FragCoord.xy );\n\t\tvec3 dither_shift_RGB = vec3( 0.25 / 255.0, -0.25 / 255.0, 0.25 / 255.0 );\n\t\tdither_shift_RGB = mix( 2.0 * dither_shift_RGB, -2.0 * dither_shift_RGB, grid_position );\n\t\treturn color + dither_shift_RGB;\n\t}\n#endif",roughnessmap_fragment:"float roughnessFactor = roughness;\n#ifdef USE_ROUGHNESSMAP\n\tvec4 texelRoughness = texture2D( roughnessMap, vUv );\n\troughnessFactor *= texelRoughness.g;\n#endif",roughnessmap_pars_fragment:"#ifdef USE_ROUGHNESSMAP\n\tuniform sampler2D roughnessMap;\n#endif",shadowmap_pars_fragment:"#ifdef USE_SHADOWMAP\n\t#if NUM_DIR_LIGHT_SHADOWS &gt; 0\n\t\tuniform sampler2D directionalShadowMap[ NUM_DIR_LIGHT_SHADOWS ];\n\t\tvarying vec4 vDirectionalShadowCoord[ NUM_DIR_LIGHT_SHADOWS ];\n\t\tstruct DirectionalLightShadow {\n\t\t\tfloat shadowBias;\n\t\t\tfloat shadowNormalBias;\n\t\t\tfloat shadowRadius;\n\t\t\tvec2 shadowMapSize;\n\t\t};\n\t\tuniform DirectionalLightShadow directionalLightShadows[ NUM_DIR_LIGHT_SHADOWS ];\n\t#endif\n\t#if NUM_SPOT_LIGHT_SHADOWS &gt; 0\n\t\tuniform sampler2D spotShadowMap[ NUM_SPOT_LIGHT_SHADOWS ];\n\t\tvarying vec4 vSpotShadowCoord[ NUM_SPOT_LIGHT_SHADOWS ];\n\t\tstruct SpotLightShadow {\n\t\t\tfloat shadowBias;\n\t\t\tfloat shadowNormalBias;\n\t\t\tfloat shadowRadius;\n\t\t\tvec2 shadowMapSize;\n\t\t};\n\t\tuniform SpotLightShadow spotLightShadows[ NUM_SPOT_LIGHT_SHADOWS ];\n\t#endif\n\t#if NUM_POINT_LIGHT_SHADOWS &gt; 0\n\t\tuniform sampler2D pointShadowMap[ NUM_POINT_LIGHT_SHADOWS ];\n\t\tvarying vec4 vPointShadowCoord[ NUM_POINT_LIGHT_SHADOWS ];\n\t\tstruct PointLightShadow {\n\t\t\tfloat shadowBias;\n\t\t\tfloat shadowNormalBias;\n\t\t\tfloat shadowRadius;\n\t\t\tvec2 shadowMapSize;\n\t\t\tfloat shadowCameraNear;\n\t\t\tfloat shadowCameraFar;\n\t\t};\n\t\tuniform PointLightShadow pointLightShadows[ NUM_POINT_LIGHT_SHADOWS ];\n\t#endif\n\tfloat texture2DCompare( sampler2D depths, vec2 uv, float compare ) {\n\t\treturn step( compare, unpackRGBAToDepth( texture2D( depths, uv ) ) );\n\t}\n\tvec2 texture2DDistribution( sampler2D shadow, vec2 uv ) {\n\t\treturn unpackRGBATo2Half( texture2D( shadow, uv ) );\n\t}\n\tfloat VSMShadow (sampler2D shadow, vec2 uv, float compare ){\n\t\tfloat occlusion = 1.0;\n\t\tvec2 distribution = texture2DDistribution( shadow, uv );\n\t\tfloat hard_shadow = step( compare , distribution.x );\n\t\tif (hard_shadow != 1.0 ) {\n\t\t\tfloat distance = compare - distribution.x ;\n\t\t\tfloat variance = max( 0.00000, distribution.y * distribution.y );\n\t\t\tfloat softness_probability = variance / (variance + distance * distance );\t\t\tsoftness_probability = clamp( ( softness_probability - 0.3 ) / ( 0.95 - 0.3 ), 0.0, 1.0 );\t\t\tocclusion = clamp( max( hard_shadow, softness_probability ), 0.0, 1.0 );\n\t\t}\n\t\treturn occlusion;\n\t}\n\tfloat getShadow( sampler2D shadowMap, vec2 shadowMapSize, float shadowBias, float shadowRadius, vec4 shadowCoord ) {\n\t\tfloat shadow = 1.0;\n\t\tshadowCoord.xyz /= shadowCoord.w;\n\t\tshadowCoord.z += shadowBias;\n\t\tbvec4 inFrustumVec = bvec4 ( shadowCoord.x &gt;= 0.0, shadowCoord.x &lt;= 1.0, shadowCoord.y &gt;= 0.0, shadowCoord.y &lt;= 1.0 );\n\t\tbool inFrustum = all( inFrustumVec );\n\t\tbvec2 frustumTestVec = bvec2( inFrustum, shadowCoord.z &lt;= 1.0 );\n\t\tbool frustumTest = all( frustumTestVec );\n\t\tif ( frustumTest ) {\n\t\t#if defined( SHADOWMAP_TYPE_PCF )\n\t\t\tvec2 texelSize = vec2( 1.0 ) / shadowMapSize;\n\t\t\tfloat dx0 = - texelSize.x * shadowRadius;\n\t\t\tfloat dy0 = - texelSize.y * shadowRadius;\n\t\t\tfloat dx1 = + texelSize.x * shadowRadius;\n\t\t\tfloat dy1 = + texelSize.y * shadowRadius;\n\t\t\tfloat dx2 = dx0 / 2.0;\n\t\t\tfloat dy2 = dy0 / 2.0;\n\t\t\tfloat dx3 = dx1 / 2.0;\n\t\t\tfloat dy3 = dy1 / 2.0;\n\t\t\tshadow = (\n\t\t\t\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( dx0, dy0 ), shadowCoord.z ) +\n\t\t\t\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( 0.0, dy0 ), shadowCoord.z ) +\n\t\t\t\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( dx1, dy0 ), shadowCoord.z ) +\n\t\t\t\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( dx2, dy2 ), shadowCoord.z ) +\n\t\t\t\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( 0.0, dy2 ), shadowCoord.z ) +\n\t\t\t\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( dx3, dy2 ), shadowCoord.z ) +\n\t\t\t\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( dx0, 0.0 ), shadowCoord.z ) +\n\t\t\t\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( dx2, 0.0 ), shadowCoord.z ) +\n\t\t\t\ttexture2DCompare( shadowMap, shadowCoord.xy, shadowCoord.z ) +\n\t\t\t\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( dx3, 0.0 ), shadowCoord.z ) +\n\t\t\t\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( dx1, 0.0 ), shadowCoord.z ) +\n\t\t\t\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( dx2, dy3 ), shadowCoord.z ) +\n\t\t\t\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( 0.0, dy3 ), shadowCoord.z ) +\n\t\t\t\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( dx3, dy3 ), shadowCoord.z ) +\n\t\t\t\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( dx0, dy1 ), shadowCoord.z ) +\n\t\t\t\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( 0.0, dy1 ), shadowCoord.z ) +\n\t\t\t\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( dx1, dy1 ), shadowCoord.z )\n\t\t\t) * ( 1.0 / 17.0 );\n\t\t#elif defined( SHADOWMAP_TYPE_PCF_SOFT )\n\t\t\tvec2 texelSize = vec2( 1.0 ) / shadowMapSize;\n\t\t\tfloat dx = texelSize.x;\n\t\t\tfloat dy = texelSize.y;\n\t\t\tvec2 uv = shadowCoord.xy;\n\t\t\tvec2 f = fract( uv * shadowMapSize + 0.5 );\n\t\t\tuv -= f * texelSize;\n\t\t\tshadow = (\n\t\t\t\ttexture2DCompare( shadowMap, uv, shadowCoord.z ) +\n\t\t\t\ttexture2DCompare( shadowMap, uv + vec2( dx, 0.0 ), shadowCoord.z ) +\n\t\t\t\ttexture2DCompare( shadowMap, uv + vec2( 0.0, dy ), shadowCoord.z ) +\n\t\t\t\ttexture2DCompare( shadowMap, uv + texelSize, shadowCoord.z ) +\n\t\t\t\tmix( texture2DCompare( shadowMap, uv + vec2( -dx, 0.0 ), shadowCoord.z ), \n\t\t\t\t\t texture2DCompare( shadowMap, uv + vec2( 2.0 * dx, 0.0 ), shadowCoord.z ),\n\t\t\t\t\t f.x ) +\n\t\t\t\tmix( texture2DCompare( shadowMap, uv + vec2( -dx, dy ), shadowCoord.z ), \n\t\t\t\t\t texture2DCompare( shadowMap, uv + vec2( 2.0 * dx, dy ), shadowCoord.z ),\n\t\t\t\t\t f.x ) +\n\t\t\t\tmix( texture2DCompare( shadowMap, uv + vec2( 0.0, -dy ), shadowCoord.z ), \n\t\t\t\t\t texture2DCompare( shadowMap, uv + vec2( 0.0, 2.0 * dy ), shadowCoord.z ),\n\t\t\t\t\t f.y ) +\n\t\t\t\tmix( texture2DCompare( shadowMap, uv + vec2( dx, -dy ), shadowCoord.z ), \n\t\t\t\t\t texture2DCompare( shadowMap, uv + vec2( dx, 2.0 * dy ), shadowCoord.z ),\n\t\t\t\t\t f.y ) +\n\t\t\t\tmix( mix( texture2DCompare( shadowMap, uv + vec2( -dx, -dy ), shadowCoord.z ), \n\t\t\t\t\t\t\ttexture2DCompare( shadowMap, uv + vec2( 2.0 * dx, -dy ), shadowCoord.z ),\n\t\t\t\t\t\t\tf.x ),\n\t\t\t\t\t mix( texture2DCompare( shadowMap, uv + vec2( -dx, 2.0 * dy ), shadowCoord.z ), \n\t\t\t\t\t\t\ttexture2DCompare( shadowMap, uv + vec2( 2.0 * dx, 2.0 * dy ), shadowCoord.z ),\n\t\t\t\t\t\t\tf.x ),\n\t\t\t\t\t f.y )\n\t\t\t) * ( 1.0 / 9.0 );\n\t\t#elif defined( SHADOWMAP_TYPE_VSM )\n\t\t\tshadow = VSMShadow( shadowMap, shadowCoord.xy, shadowCoord.z );\n\t\t#else\n\t\t\tshadow = texture2DCompare( shadowMap, shadowCoord.xy, shadowCoord.z );\n\t\t#endif\n\t\t}\n\t\treturn shadow;\n\t}\n\tvec2 cubeToUV( vec3 v, float texelSizeY ) {\n\t\tvec3 absV = abs( v );\n\t\tfloat scaleToCube = 1.0 / max( absV.x, max( absV.y, absV.z ) );\n\t\tabsV *= scaleToCube;\n\t\tv *= scaleToCube * ( 1.0 - 2.0 * texelSizeY );\n\t\tvec2 planar = v.xy;\n\t\tfloat almostATexel = 1.5 * texelSizeY;\n\t\tfloat almostOne = 1.0 - almostATexel;\n\t\tif ( absV.z &gt;= almostOne ) {\n\t\t\tif ( v.z &gt; 0.0 )\n\t\t\t\tplanar.x = 4.0 - v.x;\n\t\t} else if ( absV.x &gt;= almostOne ) {\n\t\t\tfloat signX = sign( v.x );\n\t\t\tplanar.x = v.z * signX + 2.0 * signX;\n\t\t} else if ( absV.y &gt;= almostOne ) {\n\t\t\tfloat signY = sign( v.y );\n\t\t\tplanar.x = v.x + 2.0 * signY + 2.0;\n\t\t\tplanar.y = v.z * signY - 2.0;\n\t\t}\n\t\treturn vec2( 0.125, 0.25 ) * planar + vec2( 0.375, 0.75 );\n\t}\n\tfloat getPointShadow( sampler2D shadowMap, vec2 shadowMapSize, float shadowBias, float shadowRadius, vec4 shadowCoord, float shadowCameraNear, float shadowCameraFar ) {\n\t\tvec2 texelSize = vec2( 1.0 ) / ( shadowMapSize * vec2( 4.0, 2.0 ) );\n\t\tvec3 lightToPosition = shadowCoord.xyz;\n\t\tfloat dp = ( length( lightToPosition ) - shadowCameraNear ) / ( shadowCameraFar - shadowCameraNear );\t\tdp += shadowBias;\n\t\tvec3 bd3D = normalize( lightToPosition );\n\t\t#if defined( SHADOWMAP_TYPE_PCF ) || defined( SHADOWMAP_TYPE_PCF_SOFT ) || defined( SHADOWMAP_TYPE_VSM )\n\t\t\tvec2 offset = vec2( - 1, 1 ) * shadowRadius * texelSize.y;\n\t\t\treturn (\n\t\t\t\ttexture2DCompare( shadowMap, cubeToUV( bd3D + offset.xyy, texelSize.y ), dp ) +\n\t\t\t\ttexture2DCompare( shadowMap, cubeToUV( bd3D + offset.yyy, texelSize.y ), dp ) +\n\t\t\t\ttexture2DCompare( shadowMap, cubeToUV( bd3D + offset.xyx, texelSize.y ), dp ) +\n\t\t\t\ttexture2DCompare( shadowMap, cubeToUV( bd3D + offset.yyx, texelSize.y ), dp ) +\n\t\t\t\ttexture2DCompare( shadowMap, cubeToUV( bd3D, texelSize.y ), dp ) +\n\t\t\t\ttexture2DCompare( shadowMap, cubeToUV( bd3D + offset.xxy, texelSize.y ), dp ) +\n\t\t\t\ttexture2DCompare( shadowMap, cubeToUV( bd3D + offset.yxy, texelSize.y ), dp ) +\n\t\t\t\ttexture2DCompare( shadowMap, cubeToUV( bd3D + offset.xxx, texelSize.y ), dp ) +\n\t\t\t\ttexture2DCompare( shadowMap, cubeToUV( bd3D + offset.yxx, texelSize.y ), dp )\n\t\t\t) * ( 1.0 / 9.0 );\n\t\t#else\n\t\t\treturn texture2DCompare( shadowMap, cubeToUV( bd3D, texelSize.y ), dp );\n\t\t#endif\n\t}\n#endif",shadowmap_pars_vertex:"#ifdef USE_SHADOWMAP\n\t#if NUM_DIR_LIGHT_SHADOWS &gt; 0\n\t\tuniform mat4 directionalShadowMatrix[ NUM_DIR_LIGHT_SHADOWS ];\n\t\tvarying vec4 vDirectionalShadowCoord[ NUM_DIR_LIGHT_SHADOWS ];\n\t\tstruct DirectionalLightShadow {\n\t\t\tfloat shadowBias;\n\t\t\tfloat shadowNormalBias;\n\t\t\tfloat shadowRadius;\n\t\t\tvec2 shadowMapSize;\n\t\t};\n\t\tuniform DirectionalLightShadow directionalLightShadows[ NUM_DIR_LIGHT_SHADOWS ];\n\t#endif\n\t#if NUM_SPOT_LIGHT_SHADOWS &gt; 0\n\t\tuniform mat4 spotShadowMatrix[ NUM_SPOT_LIGHT_SHADOWS ];\n\t\tvarying vec4 vSpotShadowCoord[ NUM_SPOT_LIGHT_SHADOWS ];\n\t\tstruct SpotLightShadow {\n\t\t\tfloat shadowBias;\n\t\t\tfloat shadowNormalBias;\n\t\t\tfloat shadowRadius;\n\t\t\tvec2 shadowMapSize;\n\t\t};\n\t\tuniform SpotLightShadow spotLightShadows[ NUM_SPOT_LIGHT_SHADOWS ];\n\t#endif\n\t#if NUM_POINT_LIGHT_SHADOWS &gt; 0\n\t\tuniform mat4 pointShadowMatrix[ NUM_POINT_LIGHT_SHADOWS ];\n\t\tvarying vec4 vPointShadowCoord[ NUM_POINT_LIGHT_SHADOWS ];\n\t\tstruct PointLightShadow {\n\t\t\tfloat shadowBias;\n\t\t\tfloat shadowNormalBias;\n\t\t\tfloat shadowRadius;\n\t\t\tvec2 shadowMapSize;\n\t\t\tfloat shadowCameraNear;\n\t\t\tfloat shadowCameraFar;\n\t\t};\n\t\tuniform PointLightShadow pointLightShadows[ NUM_POINT_LIGHT_SHADOWS ];\n\t#endif\n#endif",shadowmap_vertex:"#ifdef USE_SHADOWMAP\n\t#if NUM_DIR_LIGHT_SHADOWS &gt; 0 || NUM_SPOT_LIGHT_SHADOWS &gt; 0 || NUM_POINT_LIGHT_SHADOWS &gt; 0\n\t\tvec3 shadowWorldNormal = inverseTransformDirection( transformedNormal, viewMatrix );\n\t\tvec4 shadowWorldPosition;\n\t#endif\n\t#if NUM_DIR_LIGHT_SHADOWS &gt; 0\n\t#pragma unroll_loop_start\n\tfor ( int i = 0; i &lt; NUM_DIR_LIGHT_SHADOWS; i ++ ) {\n\t\tshadowWorldPosition = worldPosition + vec4( shadowWorldNormal * directionalLightShadows[ i ].shadowNormalBias, 0 );\n\t\tvDirectionalShadowCoord[ i ] = directionalShadowMatrix[ i ] * shadowWorldPosition;\n\t}\n\t#pragma unroll_loop_end\n\t#endif\n\t#if NUM_SPOT_LIGHT_SHADOWS &gt; 0\n\t#pragma unroll_loop_start\n\tfor ( int i = 0; i &lt; NUM_SPOT_LIGHT_SHADOWS; i ++ ) {\n\t\tshadowWorldPosition = worldPosition + vec4( shadowWorldNormal * spotLightShadows[ i ].shadowNormalBias, 0 );\n\t\tvSpotShadowCoord[ i ] = spotShadowMatrix[ i ] * shadowWorldPosition;\n\t}\n\t#pragma unroll_loop_end\n\t#endif\n\t#if NUM_POINT_LIGHT_SHADOWS &gt; 0\n\t#pragma unroll_loop_start\n\tfor ( int i = 0; i &lt; NUM_POINT_LIGHT_SHADOWS; i ++ ) {\n\t\tshadowWorldPosition = worldPosition + vec4( shadowWorldNormal * pointLightShadows[ i ].shadowNormalBias, 0 );\n\t\tvPointShadowCoord[ i ] = pointShadowMatrix[ i ] * shadowWorldPosition;\n\t}\n\t#pragma unroll_loop_end\n\t#endif\n#endif",shadowmask_pars_fragment:"float getShadowMask() {\n\tfloat shadow = 1.0;\n\t#ifdef USE_SHADOWMAP\n\t#if NUM_DIR_LIGHT_SHADOWS &gt; 0\n\tDirectionalLightShadow directionalLight;\n\t#pragma unroll_loop_start\n\tfor ( int i = 0; i &lt; NUM_DIR_LIGHT_SHADOWS; i ++ ) {\n\t\tdirectionalLight = directionalLightShadows[ i ];\n\t\tshadow *= receiveShadow ? getShadow( directionalShadowMap[ i ], directionalLight.shadowMapSize, directionalLight.shadowBias, directionalLight.shadowRadius, vDirectionalShadowCoord[ i ] ) : 1.0;\n\t}\n\t#pragma unroll_loop_end\n\t#endif\n\t#if NUM_SPOT_LIGHT_SHADOWS &gt; 0\n\tSpotLightShadow spotLight;\n\t#pragma unroll_loop_start\n\tfor ( int i = 0; i &lt; NUM_SPOT_LIGHT_SHADOWS; i ++ ) {\n\t\tspotLight = spotLightShadows[ i ];\n\t\tshadow *= receiveShadow ? getShadow( spotShadowMap[ i ], spotLight.shadowMapSize, spotLight.shadowBias, spotLight.shadowRadius, vSpotShadowCoord[ i ] ) : 1.0;\n\t}\n\t#pragma unroll_loop_end\n\t#endif\n\t#if NUM_POINT_LIGHT_SHADOWS &gt; 0\n\tPointLightShadow pointLight;\n\t#pragma unroll_loop_start\n\tfor ( int i = 0; i &lt; NUM_POINT_LIGHT_SHADOWS; i ++ ) {\n\t\tpointLight = pointLightShadows[ i ];\n\t\tshadow *= receiveShadow ? getPointShadow( pointShadowMap[ i ], pointLight.shadowMapSize, pointLight.shadowBias, pointLight.shadowRadius, vPointShadowCoord[ i ], pointLight.shadowCameraNear, pointLight.shadowCameraFar ) : 1.0;\n\t}\n\t#pragma unroll_loop_end\n\t#endif\n\t#endif\n\treturn shadow;\n}",skinbase_vertex:"#ifdef USE_SKINNING\n\tmat4 boneMatX = getBoneMatrix( skinIndex.x );\n\tmat4 boneMatY = getBoneMatrix( skinIndex.y );\n\tmat4 boneMatZ = getBoneMatrix( skinIndex.z );\n\tmat4 boneMatW = getBoneMatrix( skinIndex.w );\n#endif",skinning_pars_vertex:"#ifdef USE_SKINNING\n\tuniform mat4 bindMatrix;\n\tuniform mat4 bindMatrixInverse;\n\t#ifdef BONE_TEXTURE\n\t\tuniform highp sampler2D boneTexture;\n\t\tuniform int boneTextureSize;\n\t\tmat4 getBoneMatrix( const in float i ) {\n\t\t\tfloat j = i * 4.0;\n\t\t\tfloat x = mod( j, float( boneTextureSize ) );\n\t\t\tfloat y = floor( j / float( boneTextureSize ) );\n\t\t\tfloat dx = 1.0 / float( boneTextureSize );\n\t\t\tfloat dy = 1.0 / float( boneTextureSize );\n\t\t\ty = dy * ( y + 0.5 );\n\t\t\tvec4 v1 = texture2D( boneTexture, vec2( dx * ( x + 0.5 ), y ) );\n\t\t\tvec4 v2 = texture2D( boneTexture, vec2( dx * ( x + 1.5 ), y ) );\n\t\t\tvec4 v3 = texture2D( boneTexture, vec2( dx * ( x + 2.5 ), y ) );\n\t\t\tvec4 v4 = texture2D( boneTexture, vec2( dx * ( x + 3.5 ), y ) );\n\t\t\tmat4 bone = mat4( v1, v2, v3, v4 );\n\t\t\treturn bone;\n\t\t}\n\t#else\n\t\tuniform mat4 boneMatrices[ MAX_BONES ];\n\t\tmat4 getBoneMatrix( const in float i ) {\n\t\t\tmat4 bone = boneMatrices[ int(i) ];\n\t\t\treturn bone;\n\t\t}\n\t#endif\n#endif",skinning_vertex:"#ifdef USE_SKINNING\n\tvec4 skinVertex = bindMatrix * vec4( transformed, 1.0 );\n\tvec4 skinned = vec4( 0.0 );\n\tskinned += boneMatX * skinVertex * skinWeight.x;\n\tskinned += boneMatY * skinVertex * skinWeight.y;\n\tskinned += boneMatZ * skinVertex * skinWeight.z;\n\tskinned += boneMatW * skinVertex * skinWeight.w;\n\ttransformed = ( bindMatrixInverse * skinned ).xyz;\n#endif",skinnormal_vertex:"#ifdef USE_SKINNING\n\tmat4 skinMatrix = mat4( 0.0 );\n\tskinMatrix += skinWeight.x * boneMatX;\n\tskinMatrix += skinWeight.y * boneMatY;\n\tskinMatrix += skinWeight.z * boneMatZ;\n\tskinMatrix += skinWeight.w * boneMatW;\n\tskinMatrix = bindMatrixInverse * skinMatrix * bindMatrix;\n\tobjectNormal = vec4( skinMatrix * vec4( objectNormal, 0.0 ) ).xyz;\n\t#ifdef USE_TANGENT\n\t\tobjectTangent = vec4( skinMatrix * vec4( objectTangent, 0.0 ) ).xyz;\n\t#endif\n#endif",specularmap_fragment:"float specularStrength;\n#ifdef USE_SPECULARMAP\n\tvec4 texelSpecular = texture2D( specularMap, vUv );\n\tspecularStrength = texelSpecular.r;\n#else\n\tspecularStrength = 1.0;\n#endif",specularmap_pars_fragment:"#ifdef USE_SPECULARMAP\n\tuniform sampler2D specularMap;\n#endif",tonemapping_fragment:"#if defined( TONE_MAPPING )\n\tgl_FragColor.rgb = toneMapping( gl_FragColor.rgb );\n#endif",tonemapping_pars_fragment:"#ifndef saturate\n#define saturate(a) clamp( a, 0.0, 1.0 )\n#endif\nuniform float toneMappingExposure;\nvec3 LinearToneMapping( vec3 color ) {\n\treturn toneMappingExposure * color;\n}\nvec3 ReinhardToneMapping( vec3 color ) {\n\tcolor *= toneMappingExposure;\n\treturn saturate( color / ( vec3( 1.0 ) + color ) );\n}\nvec3 OptimizedCineonToneMapping( vec3 color ) {\n\tcolor *= toneMappingExposure;\n\tcolor = max( vec3( 0.0 ), color - 0.004 );\n\treturn pow( ( color * ( 6.2 * color + 0.5 ) ) / ( color * ( 6.2 * color + 1.7 ) + 0.06 ), vec3( 2.2 ) );\n}\nvec3 RRTAndODTFit( vec3 v ) {\n\tvec3 a = v * ( v + 0.0245786 ) - 0.000090537;\n\tvec3 b = v * ( 0.983729 * v + 0.4329510 ) + 0.238081;\n\treturn a / b;\n}\nvec3 ACESFilmicToneMapping( vec3 color ) {\n\tconst mat3 ACESInputMat = mat3(\n\t\tvec3( 0.59719, 0.07600, 0.02840 ),\t\tvec3( 0.35458, 0.90834, 0.13383 ),\n\t\tvec3( 0.04823, 0.01566, 0.83777 )\n\t);\n\tconst mat3 ACESOutputMat = mat3(\n\t\tvec3(\t1.60475, -0.10208, -0.00327 ),\t\tvec3( -0.53108,\t1.10813, -0.07276 ),\n\t\tvec3( -0.07367, -0.00605,\t1.07602 )\n\t);\n\tcolor *= toneMappingExposure / 0.6;\n\tcolor = ACESInputMat * color;\n\tcolor = RRTAndODTFit( color );\n\tcolor = ACESOutputMat * color;\n\treturn saturate( color );\n}\nvec3 CustomToneMapping( vec3 color ) { return color; }",transmissionmap_fragment:"#ifdef USE_TRANSMISSIONMAP\n\ttotalTransmission *= texture2D( transmissionMap, vUv ).r;\n#endif",transmissionmap_pars_fragment:"#ifdef USE_TRANSMISSIONMAP\n\tuniform sampler2D transmissionMap;\n#endif",uv_pars_fragment:"#if ( defined( USE_UV ) &amp;&amp; ! defined( UVS_VERTEX_ONLY ) )\n\tvarying vec2 vUv;\n#endif",uv_pars_vertex:"#ifdef USE_UV\n\t#ifdef UVS_VERTEX_ONLY\n\t\tvec2 vUv;\n\t#else\n\t\tvarying vec2 vUv;\n\t#endif\n\tuniform mat3 uvTransform;\n#endif",uv_vertex:"#ifdef USE_UV\n\tvUv = ( uvTransform * vec3( uv, 1 ) ).xy;\n#endif",uv2_pars_fragment:"#if defined( USE_LIGHTMAP ) || defined( USE_AOMAP )\n\tvarying vec2 vUv2;\n#endif",uv2_pars_vertex:"#if defined( USE_LIGHTMAP ) || defined( USE_AOMAP )\n\tattribute vec2 uv2;\n\tvarying vec2 vUv2;\n\tuniform mat3 uv2Transform;\n#endif",uv2_vertex:"#if defined( USE_LIGHTMAP ) || defined( USE_AOMAP )\n\tvUv2 = ( uv2Transform * vec3( uv2, 1 ) ).xy;\n#endif",worldpos_vertex:"#if defined( USE_ENVMAP ) || defined( DISTANCE ) || defined ( USE_SHADOWMAP )\n\tvec4 worldPosition = vec4( transformed, 1.0 );\n\t#ifdef USE_INSTANCING\n\t\tworldPosition = instanceMatrix * worldPosition;\n\t#endif\n\tworldPosition = modelMatrix * worldPosition;\n#endif",background_frag:"uniform sampler2D t2D;\nvarying vec2 vUv;\nvoid main() {\n\tvec4 texColor = texture2D( t2D, vUv );\n\tgl_FragColor = mapTexelToLinear( texColor );\n\t#include &lt;tonemapping_fragment&gt;\n\t#include &lt;encodings_fragment&gt;\n}",background_vert:"varying vec2 vUv;\nuniform mat3 uvTransform;\nvoid main() {\n\tvUv = ( uvTransform * vec3( uv, 1 ) ).xy;\n\tgl_Position = vec4( position.xy, 1.0, 1.0 );\n}",cube_frag:"#include &lt;envmap_common_pars_fragment&gt;\nuniform float opacity;\nvarying vec3 vWorldDirection;\n#include &lt;cube_uv_reflection_fragment&gt;\nvoid main() {\n\tvec3 vReflect = vWorldDirection;\n\t#include &lt;envmap_fragment&gt;\n\tgl_FragColor = envColor;\n\tgl_FragColor.a *= opacity;\n\t#include &lt;tonemapping_fragment&gt;\n\t#include &lt;encodings_fragment&gt;\n}",cube_vert:"varying vec3 vWorldDirection;\n#include &lt;common&gt;\nvoid main() {\n\tvWorldDirection = transformDirection( position, modelMatrix );\n\t#include &lt;begin_vertex&gt;\n\t#include &lt;project_vertex&gt;\n\tgl_Position.z = gl_Position.w;\n}",depth_frag:"#if DEPTH_PACKING == 3200\n\tuniform float opacity;\n#endif\n#include &lt;common&gt;\n#include &lt;packing&gt;\n#include &lt;uv_pars_fragment&gt;\n#include &lt;map_pars_fragment&gt;\n#include &lt;alphamap_pars_fragment&gt;\n#include &lt;logdepthbuf_pars_fragment&gt;\n#include &lt;clipping_planes_pars_fragment&gt;\nvarying vec2 vHighPrecisionZW;\nvoid main() {\n\t#include &lt;clipping_planes_fragment&gt;\n\tvec4 diffuseColor = vec4( 1.0 );\n\t#if DEPTH_PACKING == 3200\n\t\tdiffuseColor.a = opacity;\n\t#endif\n\t#include &lt;map_fragment&gt;\n\t#include &lt;alphamap_fragment&gt;\n\t#include &lt;alphatest_fragment&gt;\n\t#include &lt;logdepthbuf_fragment&gt;\n\tfloat fragCoordZ = 0.5 * vHighPrecisionZW[0] / vHighPrecisionZW[1] + 0.5;\n\t#if DEPTH_PACKING == 3200\n\t\tgl_FragColor = vec4( vec3( 1.0 - fragCoordZ ), opacity );\n\t#elif DEPTH_PACKING == 3201\n\t\tgl_FragColor = packDepthToRGBA( fragCoordZ );\n\t#endif\n}",depth_vert:"#include &lt;common&gt;\n#include &lt;uv_pars_vertex&gt;\n#include &lt;displacementmap_pars_vertex&gt;\n#include &lt;morphtarget_pars_vertex&gt;\n#include &lt;skinning_pars_vertex&gt;\n#include &lt;logdepthbuf_pars_vertex&gt;\n#include &lt;clipping_planes_pars_vertex&gt;\nvarying vec2 vHighPrecisionZW;\nvoid main() {\n\t#include &lt;uv_vertex&gt;\n\t#include &lt;skinbase_vertex&gt;\n\t#ifdef USE_DISPLACEMENTMAP\n\t\t#include &lt;beginnormal_vertex&gt;\n\t\t#include &lt;morphnormal_vertex&gt;\n\t\t#include &lt;skinnormal_vertex&gt;\n\t#endif\n\t#include &lt;begin_vertex&gt;\n\t#include &lt;morphtarget_vertex&gt;\n\t#include &lt;skinning_vertex&gt;\n\t#include &lt;displacementmap_vertex&gt;\n\t#include &lt;project_vertex&gt;\n\t#include &lt;logdepthbuf_vertex&gt;\n\t#include &lt;clipping_planes_vertex&gt;\n\tvHighPrecisionZW = gl_Position.zw;\n}",distanceRGBA_frag:"#define DISTANCE\nuniform vec3 referencePosition;\nuniform float nearDistance;\nuniform float farDistance;\nvarying vec3 vWorldPosition;\n#include &lt;common&gt;\n#include &lt;packing&gt;\n#include &lt;uv_pars_fragment&gt;\n#include &lt;map_pars_fragment&gt;\n#include &lt;alphamap_pars_fragment&gt;\n#include &lt;clipping_planes_pars_fragment&gt;\nvoid main () {\n\t#include &lt;clipping_planes_fragment&gt;\n\tvec4 diffuseColor = vec4( 1.0 );\n\t#include &lt;map_fragment&gt;\n\t#include &lt;alphamap_fragment&gt;\n\t#include &lt;alphatest_fragment&gt;\n\tfloat dist = length( vWorldPosition - referencePosition );\n\tdist = ( dist - nearDistance ) / ( farDistance - nearDistance );\n\tdist = saturate( dist );\n\tgl_FragColor = packDepthToRGBA( dist );\n}",distanceRGBA_vert:"#define DISTANCE\nvarying vec3 vWorldPosition;\n#include &lt;common&gt;\n#include &lt;uv_pars_vertex&gt;\n#include &lt;displacementmap_pars_vertex&gt;\n#include &lt;morphtarget_pars_vertex&gt;\n#include &lt;skinning_pars_vertex&gt;\n#include &lt;clipping_planes_pars_vertex&gt;\nvoid main() {\n\t#include &lt;uv_vertex&gt;\n\t#include &lt;skinbase_vertex&gt;\n\t#ifdef USE_DISPLACEMENTMAP\n\t\t#include &lt;beginnormal_vertex&gt;\n\t\t#include &lt;morphnormal_vertex&gt;\n\t\t#include &lt;skinnormal_vertex&gt;\n\t#endif\n\t#include &lt;begin_vertex&gt;\n\t#include &lt;morphtarget_vertex&gt;\n\t#include &lt;skinning_vertex&gt;\n\t#include &lt;displacementmap_vertex&gt;\n\t#include &lt;project_vertex&gt;\n\t#include &lt;worldpos_vertex&gt;\n\t#include &lt;clipping_planes_vertex&gt;\n\tvWorldPosition = worldPosition.xyz;\n}",equirect_frag:"uniform sampler2D tEquirect;\nvarying vec3 vWorldDirection;\n#include &lt;common&gt;\nvoid main() {\n\tvec3 direction = normalize( vWorldDirection );\n\tvec2 sampleUV = equirectUv( direction );\n\tvec4 texColor = texture2D( tEquirect, sampleUV );\n\tgl_FragColor = mapTexelToLinear( texColor );\n\t#include &lt;tonemapping_fragment&gt;\n\t#include &lt;encodings_fragment&gt;\n}",equirect_vert:"varying vec3 vWorldDirection;\n#include &lt;common&gt;\nvoid main() {\n\tvWorldDirection = transformDirection( position, modelMatrix );\n\t#include &lt;begin_vertex&gt;\n\t#include &lt;project_vertex&gt;\n}",linedashed_frag:"uniform vec3 diffuse;\nuniform float opacity;\nuniform float dashSize;\nuniform float totalSize;\nvarying float vLineDistance;\n#include &lt;common&gt;\n#include &lt;color_pars_fragment&gt;\n#include &lt;fog_pars_fragment&gt;\n#include &lt;logdepthbuf_pars_fragment&gt;\n#include &lt;clipping_planes_pars_fragment&gt;\nvoid main() {\n\t#include &lt;clipping_planes_fragment&gt;\n\tif ( mod( vLineDistance, totalSize ) &gt; dashSize ) {\n\t\tdiscard;\n\t}\n\tvec3 outgoingLight = vec3( 0.0 );\n\tvec4 diffuseColor = vec4( diffuse, opacity );\n\t#include &lt;logdepthbuf_fragment&gt;\n\t#include &lt;color_fragment&gt;\n\toutgoingLight = diffuseColor.rgb;\n\tgl_FragColor = vec4( outgoingLight, diffuseColor.a );\n\t#include &lt;tonemapping_fragment&gt;\n\t#include &lt;encodings_fragment&gt;\n\t#include &lt;fog_fragment&gt;\n\t#include &lt;premultiplied_alpha_fragment&gt;\n}",linedashed_vert:"uniform float scale;\nattribute float lineDistance;\nvarying float vLineDistance;\n#include &lt;common&gt;\n#include &lt;color_pars_vertex&gt;\n#include &lt;fog_pars_vertex&gt;\n#include &lt;morphtarget_pars_vertex&gt;\n#include &lt;logdepthbuf_pars_vertex&gt;\n#include &lt;clipping_planes_pars_vertex&gt;\nvoid main() {\n\tvLineDistance = scale * lineDistance;\n\t#include &lt;color_vertex&gt;\n\t#include &lt;begin_vertex&gt;\n\t#include &lt;morphtarget_vertex&gt;\n\t#include &lt;project_vertex&gt;\n\t#include &lt;logdepthbuf_vertex&gt;\n\t#include &lt;clipping_planes_vertex&gt;\n\t#include &lt;fog_vertex&gt;\n}",meshbasic_frag:"uniform vec3 diffuse;\nuniform float opacity;\n#ifndef FLAT_SHADED\n\tvarying vec3 vNormal;\n#endif\n#include &lt;common&gt;\n#include &lt;dithering_pars_fragment&gt;\n#include &lt;color_pars_fragment&gt;\n#include &lt;uv_pars_fragment&gt;\n#include &lt;uv2_pars_fragment&gt;\n#include &lt;map_pars_fragment&gt;\n#include &lt;alphamap_pars_fragment&gt;\n#include &lt;aomap_pars_fragment&gt;\n#include &lt;lightmap_pars_fragment&gt;\n#include &lt;envmap_common_pars_fragment&gt;\n#include &lt;envmap_pars_fragment&gt;\n#include &lt;cube_uv_reflection_fragment&gt;\n#include &lt;fog_pars_fragment&gt;\n#include &lt;specularmap_pars_fragment&gt;\n#include &lt;logdepthbuf_pars_fragment&gt;\n#include &lt;clipping_planes_pars_fragment&gt;\nvoid main() {\n\t#include &lt;clipping_planes_fragment&gt;\n\tvec4 diffuseColor = vec4( diffuse, opacity );\n\t#include &lt;logdepthbuf_fragment&gt;\n\t#include &lt;map_fragment&gt;\n\t#include &lt;color_fragment&gt;\n\t#include &lt;alphamap_fragment&gt;\n\t#include &lt;alphatest_fragment&gt;\n\t#include &lt;specularmap_fragment&gt;\n\tReflectedLight reflectedLight = ReflectedLight( vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ) );\n\t#ifdef USE_LIGHTMAP\n\t\n\t\tvec4 lightMapTexel= texture2D( lightMap, vUv2 );\n\t\treflectedLight.indirectDiffuse += lightMapTexelToLinear( lightMapTexel ).rgb * lightMapIntensity;\n\t#else\n\t\treflectedLight.indirectDiffuse += vec3( 1.0 );\n\t#endif\n\t#include &lt;aomap_fragment&gt;\n\treflectedLight.indirectDiffuse *= diffuseColor.rgb;\n\tvec3 outgoingLight = reflectedLight.indirectDiffuse;\n\t#include &lt;envmap_fragment&gt;\n\tgl_FragColor = vec4( outgoingLight, diffuseColor.a );\n\t#include &lt;tonemapping_fragment&gt;\n\t#include &lt;encodings_fragment&gt;\n\t#include &lt;fog_fragment&gt;\n\t#include &lt;premultiplied_alpha_fragment&gt;\n\t#include &lt;dithering_fragment&gt;\n}",meshbasic_vert:"#include &lt;common&gt;\n#include &lt;uv_pars_vertex&gt;\n#include &lt;uv2_pars_vertex&gt;\n#include &lt;envmap_pars_vertex&gt;\n#include &lt;color_pars_vertex&gt;\n#include &lt;fog_pars_vertex&gt;\n#include &lt;morphtarget_pars_vertex&gt;\n#include &lt;skinning_pars_vertex&gt;\n#include &lt;logdepthbuf_pars_vertex&gt;\n#include &lt;clipping_planes_pars_vertex&gt;\nvoid main() {\n\t#include &lt;uv_vertex&gt;\n\t#include &lt;uv2_vertex&gt;\n\t#include &lt;color_vertex&gt;\n\t#include &lt;skinbase_vertex&gt;\n\t#ifdef USE_ENVMAP\n\t#include &lt;beginnormal_vertex&gt;\n\t#include &lt;morphnormal_vertex&gt;\n\t#include &lt;skinnormal_vertex&gt;\n\t#include &lt;defaultnormal_vertex&gt;\n\t#endif\n\t#include &lt;begin_vertex&gt;\n\t#include &lt;morphtarget_vertex&gt;\n\t#include &lt;skinning_vertex&gt;\n\t#include &lt;project_vertex&gt;\n\t#include &lt;logdepthbuf_vertex&gt;\n\t#include &lt;worldpos_vertex&gt;\n\t#include &lt;clipping_planes_vertex&gt;\n\t#include &lt;envmap_vertex&gt;\n\t#include &lt;fog_vertex&gt;\n}",meshlambert_frag:"uniform vec3 diffuse;\nuniform vec3 emissive;\nuniform float opacity;\nvarying vec3 vLightFront;\nvarying vec3 vIndirectFront;\n#ifdef DOUBLE_SIDED\n\tvarying vec3 vLightBack;\n\tvarying vec3 vIndirectBack;\n#endif\n#include &lt;common&gt;\n#include &lt;packing&gt;\n#include &lt;dithering_pars_fragment&gt;\n#include &lt;color_pars_fragment&gt;\n#include &lt;uv_pars_fragment&gt;\n#include &lt;uv2_pars_fragment&gt;\n#include &lt;map_pars_fragment&gt;\n#include &lt;alphamap_pars_fragment&gt;\n#include &lt;aomap_pars_fragment&gt;\n#include &lt;lightmap_pars_fragment&gt;\n#include &lt;emissivemap_pars_fragment&gt;\n#include &lt;envmap_common_pars_fragment&gt;\n#include &lt;envmap_pars_fragment&gt;\n#include &lt;cube_uv_reflection_fragment&gt;\n#include &lt;bsdfs&gt;\n#include &lt;lights_pars_begin&gt;\n#include &lt;fog_pars_fragment&gt;\n#include &lt;shadowmap_pars_fragment&gt;\n#include &lt;shadowmask_pars_fragment&gt;\n#include &lt;specularmap_pars_fragment&gt;\n#include &lt;logdepthbuf_pars_fragment&gt;\n#include &lt;clipping_planes_pars_fragment&gt;\nvoid main() {\n\t#include &lt;clipping_planes_fragment&gt;\n\tvec4 diffuseColor = vec4( diffuse, opacity );\n\tReflectedLight reflectedLight = ReflectedLight( vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ) );\n\tvec3 totalEmissiveRadiance = emissive;\n\t#include &lt;logdepthbuf_fragment&gt;\n\t#include &lt;map_fragment&gt;\n\t#include &lt;color_fragment&gt;\n\t#include &lt;alphamap_fragment&gt;\n\t#include &lt;alphatest_fragment&gt;\n\t#include &lt;specularmap_fragment&gt;\n\t#include &lt;emissivemap_fragment&gt;\n\t#ifdef DOUBLE_SIDED\n\t\treflectedLight.indirectDiffuse += ( gl_FrontFacing ) ? vIndirectFront : vIndirectBack;\n\t#else\n\t\treflectedLight.indirectDiffuse += vIndirectFront;\n\t#endif\n\t#include &lt;lightmap_fragment&gt;\n\treflectedLight.indirectDiffuse *= BRDF_Diffuse_Lambert( diffuseColor.rgb );\n\t#ifdef DOUBLE_SIDED\n\t\treflectedLight.directDiffuse = ( gl_FrontFacing ) ? vLightFront : vLightBack;\n\t#else\n\t\treflectedLight.directDiffuse = vLightFront;\n\t#endif\n\treflectedLight.directDiffuse *= BRDF_Diffuse_Lambert( diffuseColor.rgb ) * getShadowMask();\n\t#include &lt;aomap_fragment&gt;\n\tvec3 outgoingLight = reflectedLight.directDiffuse + reflectedLight.indirectDiffuse + totalEmissiveRadiance;\n\t#include &lt;envmap_fragment&gt;\n\tgl_FragColor = vec4( outgoingLight, diffuseColor.a );\n\t#include &lt;tonemapping_fragment&gt;\n\t#include &lt;encodings_fragment&gt;\n\t#include &lt;fog_fragment&gt;\n\t#include &lt;premultiplied_alpha_fragment&gt;\n\t#include &lt;dithering_fragment&gt;\n}",meshlambert_vert:"#define LAMBERT\nvarying vec3 vLightFront;\nvarying vec3 vIndirectFront;\n#ifdef DOUBLE_SIDED\n\tvarying vec3 vLightBack;\n\tvarying vec3 vIndirectBack;\n#endif\n#include &lt;common&gt;\n#include &lt;uv_pars_vertex&gt;\n#include &lt;uv2_pars_vertex&gt;\n#include &lt;envmap_pars_vertex&gt;\n#include &lt;bsdfs&gt;\n#include &lt;lights_pars_begin&gt;\n#include &lt;color_pars_vertex&gt;\n#include &lt;fog_pars_vertex&gt;\n#include &lt;morphtarget_pars_vertex&gt;\n#include &lt;skinning_pars_vertex&gt;\n#include &lt;shadowmap_pars_vertex&gt;\n#include &lt;logdepthbuf_pars_vertex&gt;\n#include &lt;clipping_planes_pars_vertex&gt;\nvoid main() {\n\t#include &lt;uv_vertex&gt;\n\t#include &lt;uv2_vertex&gt;\n\t#include &lt;color_vertex&gt;\n\t#include &lt;beginnormal_vertex&gt;\n\t#include &lt;morphnormal_vertex&gt;\n\t#include &lt;skinbase_vertex&gt;\n\t#include &lt;skinnormal_vertex&gt;\n\t#include &lt;defaultnormal_vertex&gt;\n\t#include &lt;begin_vertex&gt;\n\t#include &lt;morphtarget_vertex&gt;\n\t#include &lt;skinning_vertex&gt;\n\t#include &lt;project_vertex&gt;\n\t#include &lt;logdepthbuf_vertex&gt;\n\t#include &lt;clipping_planes_vertex&gt;\n\t#include &lt;worldpos_vertex&gt;\n\t#include &lt;envmap_vertex&gt;\n\t#include &lt;lights_lambert_vertex&gt;\n\t#include &lt;shadowmap_vertex&gt;\n\t#include &lt;fog_vertex&gt;\n}",meshmatcap_frag:"#define MATCAP\nuniform vec3 diffuse;\nuniform float opacity;\nuniform sampler2D matcap;\nvarying vec3 vViewPosition;\n#ifndef FLAT_SHADED\n\tvarying vec3 vNormal;\n#endif\n#include &lt;common&gt;\n#include &lt;dithering_pars_fragment&gt;\n#include &lt;color_pars_fragment&gt;\n#include &lt;uv_pars_fragment&gt;\n#include &lt;map_pars_fragment&gt;\n#include &lt;alphamap_pars_fragment&gt;\n#include &lt;fog_pars_fragment&gt;\n#include &lt;bumpmap_pars_fragment&gt;\n#include &lt;normalmap_pars_fragment&gt;\n#include &lt;logdepthbuf_pars_fragment&gt;\n#include &lt;clipping_planes_pars_fragment&gt;\nvoid main() {\n\t#include &lt;clipping_planes_fragment&gt;\n\tvec4 diffuseColor = vec4( diffuse, opacity );\n\t#include &lt;logdepthbuf_fragment&gt;\n\t#include &lt;map_fragment&gt;\n\t#include &lt;color_fragment&gt;\n\t#include &lt;alphamap_fragment&gt;\n\t#include &lt;alphatest_fragment&gt;\n\t#include &lt;normal_fragment_begin&gt;\n\t#include &lt;normal_fragment_maps&gt;\n\tvec3 viewDir = normalize( vViewPosition );\n\tvec3 x = normalize( vec3( viewDir.z, 0.0, - viewDir.x ) );\n\tvec3 y = cross( viewDir, x );\n\tvec2 uv = vec2( dot( x, normal ), dot( y, normal ) ) * 0.495 + 0.5;\n\t#ifdef USE_MATCAP\n\t\tvec4 matcapColor = texture2D( matcap, uv );\n\t\tmatcapColor = matcapTexelToLinear( matcapColor );\n\t#else\n\t\tvec4 matcapColor = vec4( 1.0 );\n\t#endif\n\tvec3 outgoingLight = diffuseColor.rgb * matcapColor.rgb;\n\tgl_FragColor = vec4( outgoingLight, diffuseColor.a );\n\t#include &lt;tonemapping_fragment&gt;\n\t#include &lt;encodings_fragment&gt;\n\t#include &lt;fog_fragment&gt;\n\t#include &lt;premultiplied_alpha_fragment&gt;\n\t#include &lt;dithering_fragment&gt;\n}",meshmatcap_vert:"#define MATCAP\nvarying vec3 vViewPosition;\n#ifndef FLAT_SHADED\n\tvarying vec3 vNormal;\n#endif\n#include &lt;common&gt;\n#include &lt;uv_pars_vertex&gt;\n#include &lt;color_pars_vertex&gt;\n#include &lt;displacementmap_pars_vertex&gt;\n#include &lt;fog_pars_vertex&gt;\n#include &lt;morphtarget_pars_vertex&gt;\n#include &lt;skinning_pars_vertex&gt;\n#include &lt;logdepthbuf_pars_vertex&gt;\n#include &lt;clipping_planes_pars_vertex&gt;\nvoid main() {\n\t#include &lt;uv_vertex&gt;\n\t#include &lt;color_vertex&gt;\n\t#include &lt;beginnormal_vertex&gt;\n\t#include &lt;morphnormal_vertex&gt;\n\t#include &lt;skinbase_vertex&gt;\n\t#include &lt;skinnormal_vertex&gt;\n\t#include &lt;defaultnormal_vertex&gt;\n\t#ifndef FLAT_SHADED\n\t\tvNormal = normalize( transformedNormal );\n\t#endif\n\t#include &lt;begin_vertex&gt;\n\t#include &lt;morphtarget_vertex&gt;\n\t#include &lt;skinning_vertex&gt;\n\t#include &lt;displacementmap_vertex&gt;\n\t#include &lt;project_vertex&gt;\n\t#include &lt;logdepthbuf_vertex&gt;\n\t#include &lt;clipping_planes_vertex&gt;\n\t#include &lt;fog_vertex&gt;\n\tvViewPosition = - mvPosition.xyz;\n}",meshtoon_frag:"#define TOON\nuniform vec3 diffuse;\nuniform vec3 emissive;\nuniform float opacity;\n#include &lt;common&gt;\n#include &lt;packing&gt;\n#include &lt;dithering_pars_fragment&gt;\n#include &lt;color_pars_fragment&gt;\n#include &lt;uv_pars_fragment&gt;\n#include &lt;uv2_pars_fragment&gt;\n#include &lt;map_pars_fragment&gt;\n#include &lt;alphamap_pars_fragment&gt;\n#include &lt;aomap_pars_fragment&gt;\n#include &lt;lightmap_pars_fragment&gt;\n#include &lt;emissivemap_pars_fragment&gt;\n#include &lt;gradientmap_pars_fragment&gt;\n#include &lt;fog_pars_fragment&gt;\n#include &lt;bsdfs&gt;\n#include &lt;lights_pars_begin&gt;\n#include &lt;lights_toon_pars_fragment&gt;\n#include &lt;shadowmap_pars_fragment&gt;\n#include &lt;bumpmap_pars_fragment&gt;\n#include &lt;normalmap_pars_fragment&gt;\n#include &lt;logdepthbuf_pars_fragment&gt;\n#include &lt;clipping_planes_pars_fragment&gt;\nvoid main() {\n\t#include &lt;clipping_planes_fragment&gt;\n\tvec4 diffuseColor = vec4( diffuse, opacity );\n\tReflectedLight reflectedLight = ReflectedLight( vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ) );\n\tvec3 totalEmissiveRadiance = emissive;\n\t#include &lt;logdepthbuf_fragment&gt;\n\t#include &lt;map_fragment&gt;\n\t#include &lt;color_fragment&gt;\n\t#include &lt;alphamap_fragment&gt;\n\t#include &lt;alphatest_fragment&gt;\n\t#include &lt;normal_fragment_begin&gt;\n\t#include &lt;normal_fragment_maps&gt;\n\t#include &lt;emissivemap_fragment&gt;\n\t#include &lt;lights_toon_fragment&gt;\n\t#include &lt;lights_fragment_begin&gt;\n\t#include &lt;lights_fragment_maps&gt;\n\t#include &lt;lights_fragment_end&gt;\n\t#include &lt;aomap_fragment&gt;\n\tvec3 outgoingLight = reflectedLight.directDiffuse + reflectedLight.indirectDiffuse + totalEmissiveRadiance;\n\tgl_FragColor = vec4( outgoingLight, diffuseColor.a );\n\t#include &lt;tonemapping_fragment&gt;\n\t#include &lt;encodings_fragment&gt;\n\t#include &lt;fog_fragment&gt;\n\t#include &lt;premultiplied_alpha_fragment&gt;\n\t#include &lt;dithering_fragment&gt;\n}",meshtoon_vert:"#define TOON\nvarying vec3 vViewPosition;\n#ifndef FLAT_SHADED\n\tvarying vec3 vNormal;\n#endif\n#include &lt;common&gt;\n#include &lt;uv_pars_vertex&gt;\n#include &lt;uv2_pars_vertex&gt;\n#include &lt;displacementmap_pars_vertex&gt;\n#include &lt;color_pars_vertex&gt;\n#include &lt;fog_pars_vertex&gt;\n#include &lt;morphtarget_pars_vertex&gt;\n#include &lt;skinning_pars_vertex&gt;\n#include &lt;shadowmap_pars_vertex&gt;\n#include &lt;logdepthbuf_pars_vertex&gt;\n#include &lt;clipping_planes_pars_vertex&gt;\nvoid main() {\n\t#include &lt;uv_vertex&gt;\n\t#include &lt;uv2_vertex&gt;\n\t#include &lt;color_vertex&gt;\n\t#include &lt;beginnormal_vertex&gt;\n\t#include &lt;morphnormal_vertex&gt;\n\t#include &lt;skinbase_vertex&gt;\n\t#include &lt;skinnormal_vertex&gt;\n\t#include &lt;defaultnormal_vertex&gt;\n#ifndef FLAT_SHADED\n\tvNormal = normalize( transformedNormal );\n#endif\n\t#include &lt;begin_vertex&gt;\n\t#include &lt;morphtarget_vertex&gt;\n\t#include &lt;skinning_vertex&gt;\n\t#include &lt;displacementmap_vertex&gt;\n\t#include &lt;project_vertex&gt;\n\t#include &lt;logdepthbuf_vertex&gt;\n\t#include &lt;clipping_planes_vertex&gt;\n\tvViewPosition = - mvPosition.xyz;\n\t#include &lt;worldpos_vertex&gt;\n\t#include &lt;shadowmap_vertex&gt;\n\t#include &lt;fog_vertex&gt;\n}",meshphong_frag:"#define PHONG\nuniform vec3 diffuse;\nuniform vec3 emissive;\nuniform vec3 specular;\nuniform float shininess;\nuniform float opacity;\n#include &lt;common&gt;\n#include &lt;packing&gt;\n#include &lt;dithering_pars_fragment&gt;\n#include &lt;color_pars_fragment&gt;\n#include &lt;uv_pars_fragment&gt;\n#include &lt;uv2_pars_fragment&gt;\n#include &lt;map_pars_fragment&gt;\n#include &lt;alphamap_pars_fragment&gt;\n#include &lt;aomap_pars_fragment&gt;\n#include &lt;lightmap_pars_fragment&gt;\n#include &lt;emissivemap_pars_fragment&gt;\n#include &lt;envmap_common_pars_fragment&gt;\n#include &lt;envmap_pars_fragment&gt;\n#include &lt;cube_uv_reflection_fragment&gt;\n#include &lt;fog_pars_fragment&gt;\n#include &lt;bsdfs&gt;\n#include &lt;lights_pars_begin&gt;\n#include &lt;lights_phong_pars_fragment&gt;\n#include &lt;shadowmap_pars_fragment&gt;\n#include &lt;bumpmap_pars_fragment&gt;\n#include &lt;normalmap_pars_fragment&gt;\n#include &lt;specularmap_pars_fragment&gt;\n#include &lt;logdepthbuf_pars_fragment&gt;\n#include &lt;clipping_planes_pars_fragment&gt;\nvoid main() {\n\t#include &lt;clipping_planes_fragment&gt;\n\tvec4 diffuseColor = vec4( diffuse, opacity );\n\tReflectedLight reflectedLight = ReflectedLight( vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ) );\n\tvec3 totalEmissiveRadiance = emissive;\n\t#include &lt;logdepthbuf_fragment&gt;\n\t#include &lt;map_fragment&gt;\n\t#include &lt;color_fragment&gt;\n\t#include &lt;alphamap_fragment&gt;\n\t#include &lt;alphatest_fragment&gt;\n\t#include &lt;specularmap_fragment&gt;\n\t#include &lt;normal_fragment_begin&gt;\n\t#include &lt;normal_fragment_maps&gt;\n\t#include &lt;emissivemap_fragment&gt;\n\t#include &lt;lights_phong_fragment&gt;\n\t#include &lt;lights_fragment_begin&gt;\n\t#include &lt;lights_fragment_maps&gt;\n\t#include &lt;lights_fragment_end&gt;\n\t#include &lt;aomap_fragment&gt;\n\tvec3 outgoingLight = reflectedLight.directDiffuse + reflectedLight.indirectDiffuse + reflectedLight.directSpecular + reflectedLight.indirectSpecular + totalEmissiveRadiance;\n\t#include &lt;envmap_fragment&gt;\n\tgl_FragColor = vec4( outgoingLight, diffuseColor.a );\n\t#include &lt;tonemapping_fragment&gt;\n\t#include &lt;encodings_fragment&gt;\n\t#include &lt;fog_fragment&gt;\n\t#include &lt;premultiplied_alpha_fragment&gt;\n\t#include &lt;dithering_fragment&gt;\n}",meshphong_vert:"#define PHONG\nvarying vec3 vViewPosition;\n#ifndef FLAT_SHADED\n\tvarying vec3 vNormal;\n#endif\n#include &lt;common&gt;\n#include &lt;uv_pars_vertex&gt;\n#include &lt;uv2_pars_vertex&gt;\n#include &lt;displacementmap_pars_vertex&gt;\n#include &lt;envmap_pars_vertex&gt;\n#include &lt;color_pars_vertex&gt;\n#include &lt;fog_pars_vertex&gt;\n#include &lt;morphtarget_pars_vertex&gt;\n#include &lt;skinning_pars_vertex&gt;\n#include &lt;shadowmap_pars_vertex&gt;\n#include &lt;logdepthbuf_pars_vertex&gt;\n#include &lt;clipping_planes_pars_vertex&gt;\nvoid main() {\n\t#include &lt;uv_vertex&gt;\n\t#include &lt;uv2_vertex&gt;\n\t#include &lt;color_vertex&gt;\n\t#include &lt;beginnormal_vertex&gt;\n\t#include &lt;morphnormal_vertex&gt;\n\t#include &lt;skinbase_vertex&gt;\n\t#include &lt;skinnormal_vertex&gt;\n\t#include &lt;defaultnormal_vertex&gt;\n#ifndef FLAT_SHADED\n\tvNormal = normalize( transformedNormal );\n#endif\n\t#include &lt;begin_vertex&gt;\n\t#include &lt;morphtarget_vertex&gt;\n\t#include &lt;skinning_vertex&gt;\n\t#include &lt;displacementmap_vertex&gt;\n\t#include &lt;project_vertex&gt;\n\t#include &lt;logdepthbuf_vertex&gt;\n\t#include &lt;clipping_planes_vertex&gt;\n\tvViewPosition = - mvPosition.xyz;\n\t#include &lt;worldpos_vertex&gt;\n\t#include &lt;envmap_vertex&gt;\n\t#include &lt;shadowmap_vertex&gt;\n\t#include &lt;fog_vertex&gt;\n}",meshphysical_frag:"#define STANDARD\n#ifdef PHYSICAL\n\t#define REFLECTIVITY\n\t#define CLEARCOAT\n\t#define TRANSMISSION\n#endif\nuniform vec3 diffuse;\nuniform vec3 emissive;\nuniform float roughness;\nuniform float metalness;\nuniform float opacity;\n#ifdef TRANSMISSION\n\tuniform float transmission;\n#endif\n#ifdef REFLECTIVITY\n\tuniform float reflectivity;\n#endif\n#ifdef CLEARCOAT\n\tuniform float clearcoat;\n\tuniform float clearcoatRoughness;\n#endif\n#ifdef USE_SHEEN\n\tuniform vec3 sheen;\n#endif\nvarying vec3 vViewPosition;\n#ifndef FLAT_SHADED\n\tvarying vec3 vNormal;\n\t#ifdef USE_TANGENT\n\t\tvarying vec3 vTangent;\n\t\tvarying vec3 vBitangent;\n\t#endif\n#endif\n#include &lt;common&gt;\n#include &lt;packing&gt;\n#include &lt;dithering_pars_fragment&gt;\n#include &lt;color_pars_fragment&gt;\n#include &lt;uv_pars_fragment&gt;\n#include &lt;uv2_pars_fragment&gt;\n#include &lt;map_pars_fragment&gt;\n#include &lt;alphamap_pars_fragment&gt;\n#include &lt;aomap_pars_fragment&gt;\n#include &lt;lightmap_pars_fragment&gt;\n#include &lt;emissivemap_pars_fragment&gt;\n#include &lt;transmissionmap_pars_fragment&gt;\n#include &lt;bsdfs&gt;\n#include &lt;cube_uv_reflection_fragment&gt;\n#include &lt;envmap_common_pars_fragment&gt;\n#include &lt;envmap_physical_pars_fragment&gt;\n#include &lt;fog_pars_fragment&gt;\n#include &lt;lights_pars_begin&gt;\n#include &lt;lights_physical_pars_fragment&gt;\n#include &lt;shadowmap_pars_fragment&gt;\n#include &lt;bumpmap_pars_fragment&gt;\n#include &lt;normalmap_pars_fragment&gt;\n#include &lt;clearcoat_pars_fragment&gt;\n#include &lt;roughnessmap_pars_fragment&gt;\n#include &lt;metalnessmap_pars_fragment&gt;\n#include &lt;logdepthbuf_pars_fragment&gt;\n#include &lt;clipping_planes_pars_fragment&gt;\nvoid main() {\n\t#include &lt;clipping_planes_fragment&gt;\n\tvec4 diffuseColor = vec4( diffuse, opacity );\n\tReflectedLight reflectedLight = ReflectedLight( vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ) );\n\tvec3 totalEmissiveRadiance = emissive;\n\t#ifdef TRANSMISSION\n\t\tfloat totalTransmission = transmission;\n\t#endif\n\t#include &lt;logdepthbuf_fragment&gt;\n\t#include &lt;map_fragment&gt;\n\t#include &lt;color_fragment&gt;\n\t#include &lt;alphamap_fragment&gt;\n\t#include &lt;alphatest_fragment&gt;\n\t#include &lt;roughnessmap_fragment&gt;\n\t#include &lt;metalnessmap_fragment&gt;\n\t#include &lt;normal_fragment_begin&gt;\n\t#include &lt;normal_fragment_maps&gt;\n\t#include &lt;clearcoat_normal_fragment_begin&gt;\n\t#include &lt;clearcoat_normal_fragment_maps&gt;\n\t#include &lt;emissivemap_fragment&gt;\n\t#include &lt;transmissionmap_fragment&gt;\n\t#include &lt;lights_physical_fragment&gt;\n\t#include &lt;lights_fragment_begin&gt;\n\t#include &lt;lights_fragment_maps&gt;\n\t#include &lt;lights_fragment_end&gt;\n\t#include &lt;aomap_fragment&gt;\n\tvec3 outgoingLight = reflectedLight.directDiffuse + reflectedLight.indirectDiffuse + reflectedLight.directSpecular + reflectedLight.indirectSpecular + totalEmissiveRadiance;\n\t#ifdef TRANSMISSION\n\t\tdiffuseColor.a *= mix( saturate( 1. - totalTransmission + linearToRelativeLuminance( reflectedLight.directSpecular + reflectedLight.indirectSpecular ) ), 1.0, metalness );\n\t#endif\n\tgl_FragColor = vec4( outgoingLight, diffuseColor.a );\n\t#include &lt;tonemapping_fragment&gt;\n\t#include &lt;encodings_fragment&gt;\n\t#include &lt;fog_fragment&gt;\n\t#include &lt;premultiplied_alpha_fragment&gt;\n\t#include &lt;dithering_fragment&gt;\n}",meshphysical_vert:"#define STANDARD\nvarying vec3 vViewPosition;\n#ifndef FLAT_SHADED\n\tvarying vec3 vNormal;\n\t#ifdef USE_TANGENT\n\t\tvarying vec3 vTangent;\n\t\tvarying vec3 vBitangent;\n\t#endif\n#endif\n#include &lt;common&gt;\n#include &lt;uv_pars_vertex&gt;\n#include &lt;uv2_pars_vertex&gt;\n#include &lt;displacementmap_pars_vertex&gt;\n#include &lt;color_pars_vertex&gt;\n#include &lt;fog_pars_vertex&gt;\n#include &lt;morphtarget_pars_vertex&gt;\n#include &lt;skinning_pars_vertex&gt;\n#include &lt;shadowmap_pars_vertex&gt;\n#include &lt;logdepthbuf_pars_vertex&gt;\n#include &lt;clipping_planes_pars_vertex&gt;\nvoid main() {\n\t#include &lt;uv_vertex&gt;\n\t#include &lt;uv2_vertex&gt;\n\t#include &lt;color_vertex&gt;\n\t#include &lt;beginnormal_vertex&gt;\n\t#include &lt;morphnormal_vertex&gt;\n\t#include &lt;skinbase_vertex&gt;\n\t#include &lt;skinnormal_vertex&gt;\n\t#include &lt;defaultnormal_vertex&gt;\n#ifndef FLAT_SHADED\n\tvNormal = normalize( transformedNormal );\n\t#ifdef USE_TANGENT\n\t\tvTangent = normalize( transformedTangent );\n\t\tvBitangent = normalize( cross( vNormal, vTangent ) * tangent.w );\n\t#endif\n#endif\n\t#include &lt;begin_vertex&gt;\n\t#include &lt;morphtarget_vertex&gt;\n\t#include &lt;skinning_vertex&gt;\n\t#include &lt;displacementmap_vertex&gt;\n\t#include &lt;project_vertex&gt;\n\t#include &lt;logdepthbuf_vertex&gt;\n\t#include &lt;clipping_planes_vertex&gt;\n\tvViewPosition = - mvPosition.xyz;\n\t#include &lt;worldpos_vertex&gt;\n\t#include &lt;shadowmap_vertex&gt;\n\t#include &lt;fog_vertex&gt;\n}",normal_frag:"#define NORMAL\nuniform float opacity;\n#if defined( FLAT_SHADED ) || defined( USE_BUMPMAP ) || defined( TANGENTSPACE_NORMALMAP )\n\tvarying vec3 vViewPosition;\n#endif\n#ifndef FLAT_SHADED\n\tvarying vec3 vNormal;\n\t#ifdef USE_TANGENT\n\t\tvarying vec3 vTangent;\n\t\tvarying vec3 vBitangent;\n\t#endif\n#endif\n#include &lt;packing&gt;\n#include &lt;uv_pars_fragment&gt;\n#include &lt;bumpmap_pars_fragment&gt;\n#include &lt;normalmap_pars_fragment&gt;\n#include &lt;logdepthbuf_pars_fragment&gt;\n#include &lt;clipping_planes_pars_fragment&gt;\nvoid main() {\n\t#include &lt;clipping_planes_fragment&gt;\n\t#include &lt;logdepthbuf_fragment&gt;\n\t#include &lt;normal_fragment_begin&gt;\n\t#include &lt;normal_fragment_maps&gt;\n\tgl_FragColor = vec4( packNormalToRGB( normal ), opacity );\n}",normal_vert:"#define NORMAL\n#if defined( FLAT_SHADED ) || defined( USE_BUMPMAP ) || defined( TANGENTSPACE_NORMALMAP )\n\tvarying vec3 vViewPosition;\n#endif\n#ifndef FLAT_SHADED\n\tvarying vec3 vNormal;\n\t#ifdef USE_TANGENT\n\t\tvarying vec3 vTangent;\n\t\tvarying vec3 vBitangent;\n\t#endif\n#endif\n#include &lt;common&gt;\n#include &lt;uv_pars_vertex&gt;\n#include &lt;displacementmap_pars_vertex&gt;\n#include &lt;morphtarget_pars_vertex&gt;\n#include &lt;skinning_pars_vertex&gt;\n#include &lt;logdepthbuf_pars_vertex&gt;\n#include &lt;clipping_planes_pars_vertex&gt;\nvoid main() {\n\t#include &lt;uv_vertex&gt;\n\t#include &lt;beginnormal_vertex&gt;\n\t#include &lt;morphnormal_vertex&gt;\n\t#include &lt;skinbase_vertex&gt;\n\t#include &lt;skinnormal_vertex&gt;\n\t#include &lt;defaultnormal_vertex&gt;\n#ifndef FLAT_SHADED\n\tvNormal = normalize( transformedNormal );\n\t#ifdef USE_TANGENT\n\t\tvTangent = normalize( transformedTangent );\n\t\tvBitangent = normalize( cross( vNormal, vTangent ) * tangent.w );\n\t#endif\n#endif\n\t#include &lt;begin_vertex&gt;\n\t#include &lt;morphtarget_vertex&gt;\n\t#include &lt;skinning_vertex&gt;\n\t#include &lt;displacementmap_vertex&gt;\n\t#include &lt;project_vertex&gt;\n\t#include &lt;logdepthbuf_vertex&gt;\n\t#include &lt;clipping_planes_vertex&gt;\n#if defined( FLAT_SHADED ) || defined( USE_BUMPMAP ) || defined( TANGENTSPACE_NORMALMAP )\n\tvViewPosition = - mvPosition.xyz;\n#endif\n}",points_frag:"uniform vec3 diffuse;\nuniform float opacity;\n#include &lt;common&gt;\n#include &lt;color_pars_fragment&gt;\n#include &lt;map_particle_pars_fragment&gt;\n#include &lt;fog_pars_fragment&gt;\n#include &lt;logdepthbuf_pars_fragment&gt;\n#include &lt;clipping_planes_pars_fragment&gt;\nvoid main() {\n\t#include &lt;clipping_planes_fragment&gt;\n\tvec3 outgoingLight = vec3( 0.0 );\n\tvec4 diffuseColor = vec4( diffuse, opacity );\n\t#include &lt;logdepthbuf_fragment&gt;\n\t#include &lt;map_particle_fragment&gt;\n\t#include &lt;color_fragment&gt;\n\t#include &lt;alphatest_fragment&gt;\n\toutgoingLight = diffuseColor.rgb;\n\tgl_FragColor = vec4( outgoingLight, diffuseColor.a );\n\t#include &lt;tonemapping_fragment&gt;\n\t#include &lt;encodings_fragment&gt;\n\t#include &lt;fog_fragment&gt;\n\t#include &lt;premultiplied_alpha_fragment&gt;\n}",points_vert:"uniform float size;\nuniform float scale;\n#include &lt;common&gt;\n#include &lt;color_pars_vertex&gt;\n#include &lt;fog_pars_vertex&gt;\n#include &lt;morphtarget_pars_vertex&gt;\n#include &lt;logdepthbuf_pars_vertex&gt;\n#include &lt;clipping_planes_pars_vertex&gt;\nvoid main() {\n\t#include &lt;color_vertex&gt;\n\t#include &lt;begin_vertex&gt;\n\t#include &lt;morphtarget_vertex&gt;\n\t#include &lt;project_vertex&gt;\n\tgl_PointSize = size;\n\t#ifdef USE_SIZEATTENUATION\n\t\tbool isPerspective = isPerspectiveMatrix( projectionMatrix );\n\t\tif ( isPerspective ) gl_PointSize *= ( scale / - mvPosition.z );\n\t#endif\n\t#include &lt;logdepthbuf_vertex&gt;\n\t#include &lt;clipping_planes_vertex&gt;\n\t#include &lt;worldpos_vertex&gt;\n\t#include &lt;fog_vertex&gt;\n}",shadow_frag:"uniform vec3 color;\nuniform float opacity;\n#include &lt;common&gt;\n#include &lt;packing&gt;\n#include &lt;fog_pars_fragment&gt;\n#include &lt;bsdfs&gt;\n#include &lt;lights_pars_begin&gt;\n#include &lt;shadowmap_pars_fragment&gt;\n#include &lt;shadowmask_pars_fragment&gt;\nvoid main() {\n\tgl_FragColor = vec4( color, opacity * ( 1.0 - getShadowMask() ) );\n\t#include &lt;tonemapping_fragment&gt;\n\t#include &lt;encodings_fragment&gt;\n\t#include &lt;fog_fragment&gt;\n}",shadow_vert:"#include &lt;common&gt;\n#include &lt;fog_pars_vertex&gt;\n#include &lt;shadowmap_pars_vertex&gt;\nvoid main() {\n\t#include &lt;begin_vertex&gt;\n\t#include &lt;project_vertex&gt;\n\t#include &lt;worldpos_vertex&gt;\n\t#include &lt;beginnormal_vertex&gt;\n\t#include &lt;morphnormal_vertex&gt;\n\t#include &lt;skinbase_vertex&gt;\n\t#include &lt;skinnormal_vertex&gt;\n\t#include &lt;defaultnormal_vertex&gt;\n\t#include &lt;shadowmap_vertex&gt;\n\t#include &lt;fog_vertex&gt;\n}",sprite_frag:"uniform vec3 diffuse;\nuniform float opacity;\n#include &lt;common&gt;\n#include &lt;uv_pars_fragment&gt;\n#include &lt;map_pars_fragment&gt;\n#include &lt;alphamap_pars_fragment&gt;\n#include &lt;fog_pars_fragment&gt;\n#include &lt;logdepthbuf_pars_fragment&gt;\n#include &lt;clipping_planes_pars_fragment&gt;\nvoid main() {\n\t#include &lt;clipping_planes_fragment&gt;\n\tvec3 outgoingLight = vec3( 0.0 );\n\tvec4 diffuseColor = vec4( diffuse, opacity );\n\t#include &lt;logdepthbuf_fragment&gt;\n\t#include &lt;map_fragment&gt;\n\t#include &lt;alphamap_fragment&gt;\n\t#include &lt;alphatest_fragment&gt;\n\toutgoingLight = diffuseColor.rgb;\n\tgl_FragColor = vec4( outgoingLight, diffuseColor.a );\n\t#include &lt;tonemapping_fragment&gt;\n\t#include &lt;encodings_fragment&gt;\n\t#include &lt;fog_fragment&gt;\n}",sprite_vert:"uniform float rotation;\nuniform vec2 center;\n#include &lt;common&gt;\n#include &lt;uv_pars_vertex&gt;\n#include &lt;fog_pars_vertex&gt;\n#include &lt;logdepthbuf_pars_vertex&gt;\n#include &lt;clipping_planes_pars_vertex&gt;\nvoid main() {\n\t#include &lt;uv_vertex&gt;\n\tvec4 mvPosition = modelViewMatrix * vec4( 0.0, 0.0, 0.0, 1.0 );\n\tvec2 scale;\n\tscale.x = length( vec3( modelMatrix[ 0 ].x, modelMatrix[ 0 ].y, modelMatrix[ 0 ].z ) );\n\tscale.y = length( vec3( modelMatrix[ 1 ].x, modelMatrix[ 1 ].y, modelMatrix[ 1 ].z ) );\n\t#ifndef USE_SIZEATTENUATION\n\t\tbool isPerspective = isPerspectiveMatrix( projectionMatrix );\n\t\tif ( isPerspective ) scale *= - mvPosition.z;\n\t#endif\n\tvec2 alignedPosition = ( position.xy - ( center - vec2( 0.5 ) ) ) * scale;\n\tvec2 rotatedPosition;\n\trotatedPosition.x = cos( rotation ) * alignedPosition.x - sin( rotation ) * alignedPosition.y;\n\trotatedPosition.y = sin( rotation ) * alignedPosition.x + cos( rotation ) * alignedPosition.y;\n\tmvPosition.xy += rotatedPosition;\n\tgl_Position = projectionMatrix * mvPosition;\n\t#include &lt;logdepthbuf_vertex&gt;\n\t#include &lt;clipping_planes_vertex&gt;\n\t#include &lt;fog_vertex&gt;\n}"},ui={common:{diffuse:{value:new tn(15658734)},opacity:{value:1},map:{value:null},uvTransform:{value:new yt},uv2Transform:{value:new yt},alphaMap:{value:null}},specularmap:{specularMap:{value:null}},envmap:{envMap:{value:null},flipEnvMap:{value:-1},reflectivity:{value:1},refractionRatio:{value:.98},maxMipLevel:{value:0}},aomap:{aoMap:{value:null},aoMapIntensity:{value:1}},lightmap:{lightMap:{value:null},lightMapIntensity:{value:1}},emissivemap:{emissiveMap:{value:null}},bumpmap:{bumpMap:{value:null},bumpScale:{value:1}},normalmap:{normalMap:{value:null},normalScale:{value:new vt(1,1)}},displacementmap:{displacementMap:{value:null},displacementScale:{value:1},displacementBias:{value:0}},roughnessmap:{roughnessMap:{value:null}},metalnessmap:{metalnessMap:{value:null}},gradientmap:{gradientMap:{value:null}},fog:{fogDensity:{value:25e-5},fogNear:{value:1},fogFar:{value:2e3},fogColor:{value:new tn(16777215)}},lights:{ambientLightColor:{value:[]},lightProbe:{value:[]},directionalLights:{value:[],properties:{direction:{},color:{}}},directionalLightShadows:{value:[],properties:{shadowBias:{},shadowNormalBias:{},shadowRadius:{},shadowMapSize:{}}},directionalShadowMap:{value:[]},directionalShadowMatrix:{value:[]},spotLights:{value:[],properties:{color:{},position:{},direction:{},distance:{},coneCos:{},penumbraCos:{},decay:{}}},spotLightShadows:{value:[],properties:{shadowBias:{},shadowNormalBias:{},shadowRadius:{},shadowMapSize:{}}},spotShadowMap:{value:[]},spotShadowMatrix:{value:[]},pointLights:{value:[],properties:{color:{},position:{},decay:{},distance:{}}},pointLightShadows:{value:[],properties:{shadowBias:{},shadowNormalBias:{},shadowRadius:{},shadowMapSize:{},shadowCameraNear:{},shadowCameraFar:{}}},pointShadowMap:{value:[]},pointShadowMatrix:{value:[]},hemisphereLights:{value:[],properties:{direction:{},skyColor:{},groundColor:{}}},rectAreaLights:{value:[],properties:{color:{},position:{},width:{},height:{}}},ltc_1:{value:null},ltc_2:{value:null}},points:{diffuse:{value:new tn(15658734)},opacity:{value:1},size:{value:1},scale:{value:1},map:{value:null},alphaMap:{value:null},uvTransform:{value:new yt}},sprite:{diffuse:{value:new tn(15658734)},opacity:{value:1},center:{value:new vt(.5,.5)},rotation:{value:0},map:{value:null},alphaMap:{value:null},uvTransform:{value:new yt}}},di={basic:{uniforms:Yn([ui.common,ui.specularmap,ui.envmap,ui.aomap,ui.lightmap,ui.fog]),vertexShader:hi.meshbasic_vert,fragmentShader:hi.meshbasic_frag},lambert:{uniforms:Yn([ui.common,ui.specularmap,ui.envmap,ui.aomap,ui.lightmap,ui.emissivemap,ui.fog,ui.lights,{emissive:{value:new tn(0)}}]),vertexShader:hi.meshlambert_vert,fragmentShader:hi.meshlambert_frag},phong:{uniforms:Yn([ui.common,ui.specularmap,ui.envmap,ui.aomap,ui.lightmap,ui.emissivemap,ui.bumpmap,ui.normalmap,ui.displacementmap,ui.fog,ui.lights,{emissive:{value:new tn(0)},specular:{value:new tn(1118481)},shininess:{value:30}}]),vertexShader:hi.meshphong_vert,fragmentShader:hi.meshphong_frag},standard:{uniforms:Yn([ui.common,ui.envmap,ui.aomap,ui.lightmap,ui.emissivemap,ui.bumpmap,ui.normalmap,ui.displacementmap,ui.roughnessmap,ui.metalnessmap,ui.fog,ui.lights,{emissive:{value:new tn(0)},roughness:{value:1},metalness:{value:0},envMapIntensity:{value:1}}]),vertexShader:hi.meshphysical_vert,fragmentShader:hi.meshphysical_frag},toon:{uniforms:Yn([ui.common,ui.aomap,ui.lightmap,ui.emissivemap,ui.bumpmap,ui.normalmap,ui.displacementmap,ui.gradientmap,ui.fog,ui.lights,{emissive:{value:new tn(0)}}]),vertexShader:hi.meshtoon_vert,fragmentShader:hi.meshtoon_frag},matcap:{uniforms:Yn([ui.common,ui.bumpmap,ui.normalmap,ui.displacementmap,ui.fog,{matcap:{value:null}}]),vertexShader:hi.meshmatcap_vert,fragmentShader:hi.meshmatcap_frag},points:{uniforms:Yn([ui.points,ui.fog]),vertexShader:hi.points_vert,fragmentShader:hi.points_frag},dashed:{uniforms:Yn([ui.common,ui.fog,{scale:{value:1},dashSize:{value:1},totalSize:{value:2}}]),vertexShader:hi.linedashed_vert,fragmentShader:hi.linedashed_frag},depth:{uniforms:Yn([ui.common,ui.displacementmap]),vertexShader:hi.depth_vert,fragmentShader:hi.depth_frag},normal:{uniforms:Yn([ui.common,ui.bumpmap,ui.normalmap,ui.displacementmap,{opacity:{value:1}}]),vertexShader:hi.normal_vert,fragmentShader:hi.normal_frag},sprite:{uniforms:Yn([ui.sprite,ui.fog]),vertexShader:hi.sprite_vert,fragmentShader:hi.sprite_frag},background:{uniforms:{uvTransform:{value:new yt},t2D:{value:null}},vertexShader:hi.background_vert,fragmentShader:hi.background_frag},cube:{uniforms:Yn([ui.envmap,{opacity:{value:1}}]),vertexShader:hi.cube_vert,fragmentShader:hi.cube_frag},equirect:{uniforms:{tEquirect:{value:null}},vertexShader:hi.equirect_vert,fragmentShader:hi.equirect_frag},distanceRGBA:{uniforms:Yn([ui.common,ui.displacementmap,{referencePosition:{value:new Lt},nearDistance:{value:1},farDistance:{value:1e3}}]),vertexShader:hi.distanceRGBA_vert,fragmentShader:hi.distanceRGBA_frag},shadow:{uniforms:Yn([ui.lights,ui.fog,{color:{value:new tn(0)},opacity:{value:1}}]),vertexShader:hi.shadow_vert,fragmentShader:hi.shadow_frag}};function pi(t,e,n,i,r){const s=new tn(0);let a,o,c=0,h=null,u=0,d=null;function p(t,e){n.buffers.color.setClear(t.r,t.g,t.b,e,r)}return{getClearColor:function(){return s},setClearColor:function(t,e=1){s.set(t),c=e,p(s,c)},getClearAlpha:function(){return c},setClearAlpha:function(t){c=t,p(s,c)},render:function(n,r,m,f){let g=!0===r.isScene?r.background:null;g&amp;&amp;g.isTexture&amp;&amp;(g=e.get(g));const v=t.xr,y=v.getSession&amp;&amp;v.getSession();y&amp;&amp;"additive"===y.environmentBlendMode&amp;&amp;(g=null),null===g?p(s,c):g&amp;&amp;g.isColor&amp;&amp;(p(g,1),f=!0),(t.autoClear||f)&amp;&amp;t.clear(t.autoClearColor,t.autoClearDepth,t.autoClearStencil),g&amp;&amp;(g.isCubeTexture||g.mapping===l)?(void 0===o&amp;&amp;(o=new Wn(new qn(1,1,1),new Jn({name:"BackgroundCubeMaterial",uniforms:Xn(di.cube.uniforms),vertexShader:di.cube.vertexShader,fragmentShader:di.cube.fragmentShader,side:1,depthTest:!1,depthWrite:!1,fog:!1})),o.geometry.deleteAttribute("normal"),o.geometry.deleteAttribute("uv"),o.onBeforeRender=function(t,e,n){this.matrixWorld.copyPosition(n.matrixWorld)},Object.defineProperty(o.material,"envMap",{get:function(){return this.uniforms.envMap.value}}),i.update(o)),o.material.uniforms.envMap.value=g,o.material.uniforms.flipEnvMap.value=g.isCubeTexture&amp;&amp;g._needsFlipEnvMap?-1:1,h===g&amp;&amp;u===g.version&amp;&amp;d===t.toneMapping||(o.material.needsUpdate=!0,h=g,u=g.version,d=t.toneMapping),n.unshift(o,o.geometry,o.material,0,0,null)):g&amp;&amp;g.isTexture&amp;&amp;(void 0===a&amp;&amp;(a=new Wn(new ci(2,2),new Jn({name:"BackgroundMaterial",uniforms:Xn(di.background.uniforms),vertexShader:di.background.vertexShader,fragmentShader:di.background.fragmentShader,side:0,depthTest:!1,depthWrite:!1,fog:!1})),a.geometry.deleteAttribute("normal"),Object.defineProperty(a.material,"map",{get:function(){return this.uniforms.t2D.value}}),i.update(a)),a.material.uniforms.t2D.value=g,!0===g.matrixAutoUpdate&amp;&amp;g.updateMatrix(),a.material.uniforms.uvTransform.value.copy(g.matrix),h===g&amp;&amp;u===g.version&amp;&amp;d===t.toneMapping||(a.material.needsUpdate=!0,h=g,u=g.version,d=t.toneMapping),n.unshift(a,a.geometry,a.material,0,0,null))}}}function mi(t,e,n,i){const r=t.getParameter(34921),s=i.isWebGL2?null:e.get("OES_vertex_array_object"),a=i.isWebGL2||null!==s,o={},l=d(null);let c=l;function h(e){return i.isWebGL2?t.bindVertexArray(e):s.bindVertexArrayOES(e)}function u(e){return i.isWebGL2?t.deleteVertexArray(e):s.deleteVertexArrayOES(e)}function d(t){const e=[],n=[],i=[];for(let t=0;t&lt;r;t++)e[t]=0,n[t]=0,i[t]=0;return{geometry:null,program:null,wireframe:!1,newAttributes:e,enabledAttributes:n,attributeDivisors:i,object:t,attributes:{},index:null}}function p(){const t=c.newAttributes;for(let e=0,n=t.length;e&lt;n;e++)t[e]=0}function m(t){f(t,0)}function f(n,r){const s=c.newAttributes,a=c.enabledAttributes,o=c.attributeDivisors;if(s[n]=1,0===a[n]&amp;&amp;(t.enableVertexAttribArray(n),a[n]=1),o[n]!==r){(i.isWebGL2?t:e.get("ANGLE_instanced_arrays"))[i.isWebGL2?"vertexAttribDivisor":"vertexAttribDivisorANGLE"](n,r),o[n]=r}}function g(){const e=c.newAttributes,n=c.enabledAttributes;for(let i=0,r=n.length;i&lt;r;i++)n[i]!==e[i]&amp;&amp;(t.disableVertexAttribArray(i),n[i]=0)}function v(e,n,r,s,a,o){!0!==i.isWebGL2||5124!==r&amp;&amp;5125!==r?t.vertexAttribPointer(e,n,r,s,a,o):t.vertexAttribIPointer(e,n,r,a,o)}function y(){x(),c!==l&amp;&amp;(c=l,h(c.object))}function x(){l.geometry=null,l.program=null,l.wireframe=!1}return{setup:function(r,l,u,y,x){let _=!1;if(a){const e=function(e,n,r){const a=!0===r.wireframe;let l=o[e.id];void 0===l&amp;&amp;(l={},o[e.id]=l);let c=l[n.id];void 0===c&amp;&amp;(c={},l[n.id]=c);let h=c[a];void 0===h&amp;&amp;(h=d(i.isWebGL2?t.createVertexArray():s.createVertexArrayOES()),c[a]=h);return h}(y,u,l);c!==e&amp;&amp;(c=e,h(c.object)),_=function(t,e){const n=c.attributes,i=t.attributes;let r=0;for(const t in i){const e=n[t],s=i[t];if(void 0===e)return!0;if(e.attribute!==s)return!0;if(e.data!==s.data)return!0;r++}return c.attributesNum!==r||c.index!==e}(y,x),_&amp;&amp;function(t,e){const n={},i=t.attributes;let r=0;for(const t in i){const e=i[t],s={};s.attribute=e,e.data&amp;&amp;(s.data=e.data),n[t]=s,r++}c.attributes=n,c.attributesNum=r,c.index=e}(y,x)}else{const t=!0===l.wireframe;c.geometry===y.id&amp;&amp;c.program===u.id&amp;&amp;c.wireframe===t||(c.geometry=y.id,c.program=u.id,c.wireframe=t,_=!0)}!0===r.isInstancedMesh&amp;&amp;(_=!0),null!==x&amp;&amp;n.update(x,34963),_&amp;&amp;(!function(r,s,a,o){if(!1===i.isWebGL2&amp;&amp;(r.isInstancedMesh||o.isInstancedBufferGeometry)&amp;&amp;null===e.get("ANGLE_instanced_arrays"))return;p();const l=o.attributes,c=a.getAttributes(),h=s.defaultAttributeValues;for(const e in c){const i=c[e];if(i&gt;=0){const s=l[e];if(void 0!==s){const e=s.normalized,r=s.itemSize,a=n.get(s);if(void 0===a)continue;const l=a.buffer,c=a.type,h=a.bytesPerElement;if(s.isInterleavedBufferAttribute){const n=s.data,a=n.stride,u=s.offset;n&amp;&amp;n.isInstancedInterleavedBuffer?(f(i,n.meshPerAttribute),void 0===o._maxInstanceCount&amp;&amp;(o._maxInstanceCount=n.meshPerAttribute*n.count)):m(i),t.bindBuffer(34962,l),v(i,r,c,e,a*h,u*h)}else s.isInstancedBufferAttribute?(f(i,s.meshPerAttribute),void 0===o._maxInstanceCount&amp;&amp;(o._maxInstanceCount=s.meshPerAttribute*s.count)):m(i),t.bindBuffer(34962,l),v(i,r,c,e,0,0)}else if("instanceMatrix"===e){const e=n.get(r.instanceMatrix);if(void 0===e)continue;const s=e.buffer,a=e.type;f(i+0,1),f(i+1,1),f(i+2,1),f(i+3,1),t.bindBuffer(34962,s),t.vertexAttribPointer(i+0,4,a,!1,64,0),t.vertexAttribPointer(i+1,4,a,!1,64,16),t.vertexAttribPointer(i+2,4,a,!1,64,32),t.vertexAttribPointer(i+3,4,a,!1,64,48)}else if("instanceColor"===e){const e=n.get(r.instanceColor);if(void 0===e)continue;const s=e.buffer,a=e.type;f(i,1),t.bindBuffer(34962,s),t.vertexAttribPointer(i,3,a,!1,12,0)}else if(void 0!==h){const n=h[e];if(void 0!==n)switch(n.length){case 2:t.vertexAttrib2fv(i,n);break;case 3:t.vertexAttrib3fv(i,n);break;case 4:t.vertexAttrib4fv(i,n);break;default:t.vertexAttrib1fv(i,n)}}}}g()}(r,l,u,y),null!==x&amp;&amp;t.bindBuffer(34963,n.get(x).buffer))},reset:y,resetDefaultState:x,dispose:function(){y();for(const t in o){const e=o[t];for(const t in e){const n=e[t];for(const t in n)u(n[t].object),delete n[t];delete e[t]}delete o[t]}},releaseStatesOfGeometry:function(t){if(void 0===o[t.id])return;const e=o[t.id];for(const t in e){const n=e[t];for(const t in n)u(n[t].object),delete n[t];delete e[t]}delete o[t.id]},releaseStatesOfProgram:function(t){for(const e in o){const n=o[e];if(void 0===n[t.id])continue;const i=n[t.id];for(const t in i)u(i[t].object),delete i[t];delete n[t.id]}},initAttributes:p,enableAttribute:m,disableUnusedAttributes:g}}function fi(t,e,n,i){const r=i.isWebGL2;let s;this.setMode=function(t){s=t},this.render=function(e,i){t.drawArrays(s,e,i),n.update(i,s,1)},this.renderInstances=function(i,a,o){if(0===o)return;let l,c;if(r)l=t,c="drawArraysInstanced";else if(l=e.get("ANGLE_instanced_arrays"),c="drawArraysInstancedANGLE",null===l)return void console.error("THREE.WebGLBufferRenderer: using THREE.InstancedBufferGeometry but hardware does not support extension ANGLE_instanced_arrays.");l[c](s,i,a,o),n.update(a,s,o)}}function gi(t,e,n){let i;function r(e){if("highp"===e){if(t.getShaderPrecisionFormat(35633,36338).precision&gt;0&amp;&amp;t.getShaderPrecisionFormat(35632,36338).precision&gt;0)return"highp";e="mediump"}return"mediump"===e&amp;&amp;t.getShaderPrecisionFormat(35633,36337).precision&gt;0&amp;&amp;t.getShaderPrecisionFormat(35632,36337).precision&gt;0?"mediump":"lowp"}const s="undefined"!=typeof WebGL2RenderingContext&amp;&amp;t instanceof WebGL2RenderingContext||"undefined"!=typeof WebGL2ComputeRenderingContext&amp;&amp;t instanceof WebGL2ComputeRenderingContext;let a=void 0!==n.precision?n.precision:"highp";const o=r(a);o!==a&amp;&amp;(console.warn("THREE.WebGLRenderer:",a,"not supported, using",o,"instead."),a=o);const l=!0===n.logarithmicDepthBuffer,c=t.getParameter(34930),h=t.getParameter(35660),u=t.getParameter(3379),d=t.getParameter(34076),p=t.getParameter(34921),m=t.getParameter(36347),f=t.getParameter(36348),g=t.getParameter(36349),v=h&gt;0,y=s||e.has("OES_texture_float");return{isWebGL2:s,getMaxAnisotropy:function(){if(void 0!==i)return i;if(!0===e.has("EXT_texture_filter_anisotropic")){const n=e.get("EXT_texture_filter_anisotropic");i=t.getParameter(n.MAX_TEXTURE_MAX_ANISOTROPY_EXT)}else i=0;return i},getMaxPrecision:r,precision:a,logarithmicDepthBuffer:l,maxTextures:c,maxVertexTextures:h,maxTextureSize:u,maxCubemapSize:d,maxAttributes:p,maxVertexUniforms:m,maxVaryings:f,maxFragmentUniforms:g,vertexTextures:v,floatFragmentTextures:y,floatVertexTextures:v&amp;&amp;y,maxSamples:s?t.getParameter(36183):0}}function vi(t){const e=this;let n=null,i=0,r=!1,s=!1;const a=new Ne,o=new yt,l={value:null,needsUpdate:!1};function c(){l.value!==n&amp;&amp;(l.value=n,l.needsUpdate=i&gt;0),e.numPlanes=i,e.numIntersection=0}function h(t,n,i,r){const s=null!==t?t.length:0;let c=null;if(0!==s){if(c=l.value,!0!==r||null===c){const e=i+4*s,r=n.matrixWorldInverse;o.getNormalMatrix(r),(null===c||c.length&lt;e)&amp;&amp;(c=new Float32Array(e));for(let e=0,n=i;e!==s;++e,n+=4)a.copy(t[e]).applyMatrix4(r,o),a.normal.toArray(c,n),c[n+3]=a.constant}l.value=c,l.needsUpdate=!0}return e.numPlanes=s,e.numIntersection=0,c}this.uniform=l,this.numPlanes=0,this.numIntersection=0,this.init=function(t,e,s){const a=0!==t.length||e||0!==i||r;return r=e,n=h(t,s,0),i=t.length,a},this.beginShadows=function(){s=!0,h(null)},this.endShadows=function(){s=!1,c()},this.setState=function(e,a,o){const u=e.clippingPlanes,d=e.clipIntersection,p=e.clipShadows,m=t.get(e);if(!r||null===u||0===u.length||s&amp;&amp;!p)s?h(null):c();else{const t=s?0:i,e=4*t;let r=m.clippingState||null;l.value=r,r=h(u,a,e,o);for(let t=0;t!==e;++t)r[t]=n[t];m.clippingState=r,this.numIntersection=d?this.numPlanes:0,this.numPlanes+=t}}}function yi(t){let e=new WeakMap;function n(t,e){return e===a?t.mapping=r:e===o&amp;&amp;(t.mapping=s),t}function i(t){const n=t.target;n.removeEventListener("dispose",i);const r=e.get(n);void 0!==r&amp;&amp;(e.delete(n),r.dispose())}return{get:function(r){if(r&amp;&amp;r.isTexture){const s=r.mapping;if(s===a||s===o){if(e.has(r)){return n(e.get(r).texture,r.mapping)}{const s=r.image;if(s&amp;&amp;s.height&gt;0){const a=t.getRenderTarget(),o=new ni(s.height/2);return o.fromEquirectangularTexture(t,r),e.set(r,o),t.setRenderTarget(a),r.addEventListener("dispose",i),n(o.texture,r.mapping)}return null}}}return r},dispose:function(){e=new WeakMap}}}function xi(t){const e={};function n(n){if(void 0!==e[n])return e[n];let i;switch(n){case"WEBGL_depth_texture":i=t.getExtension("WEBGL_depth_texture")||t.getExtension("MOZ_WEBGL_depth_texture")||t.getExtension("WEBKIT_WEBGL_depth_texture");break;case"EXT_texture_filter_anisotropic":i=t.getExtension("EXT_texture_filter_anisotropic")||t.getExtension("MOZ_EXT_texture_filter_anisotropic")||t.getExtension("WEBKIT_EXT_texture_filter_anisotropic");break;case"WEBGL_compressed_texture_s3tc":i=t.getExtension("WEBGL_compressed_texture_s3tc")||t.getExtension("MOZ_WEBGL_compressed_texture_s3tc")||t.getExtension("WEBKIT_WEBGL_compressed_texture_s3tc");break;case"WEBGL_compressed_texture_pvrtc":i=t.getExtension("WEBGL_compressed_texture_pvrtc")||t.getExtension("WEBKIT_WEBGL_compressed_texture_pvrtc");break;default:i=t.getExtension(n)}return e[n]=i,i}return{has:function(t){return null!==n(t)},init:function(t){t.isWebGL2?n("EXT_color_buffer_float"):(n("WEBGL_depth_texture"),n("OES_texture_float"),n("OES_texture_half_float"),n("OES_texture_half_float_linear"),n("OES_standard_derivatives"),n("OES_element_index_uint"),n("OES_vertex_array_object"),n("ANGLE_instanced_arrays")),n("OES_texture_float_linear"),n("EXT_color_buffer_half_float")},get:function(t){const e=n(t);return null===e&amp;&amp;console.warn("THREE.WebGLRenderer: "+t+" extension not supported."),e}}}function _i(t,e,n,i){const r={},s=new WeakMap;function a(t){const o=t.target;null!==o.index&amp;&amp;e.remove(o.index);for(const t in o.attributes)e.remove(o.attributes[t]);o.removeEventListener("dispose",a),delete r[o.id];const l=s.get(o);l&amp;&amp;(e.remove(l),s.delete(o)),i.releaseStatesOfGeometry(o),!0===o.isInstancedBufferGeometry&amp;&amp;delete o._maxInstanceCount,n.memory.geometries--}function o(t){const n=[],i=t.index,r=t.attributes.position;let a=0;if(null!==i){const t=i.array;a=i.version;for(let e=0,i=t.length;e&lt;i;e+=3){const i=t[e+0],r=t[e+1],s=t[e+2];n.push(i,r,r,s,s,i)}}else{const t=r.array;a=r.version;for(let e=0,i=t.length/3-1;e&lt;i;e+=3){const t=e+0,i=e+1,r=e+2;n.push(t,i,i,r,r,t)}}const o=new(gn(n)&gt;65535?dn:hn)(n,1);o.version=a;const l=s.get(t);l&amp;&amp;e.remove(l),s.set(t,o)}return{get:function(t,e){return!0===r[e.id]||(e.addEventListener("dispose",a),r[e.id]=!0,n.memory.geometries++),e},update:function(t){const n=t.attributes;for(const t in n)e.update(n[t],34962);const i=t.morphAttributes;for(const t in i){const n=i[t];for(let t=0,i=n.length;t&lt;i;t++)e.update(n[t],34962)}},getWireframeAttribute:function(t){const e=s.get(t);if(e){const n=t.index;null!==n&amp;&amp;e.version&lt;n.version&amp;&amp;o(t)}else o(t);return s.get(t)}}}function wi(t,e,n,i){const r=i.isWebGL2;let s,a,o;this.setMode=function(t){s=t},this.setIndex=function(t){a=t.type,o=t.bytesPerElement},this.render=function(e,i){t.drawElements(s,i,a,e*o),n.update(i,s,1)},this.renderInstances=function(i,l,c){if(0===c)return;let h,u;if(r)h=t,u="drawElementsInstanced";else if(h=e.get("ANGLE_instanced_arrays"),u="drawElementsInstancedANGLE",null===h)return void console.error("THREE.WebGLIndexedBufferRenderer: using THREE.InstancedBufferGeometry but hardware does not support extension ANGLE_instanced_arrays.");h[u](s,l,a,i*o,c),n.update(l,s,c)}}function bi(t){const e={frame:0,calls:0,triangles:0,points:0,lines:0};return{memory:{geometries:0,textures:0},render:e,programs:null,autoReset:!0,reset:function(){e.frame++,e.calls=0,e.triangles=0,e.points=0,e.lines=0},update:function(t,n,i){switch(e.calls++,n){case 4:e.triangles+=i*(t/3);break;case 1:e.lines+=i*(t/2);break;case 3:e.lines+=i*(t-1);break;case 2:e.lines+=i*t;break;case 0:e.points+=i*t;break;default:console.error("THREE.WebGLInfo: Unknown draw mode:",n)}}}}function Mi(t,e){return t[0]-e[0]}function Si(t,e){return Math.abs(e[1])-Math.abs(t[1])}function Ti(t){const e={},n=new Float32Array(8),i=[];for(let t=0;t&lt;8;t++)i[t]=[t,0];return{update:function(r,s,a,o){const l=r.morphTargetInfluences,c=void 0===l?0:l.length;let h=e[s.id];if(void 0===h){h=[];for(let t=0;t&lt;c;t++)h[t]=[t,0];e[s.id]=h}for(let t=0;t&lt;c;t++){const e=h[t];e[0]=t,e[1]=l[t]}h.sort(Si);for(let t=0;t&lt;8;t++)t&lt;c&amp;&amp;h[t][1]?(i[t][0]=h[t][0],i[t][1]=h[t][1]):(i[t][0]=Number.MAX_SAFE_INTEGER,i[t][1]=0);i.sort(Mi);const u=a.morphTargets&amp;&amp;s.morphAttributes.position,d=a.morphNormals&amp;&amp;s.morphAttributes.normal;let p=0;for(let t=0;t&lt;8;t++){const e=i[t],r=e[0],a=e[1];r!==Number.MAX_SAFE_INTEGER&amp;&amp;a?(u&amp;&amp;s.getAttribute("morphTarget"+t)!==u[r]&amp;&amp;s.setAttribute("morphTarget"+t,u[r]),d&amp;&amp;s.getAttribute("morphNormal"+t)!==d[r]&amp;&amp;s.setAttribute("morphNormal"+t,d[r]),n[t]=a,p+=a):(u&amp;&amp;!0===s.hasAttribute("morphTarget"+t)&amp;&amp;s.deleteAttribute("morphTarget"+t),d&amp;&amp;!0===s.hasAttribute("morphNormal"+t)&amp;&amp;s.deleteAttribute("morphNormal"+t),n[t]=0)}const m=s.morphTargetsRelative?1:1-p;o.getUniforms().setValue(t,"morphTargetBaseInfluence",m),o.getUniforms().setValue(t,"morphTargetInfluences",n)}}}function Ei(t,e,n,i){let r=new WeakMap;function s(t){const e=t.target;e.removeEventListener("dispose",s),n.remove(e.instanceMatrix),null!==e.instanceColor&amp;&amp;n.remove(e.instanceColor)}return{update:function(t){const a=i.render.frame,o=t.geometry,l=e.get(t,o);return r.get(l)!==a&amp;&amp;(e.update(l),r.set(l,a)),t.isInstancedMesh&amp;&amp;(!1===t.hasEventListener("dispose",s)&amp;&amp;t.addEventListener("dispose",s),n.update(t.instanceMatrix,34962),null!==t.instanceColor&amp;&amp;n.update(t.instanceColor,34962)),l},dispose:function(){r=new WeakMap}}}di.physical={uniforms:Yn([di.standard.uniforms,{clearcoat:{value:0},clearcoatMap:{value:null},clearcoatRoughness:{value:0},clearcoatRoughnessMap:{value:null},clearcoatNormalScale:{value:new vt(1,1)},clearcoatNormalMap:{value:null},sheen:{value:new tn(0)},transmission:{value:0},transmissionMap:{value:null}}]),vertexShader:hi.meshphysical_vert,fragmentShader:hi.meshphysical_frag};class Ai extends bt{constructor(t=null,e=1,n=1,i=1){super(null),this.image={data:t,width:e,height:n,depth:i},this.magFilter=p,this.minFilter=p,this.wrapR=u,this.generateMipmaps=!1,this.flipY=!1,this.unpackAlignment=1,this.needsUpdate=!0}}Ai.prototype.isDataTexture2DArray=!0;class Li extends bt{constructor(t=null,e=1,n=1,i=1){super(null),this.image={data:t,width:e,height:n,depth:i},this.magFilter=p,this.minFilter=p,this.wrapR=u,this.generateMipmaps=!1,this.flipY=!1,this.unpackAlignment=1,this.needsUpdate=!0}}Li.prototype.isDataTexture3D=!0;const Ri=new bt,Ci=new Ai,Pi=new Li,Di=new ei,Ii=[],Ni=[],Bi=new Float32Array(16),zi=new Float32Array(9),Fi=new Float32Array(4);function Oi(t,e,n){const i=t[0];if(i&lt;=0||i&gt;0)return t;const r=e*n;let s=Ii[r];if(void 0===s&amp;&amp;(s=new Float32Array(r),Ii[r]=s),0!==e){i.toArray(s,0);for(let i=1,r=0;i!==e;++i)r+=n,t[i].toArray(s,r)}return s}function Hi(t,e){if(t.length!==e.length)return!1;for(let n=0,i=t.length;n&lt;i;n++)if(t[n]!==e[n])return!1;return!0}function Gi(t,e){for(let n=0,i=e.length;n&lt;i;n++)t[n]=e[n]}function Ui(t,e){let n=Ni[e];void 0===n&amp;&amp;(n=new Int32Array(e),Ni[e]=n);for(let i=0;i!==e;++i)n[i]=t.allocateTextureUnit();return n}function ki(t,e){const n=this.cache;n[0]!==e&amp;&amp;(t.uniform1f(this.addr,e),n[0]=e)}function Vi(t,e){const n=this.cache;if(void 0!==e.x)n[0]===e.x&amp;&amp;n[1]===e.y||(t.uniform2f(this.addr,e.x,e.y),n[0]=e.x,n[1]=e.y);else{if(Hi(n,e))return;t.uniform2fv(this.addr,e),Gi(n,e)}}function Wi(t,e){const n=this.cache;if(void 0!==e.x)n[0]===e.x&amp;&amp;n[1]===e.y&amp;&amp;n[2]===e.z||(t.uniform3f(this.addr,e.x,e.y,e.z),n[0]=e.x,n[1]=e.y,n[2]=e.z);else if(void 0!==e.r)n[0]===e.r&amp;&amp;n[1]===e.g&amp;&amp;n[2]===e.b||(t.uniform3f(this.addr,e.r,e.g,e.b),n[0]=e.r,n[1]=e.g,n[2]=e.b);else{if(Hi(n,e))return;t.uniform3fv(this.addr,e),Gi(n,e)}}function ji(t,e){const n=this.cache;if(void 0!==e.x)n[0]===e.x&amp;&amp;n[1]===e.y&amp;&amp;n[2]===e.z&amp;&amp;n[3]===e.w||(t.uniform4f(this.addr,e.x,e.y,e.z,e.w),n[0]=e.x,n[1]=e.y,n[2]=e.z,n[3]=e.w);else{if(Hi(n,e))return;t.uniform4fv(this.addr,e),Gi(n,e)}}function qi(t,e){const n=this.cache,i=e.elements;if(void 0===i){if(Hi(n,e))return;t.uniformMatrix2fv(this.addr,!1,e),Gi(n,e)}else{if(Hi(n,i))return;Fi.set(i),t.uniformMatrix2fv(this.addr,!1,Fi),Gi(n,i)}}function Xi(t,e){const n=this.cache,i=e.elements;if(void 0===i){if(Hi(n,e))return;t.uniformMatrix3fv(this.addr,!1,e),Gi(n,e)}else{if(Hi(n,i))return;zi.set(i),t.uniformMatrix3fv(this.addr,!1,zi),Gi(n,i)}}function Yi(t,e){const n=this.cache,i=e.elements;if(void 0===i){if(Hi(n,e))return;t.uniformMatrix4fv(this.addr,!1,e),Gi(n,e)}else{if(Hi(n,i))return;Bi.set(i),t.uniformMatrix4fv(this.addr,!1,Bi),Gi(n,i)}}function Zi(t,e){const n=this.cache;n[0]!==e&amp;&amp;(t.uniform1i(this.addr,e),n[0]=e)}function Ji(t,e){const n=this.cache;Hi(n,e)||(t.uniform2iv(this.addr,e),Gi(n,e))}function Qi(t,e){const n=this.cache;Hi(n,e)||(t.uniform3iv(this.addr,e),Gi(n,e))}function Ki(t,e){const n=this.cache;Hi(n,e)||(t.uniform4iv(this.addr,e),Gi(n,e))}function $i(t,e){const n=this.cache;n[0]!==e&amp;&amp;(t.uniform1ui(this.addr,e),n[0]=e)}function tr(t,e){const n=this.cache;Hi(n,e)||(t.uniform2uiv(this.addr,e),Gi(n,e))}function er(t,e){const n=this.cache;Hi(n,e)||(t.uniform3uiv(this.addr,e),Gi(n,e))}function nr(t,e){const n=this.cache;Hi(n,e)||(t.uniform4uiv(this.addr,e),Gi(n,e))}function ir(t,e,n){const i=this.cache,r=n.allocateTextureUnit();i[0]!==r&amp;&amp;(t.uniform1i(this.addr,r),i[0]=r),n.safeSetTexture2D(e||Ri,r)}function rr(t,e,n){const i=this.cache,r=n.allocateTextureUnit();i[0]!==r&amp;&amp;(t.uniform1i(this.addr,r),i[0]=r),n.setTexture3D(e||Pi,r)}function sr(t,e,n){const i=this.cache,r=n.allocateTextureUnit();i[0]!==r&amp;&amp;(t.uniform1i(this.addr,r),i[0]=r),n.safeSetTextureCube(e||Di,r)}function ar(t,e,n){const i=this.cache,r=n.allocateTextureUnit();i[0]!==r&amp;&amp;(t.uniform1i(this.addr,r),i[0]=r),n.setTexture2DArray(e||Ci,r)}function or(t,e){t.uniform1fv(this.addr,e)}function lr(t,e){const n=Oi(e,this.size,2);t.uniform2fv(this.addr,n)}function cr(t,e){const n=Oi(e,this.size,3);t.uniform3fv(this.addr,n)}function hr(t,e){const n=Oi(e,this.size,4);t.uniform4fv(this.addr,n)}function ur(t,e){const n=Oi(e,this.size,4);t.uniformMatrix2fv(this.addr,!1,n)}function dr(t,e){const n=Oi(e,this.size,9);t.uniformMatrix3fv(this.addr,!1,n)}function pr(t,e){const n=Oi(e,this.size,16);t.uniformMatrix4fv(this.addr,!1,n)}function mr(t,e){t.uniform1iv(this.addr,e)}function fr(t,e){t.uniform2iv(this.addr,e)}function gr(t,e){t.uniform3iv(this.addr,e)}function vr(t,e){t.uniform4iv(this.addr,e)}function yr(t,e){t.uniform1uiv(this.addr,e)}function xr(t,e){t.uniform2uiv(this.addr,e)}function _r(t,e){t.uniform3uiv(this.addr,e)}function wr(t,e){t.uniform4uiv(this.addr,e)}function br(t,e,n){const i=e.length,r=Ui(n,i);t.uniform1iv(this.addr,r);for(let t=0;t!==i;++t)n.safeSetTexture2D(e[t]||Ri,r[t])}function Mr(t,e,n){const i=e.length,r=Ui(n,i);t.uniform1iv(this.addr,r);for(let t=0;t!==i;++t)n.safeSetTextureCube(e[t]||Di,r[t])}function Sr(t,e,n){this.id=t,this.addr=n,this.cache=[],this.setValue=function(t){switch(t){case 5126:return ki;case 35664:return Vi;case 35665:return Wi;case 35666:return ji;case 35674:return qi;case 35675:return Xi;case 35676:return Yi;case 5124:case 35670:return Zi;case 35667:case 35671:return Ji;case 35668:case 35672:return Qi;case 35669:case 35673:return Ki;case 5125:return $i;case 36294:return tr;case 36295:return er;case 36296:return nr;case 35678:case 36198:case 36298:case 36306:case 35682:return ir;case 35679:case 36299:case 36307:return rr;case 35680:case 36300:case 36308:case 36293:return sr;case 36289:case 36303:case 36311:case 36292:return ar}}(e.type)}function Tr(t,e,n){this.id=t,this.addr=n,this.cache=[],this.size=e.size,this.setValue=function(t){switch(t){case 5126:return or;case 35664:return lr;case 35665:return cr;case 35666:return hr;case 35674:return ur;case 35675:return dr;case 35676:return pr;case 5124:case 35670:return mr;case 35667:case 35671:return fr;case 35668:case 35672:return gr;case 35669:case 35673:return vr;case 5125:return yr;case 36294:return xr;case 36295:return _r;case 36296:return wr;case 35678:case 36198:case 36298:case 36306:case 35682:return br;case 35680:case 36300:case 36308:case 36293:return Mr}}(e.type)}function Er(t){this.id=t,this.seq=[],this.map={}}Tr.prototype.updateCache=function(t){const e=this.cache;t instanceof Float32Array&amp;&amp;e.length!==t.length&amp;&amp;(this.cache=new Float32Array(t.length)),Gi(e,t)},Er.prototype.setValue=function(t,e,n){const i=this.seq;for(let r=0,s=i.length;r!==s;++r){const s=i[r];s.setValue(t,e[s.id],n)}};const Ar=/(\w+)(\])?(\[|\.)?/g;function Lr(t,e){t.seq.push(e),t.map[e.id]=e}function Rr(t,e,n){const i=t.name,r=i.length;for(Ar.lastIndex=0;;){const s=Ar.exec(i),a=Ar.lastIndex;let o=s[1];const l="]"===s[2],c=s[3];if(l&amp;&amp;(o|=0),void 0===c||"["===c&amp;&amp;a+2===r){Lr(n,void 0===c?new Sr(o,t,e):new Tr(o,t,e));break}{let t=n.map[o];void 0===t&amp;&amp;(t=new Er(o),Lr(n,t)),n=t}}}function Cr(t,e){this.seq=[],this.map={};const n=t.getProgramParameter(e,35718);for(let i=0;i&lt;n;++i){const n=t.getActiveUniform(e,i);Rr(n,t.getUniformLocation(e,n.name),this)}}function Pr(t,e,n){const i=t.createShader(e);return t.shaderSource(i,n),t.compileShader(i),i}Cr.prototype.setValue=function(t,e,n,i){const r=this.map[e];void 0!==r&amp;&amp;r.setValue(t,n,i)},Cr.prototype.setOptional=function(t,e,n){const i=e[n];void 0!==i&amp;&amp;this.setValue(t,n,i)},Cr.upload=function(t,e,n,i){for(let r=0,s=e.length;r!==s;++r){const s=e[r],a=n[s.id];!1!==a.needsUpdate&amp;&amp;s.setValue(t,a.value,i)}},Cr.seqWithValue=function(t,e){const n=[];for(let i=0,r=t.length;i!==r;++i){const r=t[i];r.id in e&amp;&amp;n.push(r)}return n};let Dr=0;function Ir(t){switch(t){case X:return["Linear","( value )"];case Y:return["sRGB","( value )"];case J:return["RGBE","( value )"];case Q:return["RGBM","( value, 7.0 )"];case K:return["RGBM","( value, 16.0 )"];case $:return["RGBD","( value, 256.0 )"];case Z:return["Gamma","( value, float( GAMMA_FACTOR ) )"];case 3003:return["LogLuv","( value )"];default:return console.warn("THREE.WebGLProgram: Unsupported encoding:",t),["Linear","( value )"]}}function Nr(t,e,n){const i=t.getShaderParameter(e,35713),r=t.getShaderInfoLog(e).trim();if(i&amp;&amp;""===r)return"";return"THREE.WebGLShader: gl.getShaderInfoLog() "+n+"\n"+r+function(t){const e=t.split("\n");for(let t=0;t&lt;e.length;t++)e[t]=t+1+": "+e[t];return e.join("\n")}(t.getShaderSource(e))}function Br(t,e){const n=Ir(e);return"vec4 "+t+"( vec4 value ) { return "+n[0]+"ToLinear"+n[1]+"; }"}function zr(t,e){const n=Ir(e);return"vec4 "+t+"( vec4 value ) { return LinearTo"+n[0]+n[1]+"; }"}function Fr(t,e){let n;switch(e){case 1:n="Linear";break;case 2:n="Reinhard";break;case 3:n="OptimizedCineon";break;case 4:n="ACESFilmic";break;case 5:n="Custom";break;default:console.warn("THREE.WebGLProgram: Unsupported toneMapping:",e),n="Linear"}return"vec3 "+t+"( vec3 color ) { return "+n+"ToneMapping( color ); }"}function Or(t){return""!==t}function Hr(t,e){return t.replace(/NUM_DIR_LIGHTS/g,e.numDirLights).replace(/NUM_SPOT_LIGHTS/g,e.numSpotLights).replace(/NUM_RECT_AREA_LIGHTS/g,e.numRectAreaLights).replace(/NUM_POINT_LIGHTS/g,e.numPointLights).replace(/NUM_HEMI_LIGHTS/g,e.numHemiLights).replace(/NUM_DIR_LIGHT_SHADOWS/g,e.numDirLightShadows).replace(/NUM_SPOT_LIGHT_SHADOWS/g,e.numSpotLightShadows).replace(/NUM_POINT_LIGHT_SHADOWS/g,e.numPointLightShadows)}function Gr(t,e){return t.replace(/NUM_CLIPPING_PLANES/g,e.numClippingPlanes).replace(/UNION_CLIPPING_PLANES/g,e.numClippingPlanes-e.numClipIntersection)}const Ur=/^[ \t]*#include +&lt;([\w\d./]+)&gt;/gm;function kr(t){return t.replace(Ur,Vr)}function Vr(t,e){const n=hi[e];if(void 0===n)throw new Error("Can not resolve #include &lt;"+e+"&gt;");return kr(n)}const Wr=/#pragma unroll_loop[\s]+?for \( int i \= (\d+)\; i &lt; (\d+)\; i \+\+ \) \{([\s\S]+?)(?=\})\}/g,jr=/#pragma unroll_loop_start\s+for\s*\(\s*int\s+i\s*=\s*(\d+)\s*;\s*i\s*&lt;\s*(\d+)\s*;\s*i\s*\+\+\s*\)\s*{([\s\S]+?)}\s+#pragma unroll_loop_end/g;function qr(t){return t.replace(jr,Yr).replace(Wr,Xr)}function Xr(t,e,n,i){return console.warn("WebGLProgram: #pragma unroll_loop shader syntax is deprecated. Please use #pragma unroll_loop_start syntax instead."),Yr(t,e,n,i)}function Yr(t,e,n,i){let r="";for(let t=parseInt(e);t&lt;parseInt(n);t++)r+=i.replace(/\[\s*i\s*\]/g,"[ "+t+" ]").replace(/UNROLLED_LOOP_INDEX/g,t);return r}function Zr(t){let e="precision "+t.precision+" float;\nprecision "+t.precision+" int;";return"highp"===t.precision?e+="\n#define HIGH_PRECISION":"mediump"===t.precision?e+="\n#define MEDIUM_PRECISION":"lowp"===t.precision&amp;&amp;(e+="\n#define LOW_PRECISION"),e}function Jr(t,e,n,i){const a=t.getContext(),o=n.defines;let h=n.vertexShader,u=n.fragmentShader;const d=function(t){let e="SHADOWMAP_TYPE_BASIC";return 1===t.shadowMapType?e="SHADOWMAP_TYPE_PCF":2===t.shadowMapType?e="SHADOWMAP_TYPE_PCF_SOFT":3===t.shadowMapType&amp;&amp;(e="SHADOWMAP_TYPE_VSM"),e}(n),p=function(t){let e="ENVMAP_TYPE_CUBE";if(t.envMap)switch(t.envMapMode){case r:case s:e="ENVMAP_TYPE_CUBE";break;case l:case c:e="ENVMAP_TYPE_CUBE_UV"}return e}(n),m=function(t){let e="ENVMAP_MODE_REFLECTION";if(t.envMap)switch(t.envMapMode){case s:case c:e="ENVMAP_MODE_REFRACTION"}return e}(n),f=function(t){let e="ENVMAP_BLENDING_NONE";if(t.envMap)switch(t.combine){case 0:e="ENVMAP_BLENDING_MULTIPLY";break;case 1:e="ENVMAP_BLENDING_MIX";break;case 2:e="ENVMAP_BLENDING_ADD"}return e}(n),g=t.gammaFactor&gt;0?t.gammaFactor:1,v=n.isWebGL2?"":function(t){return[t.extensionDerivatives||t.envMapCubeUV||t.bumpMap||t.tangentSpaceNormalMap||t.clearcoatNormalMap||t.flatShading||"physical"===t.shaderID?"#extension GL_OES_standard_derivatives : enable":"",(t.extensionFragDepth||t.logarithmicDepthBuffer)&amp;&amp;t.rendererExtensionFragDepth?"#extension GL_EXT_frag_depth : enable":"",t.extensionDrawBuffers&amp;&amp;t.rendererExtensionDrawBuffers?"#extension GL_EXT_draw_buffers : require":"",(t.extensionShaderTextureLOD||t.envMap)&amp;&amp;t.rendererExtensionShaderTextureLod?"#extension GL_EXT_shader_texture_lod : enable":""].filter(Or).join("\n")}(n),y=function(t){const e=[];for(const n in t){const i=t[n];!1!==i&amp;&amp;e.push("#define "+n+" "+i)}return e.join("\n")}(o),x=a.createProgram();let _,w,b=n.glslVersion?"#version "+n.glslVersion+"\n":"";n.isRawShaderMaterial?(_=[y].filter(Or).join("\n"),_.length&gt;0&amp;&amp;(_+="\n"),w=[v,y].filter(Or).join("\n"),w.length&gt;0&amp;&amp;(w+="\n")):(_=[Zr(n),"#define SHADER_NAME "+n.shaderName,y,n.instancing?"#define USE_INSTANCING":"",n.instancingColor?"#define USE_INSTANCING_COLOR":"",n.supportsVertexTextures?"#define VERTEX_TEXTURES":"","#define GAMMA_FACTOR "+g,"#define MAX_BONES "+n.maxBones,n.useFog&amp;&amp;n.fog?"#define USE_FOG":"",n.useFog&amp;&amp;n.fogExp2?"#define FOG_EXP2":"",n.map?"#define USE_MAP":"",n.envMap?"#define USE_ENVMAP":"",n.envMap?"#define "+m:"",n.lightMap?"#define USE_LIGHTMAP":"",n.aoMap?"#define USE_AOMAP":"",n.emissiveMap?"#define USE_EMISSIVEMAP":"",n.bumpMap?"#define USE_BUMPMAP":"",n.normalMap?"#define USE_NORMALMAP":"",n.normalMap&amp;&amp;n.objectSpaceNormalMap?"#define OBJECTSPACE_NORMALMAP":"",n.normalMap&amp;&amp;n.tangentSpaceNormalMap?"#define TANGENTSPACE_NORMALMAP":"",n.clearcoatMap?"#define USE_CLEARCOATMAP":"",n.clearcoatRoughnessMap?"#define USE_CLEARCOAT_ROUGHNESSMAP":"",n.clearcoatNormalMap?"#define USE_CLEARCOAT_NORMALMAP":"",n.displacementMap&amp;&amp;n.supportsVertexTextures?"#define USE_DISPLACEMENTMAP":"",n.specularMap?"#define USE_SPECULARMAP":"",n.roughnessMap?"#define USE_ROUGHNESSMAP":"",n.metalnessMap?"#define USE_METALNESSMAP":"",n.alphaMap?"#define USE_ALPHAMAP":"",n.transmissionMap?"#define USE_TRANSMISSIONMAP":"",n.vertexTangents?"#define USE_TANGENT":"",n.vertexColors?"#define USE_COLOR":"",n.vertexAlphas?"#define USE_COLOR_ALPHA":"",n.vertexUvs?"#define USE_UV":"",n.uvsVertexOnly?"#define UVS_VERTEX_ONLY":"",n.flatShading?"#define FLAT_SHADED":"",n.skinning?"#define USE_SKINNING":"",n.useVertexTexture?"#define BONE_TEXTURE":"",n.morphTargets?"#define USE_MORPHTARGETS":"",n.morphNormals&amp;&amp;!1===n.flatShading?"#define USE_MORPHNORMALS":"",n.doubleSided?"#define DOUBLE_SIDED":"",n.flipSided?"#define FLIP_SIDED":"",n.shadowMapEnabled?"#define USE_SHADOWMAP":"",n.shadowMapEnabled?"#define "+d:"",n.sizeAttenuation?"#define USE_SIZEATTENUATION":"",n.logarithmicDepthBuffer?"#define USE_LOGDEPTHBUF":"",n.logarithmicDepthBuffer&amp;&amp;n.rendererExtensionFragDepth?"#define USE_LOGDEPTHBUF_EXT":"","uniform mat4 modelMatrix;","uniform mat4 modelViewMatrix;","uniform mat4 projectionMatrix;","uniform mat4 viewMatrix;","uniform mat3 normalMatrix;","uniform vec3 cameraPosition;","uniform bool isOrthographic;","#ifdef USE_INSTANCING","\tattribute mat4 instanceMatrix;","#endif","#ifdef USE_INSTANCING_COLOR","\tattribute vec3 instanceColor;","#endif","attribute vec3 position;","attribute vec3 normal;","attribute vec2 uv;","#ifdef USE_TANGENT","\tattribute vec4 tangent;","#endif","#if defined( USE_COLOR_ALPHA )","\tattribute vec4 color;","#elif defined( USE_COLOR )","\tattribute vec3 color;","#endif","#ifdef USE_MORPHTARGETS","\tattribute vec3 morphTarget0;","\tattribute vec3 morphTarget1;","\tattribute vec3 morphTarget2;","\tattribute vec3 morphTarget3;","\t#ifdef USE_MORPHNORMALS","\t\tattribute vec3 morphNormal0;","\t\tattribute vec3 morphNormal1;","\t\tattribute vec3 morphNormal2;","\t\tattribute vec3 morphNormal3;","\t#else","\t\tattribute vec3 morphTarget4;","\t\tattribute vec3 morphTarget5;","\t\tattribute vec3 morphTarget6;","\t\tattribute vec3 morphTarget7;","\t#endif","#endif","#ifdef USE_SKINNING","\tattribute vec4 skinIndex;","\tattribute vec4 skinWeight;","#endif","\n"].filter(Or).join("\n"),w=[v,Zr(n),"#define SHADER_NAME "+n.shaderName,y,n.alphaTest?"#define ALPHATEST "+n.alphaTest+(n.alphaTest%1?"":".0"):"","#define GAMMA_FACTOR "+g,n.useFog&amp;&amp;n.fog?"#define USE_FOG":"",n.useFog&amp;&amp;n.fogExp2?"#define FOG_EXP2":"",n.map?"#define USE_MAP":"",n.matcap?"#define USE_MATCAP":"",n.envMap?"#define USE_ENVMAP":"",n.envMap?"#define "+p:"",n.envMap?"#define "+m:"",n.envMap?"#define "+f:"",n.lightMap?"#define USE_LIGHTMAP":"",n.aoMap?"#define USE_AOMAP":"",n.emissiveMap?"#define USE_EMISSIVEMAP":"",n.bumpMap?"#define USE_BUMPMAP":"",n.normalMap?"#define USE_NORMALMAP":"",n.normalMap&amp;&amp;n.objectSpaceNormalMap?"#define OBJECTSPACE_NORMALMAP":"",n.normalMap&amp;&amp;n.tangentSpaceNormalMap?"#define TANGENTSPACE_NORMALMAP":"",n.clearcoatMap?"#define USE_CLEARCOATMAP":"",n.clearcoatRoughnessMap?"#define USE_CLEARCOAT_ROUGHNESSMAP":"",n.clearcoatNormalMap?"#define USE_CLEARCOAT_NORMALMAP":"",n.specularMap?"#define USE_SPECULARMAP":"",n.roughnessMap?"#define USE_ROUGHNESSMAP":"",n.metalnessMap?"#define USE_METALNESSMAP":"",n.alphaMap?"#define USE_ALPHAMAP":"",n.sheen?"#define USE_SHEEN":"",n.transmissionMap?"#define USE_TRANSMISSIONMAP":"",n.vertexTangents?"#define USE_TANGENT":"",n.vertexColors||n.instancingColor?"#define USE_COLOR":"",n.vertexAlphas?"#define USE_COLOR_ALPHA":"",n.vertexUvs?"#define USE_UV":"",n.uvsVertexOnly?"#define UVS_VERTEX_ONLY":"",n.gradientMap?"#define USE_GRADIENTMAP":"",n.flatShading?"#define FLAT_SHADED":"",n.doubleSided?"#define DOUBLE_SIDED":"",n.flipSided?"#define FLIP_SIDED":"",n.shadowMapEnabled?"#define USE_SHADOWMAP":"",n.shadowMapEnabled?"#define "+d:"",n.premultipliedAlpha?"#define PREMULTIPLIED_ALPHA":"",n.physicallyCorrectLights?"#define PHYSICALLY_CORRECT_LIGHTS":"",n.logarithmicDepthBuffer?"#define USE_LOGDEPTHBUF":"",n.logarithmicDepthBuffer&amp;&amp;n.rendererExtensionFragDepth?"#define USE_LOGDEPTHBUF_EXT":"",(n.extensionShaderTextureLOD||n.envMap)&amp;&amp;n.rendererExtensionShaderTextureLod?"#define TEXTURE_LOD_EXT":"","uniform mat4 viewMatrix;","uniform vec3 cameraPosition;","uniform bool isOrthographic;",0!==n.toneMapping?"#define TONE_MAPPING":"",0!==n.toneMapping?hi.tonemapping_pars_fragment:"",0!==n.toneMapping?Fr("toneMapping",n.toneMapping):"",n.dithering?"#define DITHERING":"",hi.encodings_pars_fragment,n.map?Br("mapTexelToLinear",n.mapEncoding):"",n.matcap?Br("matcapTexelToLinear",n.matcapEncoding):"",n.envMap?Br("envMapTexelToLinear",n.envMapEncoding):"",n.emissiveMap?Br("emissiveMapTexelToLinear",n.emissiveMapEncoding):"",n.lightMap?Br("lightMapTexelToLinear",n.lightMapEncoding):"",zr("linearToOutputTexel",n.outputEncoding),n.depthPacking?"#define DEPTH_PACKING "+n.depthPacking:"","\n"].filter(Or).join("\n")),h=kr(h),h=Hr(h,n),h=Gr(h,n),u=kr(u),u=Hr(u,n),u=Gr(u,n),h=qr(h),u=qr(u),n.isWebGL2&amp;&amp;!0!==n.isRawShaderMaterial&amp;&amp;(b="#version 300 es\n",_=["#define attribute in","#define varying out","#define texture2D texture"].join("\n")+"\n"+_,w=["#define varying in",n.glslVersion===it?"":"out highp vec4 pc_fragColor;",n.glslVersion===it?"":"#define gl_FragColor pc_fragColor","#define gl_FragDepthEXT gl_FragDepth","#define texture2D texture","#define textureCube texture","#define texture2DProj textureProj","#define texture2DLodEXT textureLod","#define texture2DProjLodEXT textureProjLod","#define textureCubeLodEXT textureLod","#define texture2DGradEXT textureGrad","#define texture2DProjGradEXT textureProjGrad","#define textureCubeGradEXT textureGrad"].join("\n")+"\n"+w);const M=b+w+u,S=Pr(a,35633,b+_+h),T=Pr(a,35632,M);if(a.attachShader(x,S),a.attachShader(x,T),void 0!==n.index0AttributeName?a.bindAttribLocation(x,0,n.index0AttributeName):!0===n.morphTargets&amp;&amp;a.bindAttribLocation(x,0,"position"),a.linkProgram(x),t.debug.checkShaderErrors){const t=a.getProgramInfoLog(x).trim(),e=a.getShaderInfoLog(S).trim(),n=a.getShaderInfoLog(T).trim();let i=!0,r=!0;if(!1===a.getProgramParameter(x,35714)){i=!1;const e=Nr(a,S,"vertex"),n=Nr(a,T,"fragment");console.error("THREE.WebGLProgram: shader error: ",a.getError(),"35715",a.getProgramParameter(x,35715),"gl.getProgramInfoLog",t,e,n)}else""!==t?console.warn("THREE.WebGLProgram: gl.getProgramInfoLog()",t):""!==e&amp;&amp;""!==n||(r=!1);r&amp;&amp;(this.diagnostics={runnable:i,programLog:t,vertexShader:{log:e,prefix:_},fragmentShader:{log:n,prefix:w}})}let E,A;return a.deleteShader(S),a.deleteShader(T),this.getUniforms=function(){return void 0===E&amp;&amp;(E=new Cr(a,x)),E},this.getAttributes=function(){return void 0===A&amp;&amp;(A=function(t,e){const n={},i=t.getProgramParameter(e,35721);for(let r=0;r&lt;i;r++){const i=t.getActiveAttrib(e,r).name;n[i]=t.getAttribLocation(e,i)}return n}(a,x)),A},this.destroy=function(){i.releaseStatesOfProgram(this),a.deleteProgram(x),this.program=void 0},this.name=n.shaderName,this.id=Dr++,this.cacheKey=e,this.usedTimes=1,this.program=x,this.vertexShader=S,this.fragmentShader=T,this}function Qr(t,e,n,i,r,s){const a=[],o=i.isWebGL2,h=i.logarithmicDepthBuffer,u=i.floatVertexTextures,d=i.maxVertexUniforms,p=i.vertexTextures;let m=i.precision;const f={MeshDepthMaterial:"depth",MeshDistanceMaterial:"distanceRGBA",MeshNormalMaterial:"normal",MeshBasicMaterial:"basic",MeshLambertMaterial:"lambert",MeshPhongMaterial:"phong",MeshToonMaterial:"toon",MeshStandardMaterial:"physical",MeshPhysicalMaterial:"physical",MeshMatcapMaterial:"matcap",LineBasicMaterial:"basic",LineDashedMaterial:"dashed",PointsMaterial:"points",ShadowMaterial:"shadow",SpriteMaterial:"sprite"},g=["precision","isWebGL2","supportsVertexTextures","outputEncoding","instancing","instancingColor","map","mapEncoding","matcap","matcapEncoding","envMap","envMapMode","envMapEncoding","envMapCubeUV","lightMap","lightMapEncoding","aoMap","emissiveMap","emissiveMapEncoding","bumpMap","normalMap","objectSpaceNormalMap","tangentSpaceNormalMap","clearcoatMap","clearcoatRoughnessMap","clearcoatNormalMap","displacementMap","specularMap","roughnessMap","metalnessMap","gradientMap","alphaMap","combine","vertexColors","vertexAlphas","vertexTangents","vertexUvs","uvsVertexOnly","fog","useFog","fogExp2","flatShading","sizeAttenuation","logarithmicDepthBuffer","skinning","maxBones","useVertexTexture","morphTargets","morphNormals","premultipliedAlpha","numDirLights","numPointLights","numSpotLights","numHemiLights","numRectAreaLights","numDirLightShadows","numPointLightShadows","numSpotLightShadows","shadowMapEnabled","shadowMapType","toneMapping","physicallyCorrectLights","alphaTest","doubleSided","flipSided","numClippingPlanes","numClipIntersection","depthPacking","dithering","sheen","transmissionMap"];function v(t){let e;return t&amp;&amp;t.isTexture?e=t.encoding:t&amp;&amp;t.isWebGLRenderTarget?(console.warn("THREE.WebGLPrograms.getTextureEncodingFromMap: don't use render targets as textures. Use their .texture property instead."),e=t.texture.encoding):e=X,e}return{getParameters:function(r,a,g,y,x){const _=y.fog,w=r.isMeshStandardMaterial?y.environment:null,b=e.get(r.envMap||w),M=f[r.type],S=x.isSkinnedMesh?function(t){const e=t.skeleton.bones;if(u)return 1024;{const t=d,n=Math.floor((t-20)/4),i=Math.min(n,e.length);return i&lt;e.length?(console.warn("THREE.WebGLRenderer: Skeleton has "+e.length+" bones. This GPU supports "+i+"."),0):i}}(x):0;let T,E;if(null!==r.precision&amp;&amp;(m=i.getMaxPrecision(r.precision),m!==r.precision&amp;&amp;console.warn("THREE.WebGLProgram.getParameters:",r.precision,"not supported, using",m,"instead.")),M){const t=di[M];T=t.vertexShader,E=t.fragmentShader}else T=r.vertexShader,E=r.fragmentShader;const A=t.getRenderTarget();return{isWebGL2:o,shaderID:M,shaderName:r.type,vertexShader:T,fragmentShader:E,defines:r.defines,isRawShaderMaterial:!0===r.isRawShaderMaterial,glslVersion:r.glslVersion,precision:m,instancing:!0===x.isInstancedMesh,instancingColor:!0===x.isInstancedMesh&amp;&amp;null!==x.instanceColor,supportsVertexTextures:p,outputEncoding:null!==A?v(A.texture):t.outputEncoding,map:!!r.map,mapEncoding:v(r.map),matcap:!!r.matcap,matcapEncoding:v(r.matcap),envMap:!!b,envMapMode:b&amp;&amp;b.mapping,envMapEncoding:v(b),envMapCubeUV:!!b&amp;&amp;(b.mapping===l||b.mapping===c),lightMap:!!r.lightMap,lightMapEncoding:v(r.lightMap),aoMap:!!r.aoMap,emissiveMap:!!r.emissiveMap,emissiveMapEncoding:v(r.emissiveMap),bumpMap:!!r.bumpMap,normalMap:!!r.normalMap,objectSpaceNormalMap:1===r.normalMapType,tangentSpaceNormalMap:0===r.normalMapType,clearcoatMap:!!r.clearcoatMap,clearcoatRoughnessMap:!!r.clearcoatRoughnessMap,clearcoatNormalMap:!!r.clearcoatNormalMap,displacementMap:!!r.displacementMap,roughnessMap:!!r.roughnessMap,metalnessMap:!!r.metalnessMap,specularMap:!!r.specularMap,alphaMap:!!r.alphaMap,gradientMap:!!r.gradientMap,sheen:!!r.sheen,transmissionMap:!!r.transmissionMap,combine:r.combine,vertexTangents:r.normalMap&amp;&amp;r.vertexTangents,vertexColors:r.vertexColors,vertexAlphas:!0===r.vertexColors&amp;&amp;x.geometry&amp;&amp;x.geometry.attributes.color&amp;&amp;4===x.geometry.attributes.color.itemSize,vertexUvs:!!(r.map||r.bumpMap||r.normalMap||r.specularMap||r.alphaMap||r.emissiveMap||r.roughnessMap||r.metalnessMap||r.clearcoatMap||r.clearcoatRoughnessMap||r.clearcoatNormalMap||r.displacementMap||r.transmissionMap),uvsVertexOnly:!(r.map||r.bumpMap||r.normalMap||r.specularMap||r.alphaMap||r.emissiveMap||r.roughnessMap||r.metalnessMap||r.clearcoatNormalMap||r.transmissionMap||!r.displacementMap),fog:!!_,useFog:r.fog,fogExp2:_&amp;&amp;_.isFogExp2,flatShading:!!r.flatShading,sizeAttenuation:r.sizeAttenuation,logarithmicDepthBuffer:h,skinning:r.skinning&amp;&amp;S&gt;0,maxBones:S,useVertexTexture:u,morphTargets:r.morphTargets,morphNormals:r.morphNormals,numDirLights:a.directional.length,numPointLights:a.point.length,numSpotLights:a.spot.length,numRectAreaLights:a.rectArea.length,numHemiLights:a.hemi.length,numDirLightShadows:a.directionalShadowMap.length,numPointLightShadows:a.pointShadowMap.length,numSpotLightShadows:a.spotShadowMap.length,numClippingPlanes:s.numPlanes,numClipIntersection:s.numIntersection,dithering:r.dithering,shadowMapEnabled:t.shadowMap.enabled&amp;&amp;g.length&gt;0,shadowMapType:t.shadowMap.type,toneMapping:r.toneMapped?t.toneMapping:0,physicallyCorrectLights:t.physicallyCorrectLights,premultipliedAlpha:r.premultipliedAlpha,alphaTest:r.alphaTest,doubleSided:2===r.side,flipSided:1===r.side,depthPacking:void 0!==r.depthPacking&amp;&amp;r.depthPacking,index0AttributeName:r.index0AttributeName,extensionDerivatives:r.extensions&amp;&amp;r.extensions.derivatives,extensionFragDepth:r.extensions&amp;&amp;r.extensions.fragDepth,extensionDrawBuffers:r.extensions&amp;&amp;r.extensions.drawBuffers,extensionShaderTextureLOD:r.extensions&amp;&amp;r.extensions.shaderTextureLOD,rendererExtensionFragDepth:o||n.has("EXT_frag_depth"),rendererExtensionDrawBuffers:o||n.has("WEBGL_draw_buffers"),rendererExtensionShaderTextureLod:o||n.has("EXT_shader_texture_lod"),customProgramCacheKey:r.customProgramCacheKey()}},getProgramCacheKey:function(e){const n=[];if(e.shaderID?n.push(e.shaderID):(n.push(e.fragmentShader),n.push(e.vertexShader)),void 0!==e.defines)for(const t in e.defines)n.push(t),n.push(e.defines[t]);if(!1===e.isRawShaderMaterial){for(let t=0;t&lt;g.length;t++)n.push(e[g[t]]);n.push(t.outputEncoding),n.push(t.gammaFactor)}return n.push(e.customProgramCacheKey),n.join()},getUniforms:function(t){const e=f[t.type];let n;if(e){const t=di[e];n=Zn.clone(t.uniforms)}else n=t.uniforms;return n},acquireProgram:function(e,n){let i;for(let t=0,e=a.length;t&lt;e;t++){const e=a[t];if(e.cacheKey===n){i=e,++i.usedTimes;break}}return void 0===i&amp;&amp;(i=new Jr(t,n,e,r),a.push(i)),i},releaseProgram:function(t){if(0==--t.usedTimes){const e=a.indexOf(t);a[e]=a[a.length-1],a.pop(),t.destroy()}},programs:a}}function Kr(){let t=new WeakMap;return{get:function(e){let n=t.get(e);return void 0===n&amp;&amp;(n={},t.set(e,n)),n},remove:function(e){t.delete(e)},update:function(e,n,i){t.get(e)[n]=i},dispose:function(){t=new WeakMap}}}function $r(t,e){return t.groupOrder!==e.groupOrder?t.groupOrder-e.groupOrder:t.renderOrder!==e.renderOrder?t.renderOrder-e.renderOrder:t.program!==e.program?t.program.id-e.program.id:t.material.id!==e.material.id?t.material.id-e.material.id:t.z!==e.z?t.z-e.z:t.id-e.id}function ts(t,e){return t.groupOrder!==e.groupOrder?t.groupOrder-e.groupOrder:t.renderOrder!==e.renderOrder?t.renderOrder-e.renderOrder:t.z!==e.z?e.z-t.z:t.id-e.id}function es(t){const e=[];let n=0;const i=[],r=[],s={id:-1};function a(i,r,a,o,l,c){let h=e[n];const u=t.get(a);return void 0===h?(h={id:i.id,object:i,geometry:r,material:a,program:u.program||s,groupOrder:o,renderOrder:i.renderOrder,z:l,group:c},e[n]=h):(h.id=i.id,h.object=i,h.geometry=r,h.material=a,h.program=u.program||s,h.groupOrder=o,h.renderOrder=i.renderOrder,h.z=l,h.group=c),n++,h}return{opaque:i,transparent:r,init:function(){n=0,i.length=0,r.length=0},push:function(t,e,n,s,o,l){const c=a(t,e,n,s,o,l);(!0===n.transparent?r:i).push(c)},unshift:function(t,e,n,s,o,l){const c=a(t,e,n,s,o,l);(!0===n.transparent?r:i).unshift(c)},finish:function(){for(let t=n,i=e.length;t&lt;i;t++){const n=e[t];if(null===n.id)break;n.id=null,n.object=null,n.geometry=null,n.material=null,n.program=null,n.group=null}},sort:function(t,e){i.length&gt;1&amp;&amp;i.sort(t||$r),r.length&gt;1&amp;&amp;r.sort(e||ts)}}}function ns(t){let e=new WeakMap;return{get:function(n,i){let r;return!1===e.has(n)?(r=new es(t),e.set(n,[r])):i&gt;=e.get(n).length?(r=new es(t),e.get(n).push(r)):r=e.get(n)[i],r},dispose:function(){e=new WeakMap}}}function is(){const t={};return{get:function(e){if(void 0!==t[e.id])return t[e.id];let n;switch(e.type){case"DirectionalLight":n={direction:new Lt,color:new tn};break;case"SpotLight":n={position:new Lt,direction:new Lt,color:new tn,distance:0,coneCos:0,penumbraCos:0,decay:0};break;case"PointLight":n={position:new Lt,color:new tn,distance:0,decay:0};break;case"HemisphereLight":n={direction:new Lt,skyColor:new tn,groundColor:new tn};break;case"RectAreaLight":n={color:new tn,position:new Lt,halfWidth:new Lt,halfHeight:new Lt}}return t[e.id]=n,n}}}let rs=0;function ss(t,e){return(e.castShadow?1:0)-(t.castShadow?1:0)}function as(t,e){const n=new is,i=function(){const t={};return{get:function(e){if(void 0!==t[e.id])return t[e.id];let n;switch(e.type){case"DirectionalLight":case"SpotLight":n={shadowBias:0,shadowNormalBias:0,shadowRadius:1,shadowMapSize:new vt};break;case"PointLight":n={shadowBias:0,shadowNormalBias:0,shadowRadius:1,shadowMapSize:new vt,shadowCameraNear:1,shadowCameraFar:1e3}}return t[e.id]=n,n}}}(),r={version:0,hash:{directionalLength:-1,pointLength:-1,spotLength:-1,rectAreaLength:-1,hemiLength:-1,numDirectionalShadows:-1,numPointShadows:-1,numSpotShadows:-1},ambient:[0,0,0],probe:[],directional:[],directionalShadow:[],directionalShadowMap:[],directionalShadowMatrix:[],spot:[],spotShadow:[],spotShadowMap:[],spotShadowMatrix:[],rectArea:[],rectAreaLTC1:null,rectAreaLTC2:null,point:[],pointShadow:[],pointShadowMap:[],pointShadowMatrix:[],hemi:[]};for(let t=0;t&lt;9;t++)r.probe.push(new Lt);const s=new Lt,a=new se,o=new se;return{setup:function(s){let a=0,o=0,l=0;for(let t=0;t&lt;9;t++)r.probe[t].set(0,0,0);let c=0,h=0,u=0,d=0,p=0,m=0,f=0,g=0;s.sort(ss);for(let t=0,e=s.length;t&lt;e;t++){const e=s[t],v=e.color,y=e.intensity,x=e.distance,_=e.shadow&amp;&amp;e.shadow.map?e.shadow.map.texture:null;if(e.isAmbientLight)a+=v.r*y,o+=v.g*y,l+=v.b*y;else if(e.isLightProbe)for(let t=0;t&lt;9;t++)r.probe[t].addScaledVector(e.sh.coefficients[t],y);else if(e.isDirectionalLight){const t=n.get(e);if(t.color.copy(e.color).multiplyScalar(e.intensity),e.castShadow){const t=e.shadow,n=i.get(e);n.shadowBias=t.bias,n.shadowNormalBias=t.normalBias,n.shadowRadius=t.radius,n.shadowMapSize=t.mapSize,r.directionalShadow[c]=n,r.directionalShadowMap[c]=_,r.directionalShadowMatrix[c]=e.shadow.matrix,m++}r.directional[c]=t,c++}else if(e.isSpotLight){const t=n.get(e);if(t.position.setFromMatrixPosition(e.matrixWorld),t.color.copy(v).multiplyScalar(y),t.distance=x,t.coneCos=Math.cos(e.angle),t.penumbraCos=Math.cos(e.angle*(1-e.penumbra)),t.decay=e.decay,e.castShadow){const t=e.shadow,n=i.get(e);n.shadowBias=t.bias,n.shadowNormalBias=t.normalBias,n.shadowRadius=t.radius,n.shadowMapSize=t.mapSize,r.spotShadow[u]=n,r.spotShadowMap[u]=_,r.spotShadowMatrix[u]=e.shadow.matrix,g++}r.spot[u]=t,u++}else if(e.isRectAreaLight){const t=n.get(e);t.color.copy(v).multiplyScalar(y),t.halfWidth.set(.5*e.width,0,0),t.halfHeight.set(0,.5*e.height,0),r.rectArea[d]=t,d++}else if(e.isPointLight){const t=n.get(e);if(t.color.copy(e.color).multiplyScalar(e.intensity),t.distance=e.distance,t.decay=e.decay,e.castShadow){const t=e.shadow,n=i.get(e);n.shadowBias=t.bias,n.shadowNormalBias=t.normalBias,n.shadowRadius=t.radius,n.shadowMapSize=t.mapSize,n.shadowCameraNear=t.camera.near,n.shadowCameraFar=t.camera.far,r.pointShadow[h]=n,r.pointShadowMap[h]=_,r.pointShadowMatrix[h]=e.shadow.matrix,f++}r.point[h]=t,h++}else if(e.isHemisphereLight){const t=n.get(e);t.skyColor.copy(e.color).multiplyScalar(y),t.groundColor.copy(e.groundColor).multiplyScalar(y),r.hemi[p]=t,p++}}d&gt;0&amp;&amp;(e.isWebGL2||!0===t.has("OES_texture_float_linear")?(r.rectAreaLTC1=ui.LTC_FLOAT_1,r.rectAreaLTC2=ui.LTC_FLOAT_2):!0===t.has("OES_texture_half_float_linear")?(r.rectAreaLTC1=ui.LTC_HALF_1,r.rectAreaLTC2=ui.LTC_HALF_2):console.error("THREE.WebGLRenderer: Unable to use RectAreaLight. Missing WebGL extensions.")),r.ambient[0]=a,r.ambient[1]=o,r.ambient[2]=l;const v=r.hash;v.directionalLength===c&amp;&amp;v.pointLength===h&amp;&amp;v.spotLength===u&amp;&amp;v.rectAreaLength===d&amp;&amp;v.hemiLength===p&amp;&amp;v.numDirectionalShadows===m&amp;&amp;v.numPointShadows===f&amp;&amp;v.numSpotShadows===g||(r.directional.length=c,r.spot.length=u,r.rectArea.length=d,r.point.length=h,r.hemi.length=p,r.directionalShadow.length=m,r.directionalShadowMap.length=m,r.pointShadow.length=f,r.pointShadowMap.length=f,r.spotShadow.length=g,r.spotShadowMap.length=g,r.directionalShadowMatrix.length=m,r.pointShadowMatrix.length=f,r.spotShadowMatrix.length=g,v.directionalLength=c,v.pointLength=h,v.spotLength=u,v.rectAreaLength=d,v.hemiLength=p,v.numDirectionalShadows=m,v.numPointShadows=f,v.numSpotShadows=g,r.version=rs++)},setupView:function(t,e){let n=0,i=0,l=0,c=0,h=0;const u=e.matrixWorldInverse;for(let e=0,d=t.length;e&lt;d;e++){const d=t[e];if(d.isDirectionalLight){const t=r.directional[n];t.direction.setFromMatrixPosition(d.matrixWorld),s.setFromMatrixPosition(d.target.matrixWorld),t.direction.sub(s),t.direction.transformDirection(u),n++}else if(d.isSpotLight){const t=r.spot[l];t.position.setFromMatrixPosition(d.matrixWorld),t.position.applyMatrix4(u),t.direction.setFromMatrixPosition(d.matrixWorld),s.setFromMatrixPosition(d.target.matrixWorld),t.direction.sub(s),t.direction.transformDirection(u),l++}else if(d.isRectAreaLight){const t=r.rectArea[c];t.position.setFromMatrixPosition(d.matrixWorld),t.position.applyMatrix4(u),o.identity(),a.copy(d.matrixWorld),a.premultiply(u),o.extractRotation(a),t.halfWidth.set(.5*d.width,0,0),t.halfHeight.set(0,.5*d.height,0),t.halfWidth.applyMatrix4(o),t.halfHeight.applyMatrix4(o),c++}else if(d.isPointLight){const t=r.point[i];t.position.setFromMatrixPosition(d.matrixWorld),t.position.applyMatrix4(u),i++}else if(d.isHemisphereLight){const t=r.hemi[h];t.direction.setFromMatrixPosition(d.matrixWorld),t.direction.transformDirection(u),t.direction.normalize(),h++}}},state:r}}function os(t,e){const n=new as(t,e),i=[],r=[];return{init:function(){i.length=0,r.length=0},state:{lightsArray:i,shadowsArray:r,lights:n},setupLights:function(){n.setup(i)},setupLightsView:function(t){n.setupView(i,t)},pushLight:function(t){i.push(t)},pushShadow:function(t){r.push(t)}}}function ls(t,e){let n=new WeakMap;return{get:function(i,r=0){let s;return!1===n.has(i)?(s=new os(t,e),n.set(i,[s])):r&gt;=n.get(i).length?(s=new os(t,e),n.get(i).push(s)):s=n.get(i)[r],s},dispose:function(){n=new WeakMap}}}class cs extends Xe{constructor(t){super(),this.type="MeshDepthMaterial",this.depthPacking=3200,this.skinning=!1,this.morphTargets=!1,this.map=null,this.alphaMap=null,this.displacementMap=null,this.displacementScale=1,this.displacementBias=0,this.wireframe=!1,this.wireframeLinewidth=1,this.fog=!1,this.setValues(t)}copy(t){return super.copy(t),this.depthPacking=t.depthPacking,this.skinning=t.skinning,this.morphTargets=t.morphTargets,this.map=t.map,this.alphaMap=t.alphaMap,this.displacementMap=t.displacementMap,this.displacementScale=t.displacementScale,this.displacementBias=t.displacementBias,this.wireframe=t.wireframe,this.wireframeLinewidth=t.wireframeLinewidth,this}}cs.prototype.isMeshDepthMaterial=!0;class hs extends Xe{constructor(t){super(),this.type="MeshDistanceMaterial",this.referencePosition=new Lt,this.nearDistance=1,this.farDistance=1e3,this.skinning=!1,this.morphTargets=!1,this.map=null,this.alphaMap=null,this.displacementMap=null,this.displacementScale=1,this.displacementBias=0,this.fog=!1,this.setValues(t)}copy(t){return super.copy(t),this.referencePosition.copy(t.referencePosition),this.nearDistance=t.nearDistance,this.farDistance=t.farDistance,this.skinning=t.skinning,this.morphTargets=t.morphTargets,this.map=t.map,this.alphaMap=t.alphaMap,this.displacementMap=t.displacementMap,this.displacementScale=t.displacementScale,this.displacementBias=t.displacementBias,this}}hs.prototype.isMeshDistanceMaterial=!0;function us(t,e,n){let i=new ai;const r=new vt,s=new vt,a=new St,o=[],l=[],c={},h=n.maxTextureSize,u={0:1,1:0,2:2},d=new Jn({defines:{SAMPLE_RATE:2/8,HALF_SAMPLE_RATE:1/8},uniforms:{shadow_pass:{value:null},resolution:{value:new vt},radius:{value:4}},vertexShader:"void main() {\n\tgl_Position = vec4( position, 1.0 );\n}",fragmentShader:"uniform sampler2D shadow_pass;\nuniform vec2 resolution;\nuniform float radius;\n#include &lt;packing&gt;\nvoid main() {\n\tfloat mean = 0.0;\n\tfloat squared_mean = 0.0;\n\tfloat depth = unpackRGBAToDepth( texture2D( shadow_pass, ( gl_FragCoord.xy ) / resolution ) );\n\tfor ( float i = -1.0; i &lt; 1.0 ; i += SAMPLE_RATE) {\n\t\t#ifdef HORIZONTAL_PASS\n\t\t\tvec2 distribution = unpackRGBATo2Half( texture2D( shadow_pass, ( gl_FragCoord.xy + vec2( i, 0.0 ) * radius ) / resolution ) );\n\t\t\tmean += distribution.x;\n\t\t\tsquared_mean += distribution.y * distribution.y + distribution.x * distribution.x;\n\t\t#else\n\t\t\tfloat depth = unpackRGBAToDepth( texture2D( shadow_pass, ( gl_FragCoord.xy + vec2( 0.0, i ) * radius ) / resolution ) );\n\t\t\tmean += depth;\n\t\t\tsquared_mean += depth * depth;\n\t\t#endif\n\t}\n\tmean = mean * HALF_SAMPLE_RATE;\n\tsquared_mean = squared_mean * HALF_SAMPLE_RATE;\n\tfloat std_dev = sqrt( squared_mean - mean * mean );\n\tgl_FragColor = pack2HalfToRGBA( vec2( mean, std_dev ) );\n}"}),m=d.clone();m.defines.HORIZONTAL_PASS=1;const f=new En;f.setAttribute("position",new sn(new Float32Array([-1,-1,.5,3,-1,.5,-1,3,.5]),3));const v=new Wn(f,d),y=this;function x(n,i){const r=e.update(v);d.uniforms.shadow_pass.value=n.map.texture,d.uniforms.resolution.value=n.mapSize,d.uniforms.radius.value=n.radius,t.setRenderTarget(n.mapPass),t.clear(),t.renderBufferDirect(i,null,r,d,v,null),m.uniforms.shadow_pass.value=n.mapPass.texture,m.uniforms.resolution.value=n.mapSize,m.uniforms.radius.value=n.radius,t.setRenderTarget(n.map),t.clear(),t.renderBufferDirect(i,null,r,m,v,null)}function _(t,e,n){const i=t&lt;&lt;0|e&lt;&lt;1|n&lt;&lt;2;let r=o[i];return void 0===r&amp;&amp;(r=new cs({depthPacking:3201,morphTargets:t,skinning:e}),o[i]=r),r}function w(t,e,n){const i=t&lt;&lt;0|e&lt;&lt;1|n&lt;&lt;2;let r=l[i];return void 0===r&amp;&amp;(r=new hs({morphTargets:t,skinning:e}),l[i]=r),r}function b(e,n,i,r,s,a,o){let l=null,h=_,d=e.customDepthMaterial;if(!0===r.isPointLight&amp;&amp;(h=w,d=e.customDistanceMaterial),void 0===d){let t=!1;!0===i.morphTargets&amp;&amp;(t=n.morphAttributes&amp;&amp;n.morphAttributes.position&amp;&amp;n.morphAttributes.position.length&gt;0);let r=!1;!0===e.isSkinnedMesh&amp;&amp;(!0===i.skinning?r=!0:console.warn("THREE.WebGLShadowMap: THREE.SkinnedMesh with material.skinning set to false:",e));l=h(t,r,!0===e.isInstancedMesh)}else l=d;if(t.localClippingEnabled&amp;&amp;!0===i.clipShadows&amp;&amp;0!==i.clippingPlanes.length){const t=l.uuid,e=i.uuid;let n=c[t];void 0===n&amp;&amp;(n={},c[t]=n);let r=n[e];void 0===r&amp;&amp;(r=l.clone(),n[e]=r),l=r}return l.visible=i.visible,l.wireframe=i.wireframe,l.side=3===o?null!==i.shadowSide?i.shadowSide:i.side:null!==i.shadowSide?i.shadowSide:u[i.side],l.clipShadows=i.clipShadows,l.clippingPlanes=i.clippingPlanes,l.clipIntersection=i.clipIntersection,l.wireframeLinewidth=i.wireframeLinewidth,l.linewidth=i.linewidth,!0===r.isPointLight&amp;&amp;!0===l.isMeshDistanceMaterial&amp;&amp;(l.referencePosition.setFromMatrixPosition(r.matrixWorld),l.nearDistance=s,l.farDistance=a),l}function M(n,r,s,a,o){if(!1===n.visible)return;if(n.layers.test(r.layers)&amp;&amp;(n.isMesh||n.isLine||n.isPoints)&amp;&amp;(n.castShadow||n.receiveShadow&amp;&amp;3===o)&amp;&amp;(!n.frustumCulled||i.intersectsObject(n))){n.modelViewMatrix.multiplyMatrices(s.matrixWorldInverse,n.matrixWorld);const i=e.update(n),r=n.material;if(Array.isArray(r)){const e=i.groups;for(let l=0,c=e.length;l&lt;c;l++){const c=e[l],h=r[c.materialIndex];if(h&amp;&amp;h.visible){const e=b(n,i,h,a,s.near,s.far,o);t.renderBufferDirect(s,null,i,e,n,c)}}}else if(r.visible){const e=b(n,i,r,a,s.near,s.far,o);t.renderBufferDirect(s,null,i,e,n,null)}}const l=n.children;for(let t=0,e=l.length;t&lt;e;t++)M(l[t],r,s,a,o)}this.enabled=!1,this.autoUpdate=!0,this.needsUpdate=!1,this.type=1,this.render=function(e,n,o){if(!1===y.enabled)return;if(!1===y.autoUpdate&amp;&amp;!1===y.needsUpdate)return;if(0===e.length)return;const l=t.getRenderTarget(),c=t.getActiveCubeFace(),u=t.getActiveMipmapLevel(),d=t.state;d.setBlending(0),d.buffers.color.setClear(1,1,1,1),d.buffers.depth.setTest(!0),d.setScissorTest(!1);for(let l=0,c=e.length;l&lt;c;l++){const c=e[l],u=c.shadow;if(void 0===u){console.warn("THREE.WebGLShadowMap:",c,"has no shadow.");continue}if(!1===u.autoUpdate&amp;&amp;!1===u.needsUpdate)continue;r.copy(u.mapSize);const m=u.getFrameExtents();if(r.multiply(m),s.copy(u.mapSize),(r.x&gt;h||r.y&gt;h)&amp;&amp;(r.x&gt;h&amp;&amp;(s.x=Math.floor(h/m.x),r.x=s.x*m.x,u.mapSize.x=s.x),r.y&gt;h&amp;&amp;(s.y=Math.floor(h/m.y),r.y=s.y*m.y,u.mapSize.y=s.y)),null===u.map&amp;&amp;!u.isPointLightShadow&amp;&amp;3===this.type){const t={minFilter:g,magFilter:g,format:E};u.map=new Tt(r.x,r.y,t),u.map.texture.name=c.name+".shadowMap",u.mapPass=new Tt(r.x,r.y,t),u.camera.updateProjectionMatrix()}if(null===u.map){const t={minFilter:p,magFilter:p,format:E};u.map=new Tt(r.x,r.y,t),u.map.texture.name=c.name+".shadowMap",u.camera.updateProjectionMatrix()}t.setRenderTarget(u.map),t.clear();const f=u.getViewportCount();for(let t=0;t&lt;f;t++){const e=u.getViewport(t);a.set(s.x*e.x,s.y*e.y,s.x*e.z,s.y*e.w),d.viewport(a),u.updateMatrices(c,t),i=u.getFrustum(),M(n,o,u.camera,c,this.type)}u.isPointLightShadow||3!==this.type||x(u,o),u.needsUpdate=!1}y.needsUpdate=!1,t.setRenderTarget(l,c,u)}}function ds(t,e,i){const r=i.isWebGL2;const s=new function(){let e=!1;const n=new St;let i=null;const r=new St(0,0,0,0);return{setMask:function(n){i===n||e||(t.colorMask(n,n,n,n),i=n)},setLocked:function(t){e=t},setClear:function(e,i,s,a,o){!0===o&amp;&amp;(e*=a,i*=a,s*=a),n.set(e,i,s,a),!1===r.equals(n)&amp;&amp;(t.clearColor(e,i,s,a),r.copy(n))},reset:function(){e=!1,i=null,r.set(-1,0,0,0)}}},a=new function(){let e=!1,n=null,i=null,r=null;return{setTest:function(t){t?z(2929):F(2929)},setMask:function(i){n===i||e||(t.depthMask(i),n=i)},setFunc:function(e){if(i!==e){if(e)switch(e){case 0:t.depthFunc(512);break;case 1:t.depthFunc(519);break;case 2:t.depthFunc(513);break;case 3:t.depthFunc(515);break;case 4:t.depthFunc(514);break;case 5:t.depthFunc(518);break;case 6:t.depthFunc(516);break;case 7:t.depthFunc(517);break;default:t.depthFunc(515)}else t.depthFunc(515);i=e}},setLocked:function(t){e=t},setClear:function(e){r!==e&amp;&amp;(t.clearDepth(e),r=e)},reset:function(){e=!1,n=null,i=null,r=null}}},o=new function(){let e=!1,n=null,i=null,r=null,s=null,a=null,o=null,l=null,c=null;return{setTest:function(t){e||(t?z(2960):F(2960))},setMask:function(i){n===i||e||(t.stencilMask(i),n=i)},setFunc:function(e,n,a){i===e&amp;&amp;r===n&amp;&amp;s===a||(t.stencilFunc(e,n,a),i=e,r=n,s=a)},setOp:function(e,n,i){a===e&amp;&amp;o===n&amp;&amp;l===i||(t.stencilOp(e,n,i),a=e,o=n,l=i)},setLocked:function(t){e=t},setClear:function(e){c!==e&amp;&amp;(t.clearStencil(e),c=e)},reset:function(){e=!1,n=null,i=null,r=null,s=null,a=null,o=null,l=null,c=null}}};let l={},c=null,h={},u=null,d=!1,p=null,m=null,f=null,g=null,v=null,y=null,x=null,_=!1,w=null,b=null,M=null,S=null,T=null;const E=t.getParameter(35661);let A=!1,L=0;const R=t.getParameter(7938);-1!==R.indexOf("WebGL")?(L=parseFloat(/^WebGL (\d)/.exec(R)[1]),A=L&gt;=1):-1!==R.indexOf("OpenGL ES")&amp;&amp;(L=parseFloat(/^OpenGL ES (\d)/.exec(R)[1]),A=L&gt;=2);let C=null,P={};const D=new St(0,0,t.canvas.width,t.canvas.height),I=new St(0,0,t.canvas.width,t.canvas.height);function N(e,n,i){const r=new Uint8Array(4),s=t.createTexture();t.bindTexture(e,s),t.texParameteri(e,10241,9728),t.texParameteri(e,10240,9728);for(let e=0;e&lt;i;e++)t.texImage2D(n+e,0,6408,1,1,0,6408,5121,r);return s}const B={};function z(e){!0!==l[e]&amp;&amp;(t.enable(e),l[e]=!0)}function F(e){!1!==l[e]&amp;&amp;(t.disable(e),l[e]=!1)}B[3553]=N(3553,3553,1),B[34067]=N(34067,34069,6),s.setClear(0,0,0,1),a.setClear(1),o.setClear(0),z(2929),a.setFunc(3),U(!1),k(1),z(2884),G(0);const O={[n]:32774,101:32778,102:32779};if(r)O[103]=32775,O[104]=32776;else{const t=e.get("EXT_blend_minmax");null!==t&amp;&amp;(O[103]=t.MIN_EXT,O[104]=t.MAX_EXT)}const H={200:0,201:1,202:768,204:770,210:776,208:774,206:772,203:769,205:771,209:775,207:773};function G(e,i,r,s,a,o,l,c){if(0!==e){if(!1===d&amp;&amp;(z(3042),d=!0),5===e)a=a||i,o=o||r,l=l||s,i===m&amp;&amp;a===v||(t.blendEquationSeparate(O[i],O[a]),m=i,v=a),r===f&amp;&amp;s===g&amp;&amp;o===y&amp;&amp;l===x||(t.blendFuncSeparate(H[r],H[s],H[o],H[l]),f=r,g=s,y=o,x=l),p=e,_=null;else if(e!==p||c!==_){if(m===n&amp;&amp;v===n||(t.blendEquation(32774),m=n,v=n),c)switch(e){case 1:t.blendFuncSeparate(1,771,1,771);break;case 2:t.blendFunc(1,1);break;case 3:t.blendFuncSeparate(0,0,769,771);break;case 4:t.blendFuncSeparate(0,768,0,770);break;default:console.error("THREE.WebGLState: Invalid blending: ",e)}else switch(e){case 1:t.blendFuncSeparate(770,771,1,771);break;case 2:t.blendFunc(770,1);break;case 3:t.blendFunc(0,769);break;case 4:t.blendFunc(0,768);break;default:console.error("THREE.WebGLState: Invalid blending: ",e)}f=null,g=null,y=null,x=null,p=e,_=c}}else!0===d&amp;&amp;(F(3042),d=!1)}function U(e){w!==e&amp;&amp;(e?t.frontFace(2304):t.frontFace(2305),w=e)}function k(e){0!==e?(z(2884),e!==b&amp;&amp;(1===e?t.cullFace(1029):2===e?t.cullFace(1028):t.cullFace(1032))):F(2884),b=e}function V(e,n,i){e?(z(32823),S===n&amp;&amp;T===i||(t.polygonOffset(n,i),S=n,T=i)):F(32823)}function W(e){void 0===e&amp;&amp;(e=33984+E-1),C!==e&amp;&amp;(t.activeTexture(e),C=e)}return{buffers:{color:s,depth:a,stencil:o},enable:z,disable:F,bindFramebuffer:function(e,n){null===n&amp;&amp;null!==c&amp;&amp;(n=c),h[e]!==n&amp;&amp;(t.bindFramebuffer(e,n),h[e]=n,r&amp;&amp;(36009===e&amp;&amp;(h[36160]=n),36160===e&amp;&amp;(h[36009]=n)))},bindXRFramebuffer:function(e){e!==c&amp;&amp;(t.bindFramebuffer(36160,e),c=e)},useProgram:function(e){return u!==e&amp;&amp;(t.useProgram(e),u=e,!0)},setBlending:G,setMaterial:function(t,e){2===t.side?F(2884):z(2884);let n=1===t.side;e&amp;&amp;(n=!n),U(n),1===t.blending&amp;&amp;!1===t.transparent?G(0):G(t.blending,t.blendEquation,t.blendSrc,t.blendDst,t.blendEquationAlpha,t.blendSrcAlpha,t.blendDstAlpha,t.premultipliedAlpha),a.setFunc(t.depthFunc),a.setTest(t.depthTest),a.setMask(t.depthWrite),s.setMask(t.colorWrite);const i=t.stencilWrite;o.setTest(i),i&amp;&amp;(o.setMask(t.stencilWriteMask),o.setFunc(t.stencilFunc,t.stencilRef,t.stencilFuncMask),o.setOp(t.stencilFail,t.stencilZFail,t.stencilZPass)),V(t.polygonOffset,t.polygonOffsetFactor,t.polygonOffsetUnits),!0===t.alphaToCoverage?z(32926):F(32926)},setFlipSided:U,setCullFace:k,setLineWidth:function(e){e!==M&amp;&amp;(A&amp;&amp;t.lineWidth(e),M=e)},setPolygonOffset:V,setScissorTest:function(t){t?z(3089):F(3089)},activeTexture:W,bindTexture:function(e,n){null===C&amp;&amp;W();let i=P[C];void 0===i&amp;&amp;(i={type:void 0,texture:void 0},P[C]=i),i.type===e&amp;&amp;i.texture===n||(t.bindTexture(e,n||B[e]),i.type=e,i.texture=n)},unbindTexture:function(){const e=P[C];void 0!==e&amp;&amp;void 0!==e.type&amp;&amp;(t.bindTexture(e.type,null),e.type=void 0,e.texture=void 0)},compressedTexImage2D:function(){try{t.compressedTexImage2D.apply(t,arguments)}catch(t){console.error("THREE.WebGLState:",t)}},texImage2D:function(){try{t.texImage2D.apply(t,arguments)}catch(t){console.error("THREE.WebGLState:",t)}},texImage3D:function(){try{t.texImage3D.apply(t,arguments)}catch(t){console.error("THREE.WebGLState:",t)}},scissor:function(e){!1===D.equals(e)&amp;&amp;(t.scissor(e.x,e.y,e.z,e.w),D.copy(e))},viewport:function(e){!1===I.equals(e)&amp;&amp;(t.viewport(e.x,e.y,e.z,e.w),I.copy(e))},reset:function(){t.disable(3042),t.disable(2884),t.disable(2929),t.disable(32823),t.disable(3089),t.disable(2960),t.disable(32926),t.blendEquation(32774),t.blendFunc(1,0),t.blendFuncSeparate(1,0,1,0),t.colorMask(!0,!0,!0,!0),t.clearColor(0,0,0,0),t.depthMask(!0),t.depthFunc(513),t.clearDepth(1),t.stencilMask(4294967295),t.stencilFunc(519,0,4294967295),t.stencilOp(7680,7680,7680),t.clearStencil(0),t.cullFace(1029),t.frontFace(2305),t.polygonOffset(0,0),t.activeTexture(33984),t.bindFramebuffer(36160,null),!0===r&amp;&amp;(t.bindFramebuffer(36009,null),t.bindFramebuffer(36008,null)),t.useProgram(null),t.lineWidth(1),t.scissor(0,0,t.canvas.width,t.canvas.height),t.viewport(0,0,t.canvas.width,t.canvas.height),l={},C=null,P={},c=null,h={},u=null,d=!1,p=null,m=null,f=null,g=null,v=null,y=null,x=null,_=!1,w=null,b=null,M=null,S=null,T=null,D.set(0,0,t.canvas.width,t.canvas.height),I.set(0,0,t.canvas.width,t.canvas.height),s.reset(),a.reset(),o.reset()}}}function ps(t,e,n,i,r,s,a){const o=r.isWebGL2,l=r.maxTextures,c=r.maxCubemapSize,x=r.maxTextureSize,R=r.maxSamples,C=new WeakMap;let P,D=!1;try{D="undefined"!=typeof OffscreenCanvas&amp;&amp;null!==new OffscreenCanvas(1,1).getContext("2d")}catch(t){}function I(t,e){return D?new OffscreenCanvas(t,e):document.createElementNS("http://www.w3.org/1999/xhtml","canvas")}function N(t,e,n,i){let r=1;if((t.width&gt;i||t.height&gt;i)&amp;&amp;(r=i/Math.max(t.width,t.height)),r&lt;1||!0===e){if("undefined"!=typeof HTMLImageElement&amp;&amp;t instanceof HTMLImageElement||"undefined"!=typeof HTMLCanvasElement&amp;&amp;t instanceof HTMLCanvasElement||"undefined"!=typeof ImageBitmap&amp;&amp;t instanceof ImageBitmap){const i=e?ft:Math.floor,s=i(r*t.width),a=i(r*t.height);void 0===P&amp;&amp;(P=I(s,a));const o=n?I(s,a):P;o.width=s,o.height=a;return o.getContext("2d").drawImage(t,0,0,s,a),console.warn("THREE.WebGLRenderer: Texture has been resized from ("+t.width+"x"+t.height+") to ("+s+"x"+a+")."),o}return"data"in t&amp;&amp;console.warn("THREE.WebGLRenderer: Image in DataTexture is too big ("+t.width+"x"+t.height+")."),t}return t}function B(t){return pt(t.width)&amp;&amp;pt(t.height)}function z(t,e){return t.generateMipmaps&amp;&amp;e&amp;&amp;t.minFilter!==p&amp;&amp;t.minFilter!==g}function F(e,n,r,s){t.generateMipmap(e);i.get(n).__maxMipLevel=Math.log2(Math.max(r,s))}function O(n,i,r){if(!1===o)return i;if(null!==n){if(void 0!==t[n])return t[n];console.warn("THREE.WebGLRenderer: Attempt to use non-existing WebGL internal format '"+n+"'")}let s=i;return 6403===i&amp;&amp;(5126===r&amp;&amp;(s=33326),5131===r&amp;&amp;(s=33325),5121===r&amp;&amp;(s=33321)),6407===i&amp;&amp;(5126===r&amp;&amp;(s=34837),5131===r&amp;&amp;(s=34843),5121===r&amp;&amp;(s=32849)),6408===i&amp;&amp;(5126===r&amp;&amp;(s=34836),5131===r&amp;&amp;(s=34842),5121===r&amp;&amp;(s=32856)),33325!==s&amp;&amp;33326!==s&amp;&amp;34842!==s&amp;&amp;34836!==s||e.get("EXT_color_buffer_float"),s}function H(t){return t===p||t===m||t===f?9728:9729}function G(e){const n=e.target;n.removeEventListener("dispose",G),function(e){const n=i.get(e);if(void 0===n.__webglInit)return;t.deleteTexture(n.__webglTexture),i.remove(e)}(n),n.isVideoTexture&amp;&amp;C.delete(n),a.memory.textures--}function U(e){const n=e.target;n.removeEventListener("dispose",U),function(e){const n=e.texture,r=i.get(e),s=i.get(n);if(!e)return;void 0!==s.__webglTexture&amp;&amp;t.deleteTexture(s.__webglTexture);e.depthTexture&amp;&amp;e.depthTexture.dispose();if(e.isWebGLCubeRenderTarget)for(let e=0;e&lt;6;e++)t.deleteFramebuffer(r.__webglFramebuffer[e]),r.__webglDepthbuffer&amp;&amp;t.deleteRenderbuffer(r.__webglDepthbuffer[e]);else t.deleteFramebuffer(r.__webglFramebuffer),r.__webglDepthbuffer&amp;&amp;t.deleteRenderbuffer(r.__webglDepthbuffer),r.__webglMultisampledFramebuffer&amp;&amp;t.deleteFramebuffer(r.__webglMultisampledFramebuffer),r.__webglColorRenderbuffer&amp;&amp;t.deleteRenderbuffer(r.__webglColorRenderbuffer),r.__webglDepthRenderbuffer&amp;&amp;t.deleteRenderbuffer(r.__webglDepthRenderbuffer);i.remove(n),i.remove(e)}(n),a.memory.textures--}let k=0;function V(t,e){const r=i.get(t);if(t.isVideoTexture&amp;&amp;function(t){const e=a.render.frame;C.get(t)!==e&amp;&amp;(C.set(t,e),t.update())}(t),t.version&gt;0&amp;&amp;r.__version!==t.version){const n=t.image;if(void 0===n)console.warn("THREE.WebGLRenderer: Texture marked for update but image is undefined");else{if(!1!==n.complete)return void Z(r,t,e);console.warn("THREE.WebGLRenderer: Texture marked for update but image is incomplete")}}n.activeTexture(33984+e),n.bindTexture(3553,r.__webglTexture)}function W(e,r){const a=i.get(e);e.version&gt;0&amp;&amp;a.__version!==e.version?function(e,i,r){if(6!==i.image.length)return;Y(e,i),n.activeTexture(33984+r),n.bindTexture(34067,e.__webglTexture),t.pixelStorei(37440,i.flipY),t.pixelStorei(37441,i.premultiplyAlpha),t.pixelStorei(3317,i.unpackAlignment),t.pixelStorei(37443,0);const a=i&amp;&amp;(i.isCompressedTexture||i.image[0].isCompressedTexture),l=i.image[0]&amp;&amp;i.image[0].isDataTexture,h=[];for(let t=0;t&lt;6;t++)h[t]=a||l?l?i.image[t].image:i.image[t]:N(i.image[t],!1,!0,c);const u=h[0],d=B(u)||o,p=s.convert(i.format),m=s.convert(i.type),f=O(i.internalFormat,p,m);let g;if(X(34067,i,d),a){for(let t=0;t&lt;6;t++){g=h[t].mipmaps;for(let e=0;e&lt;g.length;e++){const r=g[e];i.format!==E&amp;&amp;i.format!==T?null!==p?n.compressedTexImage2D(34069+t,e,f,r.width,r.height,0,r.data):console.warn("THREE.WebGLRenderer: Attempt to load unsupported compressed texture format in .setTextureCube()"):n.texImage2D(34069+t,e,f,r.width,r.height,0,p,m,r.data)}}e.__maxMipLevel=g.length-1}else{g=i.mipmaps;for(let t=0;t&lt;6;t++)if(l){n.texImage2D(34069+t,0,f,h[t].width,h[t].height,0,p,m,h[t].data);for(let e=0;e&lt;g.length;e++){const i=g[e].image[t].image;n.texImage2D(34069+t,e+1,f,i.width,i.height,0,p,m,i.data)}}else{n.texImage2D(34069+t,0,f,p,m,h[t]);for(let e=0;e&lt;g.length;e++){const i=g[e];n.texImage2D(34069+t,e+1,f,p,m,i.image[t])}}e.__maxMipLevel=g.length}z(i,d)&amp;&amp;F(34067,i,u.width,u.height);e.__version=i.version,i.onUpdate&amp;&amp;i.onUpdate(i)}(a,e,r):(n.activeTexture(33984+r),n.bindTexture(34067,a.__webglTexture))}const j={[h]:10497,[u]:33071,[d]:33648},q={[p]:9728,[m]:9984,[f]:9986,[g]:9729,[v]:9985,[y]:9987};function X(n,s,a){if(a?(t.texParameteri(n,10242,j[s.wrapS]),t.texParameteri(n,10243,j[s.wrapT]),32879!==n&amp;&amp;35866!==n||t.texParameteri(n,32882,j[s.wrapR]),t.texParameteri(n,10240,q[s.magFilter]),t.texParameteri(n,10241,q[s.minFilter])):(t.texParameteri(n,10242,33071),t.texParameteri(n,10243,33071),32879!==n&amp;&amp;35866!==n||t.texParameteri(n,32882,33071),s.wrapS===u&amp;&amp;s.wrapT===u||console.warn("THREE.WebGLRenderer: Texture is not power of two. Texture.wrapS and Texture.wrapT should be set to THREE.ClampToEdgeWrapping."),t.texParameteri(n,10240,H(s.magFilter)),t.texParameteri(n,10241,H(s.minFilter)),s.minFilter!==p&amp;&amp;s.minFilter!==g&amp;&amp;console.warn("THREE.WebGLRenderer: Texture is not power of two. Texture.minFilter should be set to THREE.NearestFilter or THREE.LinearFilter.")),!0===e.has("EXT_texture_filter_anisotropic")){const a=e.get("EXT_texture_filter_anisotropic");if(s.type===b&amp;&amp;!1===e.has("OES_texture_float_linear"))return;if(!1===o&amp;&amp;s.type===M&amp;&amp;!1===e.has("OES_texture_half_float_linear"))return;(s.anisotropy&gt;1||i.get(s).__currentAnisotropy)&amp;&amp;(t.texParameterf(n,a.TEXTURE_MAX_ANISOTROPY_EXT,Math.min(s.anisotropy,r.getMaxAnisotropy())),i.get(s).__currentAnisotropy=s.anisotropy)}}function Y(e,n){void 0===e.__webglInit&amp;&amp;(e.__webglInit=!0,n.addEventListener("dispose",G),e.__webglTexture=t.createTexture(),a.memory.textures++)}function Z(e,i,r){let a=3553;i.isDataTexture2DArray&amp;&amp;(a=35866),i.isDataTexture3D&amp;&amp;(a=32879),Y(e,i),n.activeTexture(33984+r),n.bindTexture(a,e.__webglTexture),t.pixelStorei(37440,i.flipY),t.pixelStorei(37441,i.premultiplyAlpha),t.pixelStorei(3317,i.unpackAlignment),t.pixelStorei(37443,0);const l=function(t){return!o&amp;&amp;(t.wrapS!==u||t.wrapT!==u||t.minFilter!==p&amp;&amp;t.minFilter!==g)}(i)&amp;&amp;!1===B(i.image),c=N(i.image,l,!1,x),h=B(c)||o,d=s.convert(i.format);let m,f=s.convert(i.type),v=O(i.internalFormat,d,f);X(a,i,h);const y=i.mipmaps;if(i.isDepthTexture)v=6402,o?v=i.type===b?36012:i.type===w?33190:i.type===S?35056:33189:i.type===b&amp;&amp;console.error("WebGLRenderer: Floating point depth texture requires WebGL2."),i.format===A&amp;&amp;6402===v&amp;&amp;i.type!==_&amp;&amp;i.type!==w&amp;&amp;(console.warn("THREE.WebGLRenderer: Use UnsignedShortType or UnsignedIntType for DepthFormat DepthTexture."),i.type=_,f=s.convert(i.type)),i.format===L&amp;&amp;6402===v&amp;&amp;(v=34041,i.type!==S&amp;&amp;(console.warn("THREE.WebGLRenderer: Use UnsignedInt248Type for DepthStencilFormat DepthTexture."),i.type=S,f=s.convert(i.type))),n.texImage2D(3553,0,v,c.width,c.height,0,d,f,null);else if(i.isDataTexture)if(y.length&gt;0&amp;&amp;h){for(let t=0,e=y.length;t&lt;e;t++)m=y[t],n.texImage2D(3553,t,v,m.width,m.height,0,d,f,m.data);i.generateMipmaps=!1,e.__maxMipLevel=y.length-1}else n.texImage2D(3553,0,v,c.width,c.height,0,d,f,c.data),e.__maxMipLevel=0;else if(i.isCompressedTexture){for(let t=0,e=y.length;t&lt;e;t++)m=y[t],i.format!==E&amp;&amp;i.format!==T?null!==d?n.compressedTexImage2D(3553,t,v,m.width,m.height,0,m.data):console.warn("THREE.WebGLRenderer: Attempt to load unsupported compressed texture format in .uploadTexture()"):n.texImage2D(3553,t,v,m.width,m.height,0,d,f,m.data);e.__maxMipLevel=y.length-1}else if(i.isDataTexture2DArray)n.texImage3D(35866,0,v,c.width,c.height,c.depth,0,d,f,c.data),e.__maxMipLevel=0;else if(i.isDataTexture3D)n.texImage3D(32879,0,v,c.width,c.height,c.depth,0,d,f,c.data),e.__maxMipLevel=0;else if(y.length&gt;0&amp;&amp;h){for(let t=0,e=y.length;t&lt;e;t++)m=y[t],n.texImage2D(3553,t,v,d,f,m);i.generateMipmaps=!1,e.__maxMipLevel=y.length-1}else n.texImage2D(3553,0,v,d,f,c),e.__maxMipLevel=0;z(i,h)&amp;&amp;F(a,i,c.width,c.height),e.__version=i.version,i.onUpdate&amp;&amp;i.onUpdate(i)}function J(e,r,a,o){const l=r.texture,c=s.convert(l.format),h=s.convert(l.type),u=O(l.internalFormat,c,h);32879===o||35866===o?n.texImage3D(o,0,u,r.width,r.height,r.depth,0,c,h,null):n.texImage2D(o,0,u,r.width,r.height,0,c,h,null),n.bindFramebuffer(36160,e),t.framebufferTexture2D(36160,a,o,i.get(l).__webglTexture,0),n.bindFramebuffer(36160,null)}function Q(e,n,i){if(t.bindRenderbuffer(36161,e),n.depthBuffer&amp;&amp;!n.stencilBuffer){let r=33189;if(i){const e=n.depthTexture;e&amp;&amp;e.isDepthTexture&amp;&amp;(e.type===b?r=36012:e.type===w&amp;&amp;(r=33190));const i=$(n);t.renderbufferStorageMultisample(36161,i,r,n.width,n.height)}else t.renderbufferStorage(36161,r,n.width,n.height);t.framebufferRenderbuffer(36160,36096,36161,e)}else if(n.depthBuffer&amp;&amp;n.stencilBuffer){if(i){const e=$(n);t.renderbufferStorageMultisample(36161,e,35056,n.width,n.height)}else t.renderbufferStorage(36161,34041,n.width,n.height);t.framebufferRenderbuffer(36160,33306,36161,e)}else{const e=n.texture,r=s.convert(e.format),a=s.convert(e.type),o=O(e.internalFormat,r,a);if(i){const e=$(n);t.renderbufferStorageMultisample(36161,e,o,n.width,n.height)}else t.renderbufferStorage(36161,o,n.width,n.height)}t.bindRenderbuffer(36161,null)}function K(e){const r=i.get(e),s=!0===e.isWebGLCubeRenderTarget;if(e.depthTexture){if(s)throw new Error("target.depthTexture not supported in Cube render targets");!function(e,r){if(r&amp;&amp;r.isWebGLCubeRenderTarget)throw new Error("Depth Texture with cube render targets is not supported");if(n.bindFramebuffer(36160,e),!r.depthTexture||!r.depthTexture.isDepthTexture)throw new Error("renderTarget.depthTexture must be an instance of THREE.DepthTexture");i.get(r.depthTexture).__webglTexture&amp;&amp;r.depthTexture.image.width===r.width&amp;&amp;r.depthTexture.image.height===r.height||(r.depthTexture.image.width=r.width,r.depthTexture.image.height=r.height,r.depthTexture.needsUpdate=!0),V(r.depthTexture,0);const s=i.get(r.depthTexture).__webglTexture;if(r.depthTexture.format===A)t.framebufferTexture2D(36160,36096,3553,s,0);else{if(r.depthTexture.format!==L)throw new Error("Unknown depthTexture format");t.framebufferTexture2D(36160,33306,3553,s,0)}}(r.__webglFramebuffer,e)}else if(s){r.__webglDepthbuffer=[];for(let i=0;i&lt;6;i++)n.bindFramebuffer(36160,r.__webglFramebuffer[i]),r.__webglDepthbuffer[i]=t.createRenderbuffer(),Q(r.__webglDepthbuffer[i],e,!1)}else n.bindFramebuffer(36160,r.__webglFramebuffer),r.__webglDepthbuffer=t.createRenderbuffer(),Q(r.__webglDepthbuffer,e,!1);n.bindFramebuffer(36160,null)}function $(t){return o&amp;&amp;t.isWebGLMultisampleRenderTarget?Math.min(R,t.samples):0}let tt=!1,et=!1;this.allocateTextureUnit=function(){const t=k;return t&gt;=l&amp;&amp;console.warn("THREE.WebGLTextures: Trying to use "+t+" texture units while this GPU supports only "+l),k+=1,t},this.resetTextureUnits=function(){k=0},this.setTexture2D=V,this.setTexture2DArray=function(t,e){const r=i.get(t);t.version&gt;0&amp;&amp;r.__version!==t.version?Z(r,t,e):(n.activeTexture(33984+e),n.bindTexture(35866,r.__webglTexture))},this.setTexture3D=function(t,e){const r=i.get(t);t.version&gt;0&amp;&amp;r.__version!==t.version?Z(r,t,e):(n.activeTexture(33984+e),n.bindTexture(32879,r.__webglTexture))},this.setTextureCube=W,this.setupRenderTarget=function(e){const r=e.texture,l=i.get(e),c=i.get(r);e.addEventListener("dispose",U),c.__webglTexture=t.createTexture(),c.__version=r.version,a.memory.textures++;const h=!0===e.isWebGLCubeRenderTarget,u=!0===e.isWebGLMultisampleRenderTarget,d=r.isDataTexture3D||r.isDataTexture2DArray,p=B(e)||o;if(!o||r.format!==T||r.type!==b&amp;&amp;r.type!==M||(r.format=E,console.warn("THREE.WebGLRenderer: Rendering to textures with RGB format is not supported. Using RGBA format instead.")),h){l.__webglFramebuffer=[];for(let e=0;e&lt;6;e++)l.__webglFramebuffer[e]=t.createFramebuffer()}else if(l.__webglFramebuffer=t.createFramebuffer(),u)if(o){l.__webglMultisampledFramebuffer=t.createFramebuffer(),l.__webglColorRenderbuffer=t.createRenderbuffer(),t.bindRenderbuffer(36161,l.__webglColorRenderbuffer);const i=s.convert(r.format),a=s.convert(r.type),o=O(r.internalFormat,i,a),c=$(e);t.renderbufferStorageMultisample(36161,c,o,e.width,e.height),n.bindFramebuffer(36160,l.__webglMultisampledFramebuffer),t.framebufferRenderbuffer(36160,36064,36161,l.__webglColorRenderbuffer),t.bindRenderbuffer(36161,null),e.depthBuffer&amp;&amp;(l.__webglDepthRenderbuffer=t.createRenderbuffer(),Q(l.__webglDepthRenderbuffer,e,!0)),n.bindFramebuffer(36160,null)}else console.warn("THREE.WebGLRenderer: WebGLMultisampleRenderTarget can only be used with WebGL2.");if(h){n.bindTexture(34067,c.__webglTexture),X(34067,r,p);for(let t=0;t&lt;6;t++)J(l.__webglFramebuffer[t],e,36064,34069+t);z(r,p)&amp;&amp;F(34067,r,e.width,e.height),n.bindTexture(34067,null)}else{let t=3553;if(d)if(o){t=r.isDataTexture3D?32879:35866}else console.warn("THREE.DataTexture3D and THREE.DataTexture2DArray only supported with WebGL2.");n.bindTexture(t,c.__webglTexture),X(t,r,p),J(l.__webglFramebuffer,e,36064,t),z(r,p)&amp;&amp;F(3553,r,e.width,e.height),n.bindTexture(3553,null)}e.depthBuffer&amp;&amp;K(e)},this.updateRenderTargetMipmap=function(t){const e=t.texture;if(z(e,B(t)||o)){const r=t.isWebGLCubeRenderTarget?34067:3553,s=i.get(e).__webglTexture;n.bindTexture(r,s),F(r,e,t.width,t.height),n.bindTexture(r,null)}},this.updateMultisampleRenderTarget=function(e){if(e.isWebGLMultisampleRenderTarget)if(o){const r=e.width,s=e.height;let a=16384;e.depthBuffer&amp;&amp;(a|=256),e.stencilBuffer&amp;&amp;(a|=1024);const o=i.get(e);n.bindFramebuffer(36008,o.__webglMultisampledFramebuffer),n.bindFramebuffer(36009,o.__webglFramebuffer),t.blitFramebuffer(0,0,r,s,0,0,r,s,a,9728),n.bindFramebuffer(36008,null),n.bindFramebuffer(36009,o.__webglMultisampledFramebuffer)}else console.warn("THREE.WebGLRenderer: WebGLMultisampleRenderTarget can only be used with WebGL2.")},this.safeSetTexture2D=function(t,e){t&amp;&amp;t.isWebGLRenderTarget&amp;&amp;(!1===tt&amp;&amp;(console.warn("THREE.WebGLTextures.safeSetTexture2D: don't use render targets as textures. Use their .texture property instead."),tt=!0),t=t.texture),V(t,e)},this.safeSetTextureCube=function(t,e){t&amp;&amp;t.isWebGLCubeRenderTarget&amp;&amp;(!1===et&amp;&amp;(console.warn("THREE.WebGLTextures.safeSetTextureCube: don't use cube render targets as textures. Use their .texture property instead."),et=!0),t=t.texture),W(t,e)}}function ms(t,e,n){const i=n.isWebGL2;return{convert:function(t){let n;if(t===x)return 5121;if(1017===t)return 32819;if(1018===t)return 32820;if(1019===t)return 33635;if(1010===t)return 5120;if(1011===t)return 5122;if(t===_)return 5123;if(1013===t)return 5124;if(t===w)return 5125;if(t===b)return 5126;if(t===M)return i?5131:(n=e.get("OES_texture_half_float"),null!==n?n.HALF_FLOAT_OES:null);if(1021===t)return 6406;if(t===T)return 6407;if(t===E)return 6408;if(1024===t)return 6409;if(1025===t)return 6410;if(t===A)return 6402;if(t===L)return 34041;if(1028===t)return 6403;if(1029===t)return 36244;if(1030===t)return 33319;if(1031===t)return 33320;if(1032===t)return 36248;if(1033===t)return 36249;if(t===R||t===C||t===P||t===D){if(n=e.get("WEBGL_compressed_texture_s3tc"),null===n)return null;if(t===R)return n.COMPRESSED_RGB_S3TC_DXT1_EXT;if(t===C)return n.COMPRESSED_RGBA_S3TC_DXT1_EXT;if(t===P)return n.COMPRESSED_RGBA_S3TC_DXT3_EXT;if(t===D)return n.COMPRESSED_RGBA_S3TC_DXT5_EXT}if(t===I||t===N||t===B||t===z){if(n=e.get("WEBGL_compressed_texture_pvrtc"),null===n)return null;if(t===I)return n.COMPRESSED_RGB_PVRTC_4BPPV1_IMG;if(t===N)return n.COMPRESSED_RGB_PVRTC_2BPPV1_IMG;if(t===B)return n.COMPRESSED_RGBA_PVRTC_4BPPV1_IMG;if(t===z)return n.COMPRESSED_RGBA_PVRTC_2BPPV1_IMG}if(36196===t)return n=e.get("WEBGL_compressed_texture_etc1"),null!==n?n.COMPRESSED_RGB_ETC1_WEBGL:null;if((t===F||t===O)&amp;&amp;(n=e.get("WEBGL_compressed_texture_etc"),null!==n)){if(t===F)return n.COMPRESSED_RGB8_ETC2;if(t===O)return n.COMPRESSED_RGBA8_ETC2_EAC}return 37808===t||37809===t||37810===t||37811===t||37812===t||37813===t||37814===t||37815===t||37816===t||37817===t||37818===t||37819===t||37820===t||37821===t||37840===t||37841===t||37842===t||37843===t||37844===t||37845===t||37846===t||37847===t||37848===t||37849===t||37850===t||37851===t||37852===t||37853===t?(n=e.get("WEBGL_compressed_texture_astc"),null!==n?t:null):36492===t?(n=e.get("EXT_texture_compression_bptc"),null!==n?t:null):t===S?i?34042:(n=e.get("WEBGL_depth_texture"),null!==n?n.UNSIGNED_INT_24_8_WEBGL:null):void 0}}}class fs extends Kn{constructor(t=[]){super(),this.cameras=t}}fs.prototype.isArrayCamera=!0;class gs extends Ce{constructor(){super(),this.type="Group"}}gs.prototype.isGroup=!0;const vs={type:"move"};class ys{constructor(){this._targetRay=null,this._grip=null,this._hand=null}getHandSpace(){return null===this._hand&amp;&amp;(this._hand=new gs,this._hand.matrixAutoUpdate=!1,this._hand.visible=!1,this._hand.joints={},this._hand.inputState={pinching:!1}),this._hand}getTargetRaySpace(){return null===this._targetRay&amp;&amp;(this._targetRay=new gs,this._targetRay.matrixAutoUpdate=!1,this._targetRay.visible=!1,this._targetRay.hasLinearVelocity=!1,this._targetRay.linearVelocity=new Lt,this._targetRay.hasAngularVelocity=!1,this._targetRay.angularVelocity=new Lt),this._targetRay}getGripSpace(){return null===this._grip&amp;&amp;(this._grip=new gs,this._grip.matrixAutoUpdate=!1,this._grip.visible=!1,this._grip.hasLinearVelocity=!1,this._grip.linearVelocity=new Lt,this._grip.hasAngularVelocity=!1,this._grip.angularVelocity=new Lt),this._grip}dispatchEvent(t){return null!==this._targetRay&amp;&amp;this._targetRay.dispatchEvent(t),null!==this._grip&amp;&amp;this._grip.dispatchEvent(t),null!==this._hand&amp;&amp;this._hand.dispatchEvent(t),this}disconnect(t){return this.dispatchEvent({type:"disconnected",data:t}),null!==this._targetRay&amp;&amp;(this._targetRay.visible=!1),null!==this._grip&amp;&amp;(this._grip.visible=!1),null!==this._hand&amp;&amp;(this._hand.visible=!1),this}update(t,e,n){let i=null,r=null,s=null;const a=this._targetRay,o=this._grip,l=this._hand;if(t&amp;&amp;"visible-blurred"!==e.session.visibilityState)if(null!==a&amp;&amp;(i=e.getPose(t.targetRaySpace,n),null!==i&amp;&amp;(a.matrix.fromArray(i.transform.matrix),a.matrix.decompose(a.position,a.rotation,a.scale),i.linearVelocity?(a.hasLinearVelocity=!0,a.linearVelocity.copy(i.linearVelocity)):a.hasLinearVelocity=!1,i.angularVelocity?(a.hasAngularVelocity=!0,a.angularVelocity.copy(i.angularVelocity)):a.hasAngularVelocity=!1,this.dispatchEvent(vs))),l&amp;&amp;t.hand){s=!0;for(const i of t.hand.values()){const t=e.getJointPose(i,n);if(void 0===l.joints[i.jointName]){const t=new gs;t.matrixAutoUpdate=!1,t.visible=!1,l.joints[i.jointName]=t,l.add(t)}const r=l.joints[i.jointName];null!==t&amp;&amp;(r.matrix.fromArray(t.transform.matrix),r.matrix.decompose(r.position,r.rotation,r.scale),r.jointRadius=t.radius),r.visible=null!==t}const i=l.joints["index-finger-tip"],r=l.joints["thumb-tip"],a=i.position.distanceTo(r.position),o=.02,c=.005;l.inputState.pinching&amp;&amp;a&gt;o+c?(l.inputState.pinching=!1,this.dispatchEvent({type:"pinchend",handedness:t.handedness,target:this})):!l.inputState.pinching&amp;&amp;a&lt;=o-c&amp;&amp;(l.inputState.pinching=!0,this.dispatchEvent({type:"pinchstart",handedness:t.handedness,target:this}))}else null!==o&amp;&amp;t.gripSpace&amp;&amp;(r=e.getPose(t.gripSpace,n),null!==r&amp;&amp;(o.matrix.fromArray(r.transform.matrix),o.matrix.decompose(o.position,o.rotation,o.scale),r.linearVelocity?(o.hasLinearVelocity=!0,o.linearVelocity.copy(r.linearVelocity)):o.hasLinearVelocity=!1,r.angularVelocity?(o.hasAngularVelocity=!0,o.angularVelocity.copy(r.angularVelocity)):o.hasAngularVelocity=!1));return null!==a&amp;&amp;(a.visible=null!==i),null!==o&amp;&amp;(o.visible=null!==r),null!==l&amp;&amp;(l.visible=null!==s),this}}class xs extends rt{constructor(t,e){super();const n=this,i=t.state;let r=null,s=1,a=null,o="local-floor",l=null;const c=[],h=new Map,u=new Kn;u.layers.enable(1),u.viewport=new St;const d=new Kn;d.layers.enable(2),d.viewport=new St;const p=[u,d],m=new fs;m.layers.enable(1),m.layers.enable(2);let f=null,g=null;function v(t){const e=h.get(t.inputSource);e&amp;&amp;e.dispatchEvent({type:t.type,data:t.inputSource})}function y(){h.forEach((function(t,e){t.disconnect(e)})),h.clear(),f=null,g=null,i.bindXRFramebuffer(null),t.setRenderTarget(t.getRenderTarget()),S.stop(),n.isPresenting=!1,n.dispatchEvent({type:"sessionend"})}function x(t){const e=r.inputSources;for(let t=0;t&lt;c.length;t++)h.set(e[t],c[t]);for(let e=0;e&lt;t.removed.length;e++){const n=t.removed[e],i=h.get(n);i&amp;&amp;(i.dispatchEvent({type:"disconnected",data:n}),h.delete(n))}for(let e=0;e&lt;t.added.length;e++){const n=t.added[e],i=h.get(n);i&amp;&amp;i.dispatchEvent({type:"connected",data:n})}}this.enabled=!1,this.isPresenting=!1,this.getController=function(t){let e=c[t];return void 0===e&amp;&amp;(e=new ys,c[t]=e),e.getTargetRaySpace()},this.getControllerGrip=function(t){let e=c[t];return void 0===e&amp;&amp;(e=new ys,c[t]=e),e.getGripSpace()},this.getHand=function(t){let e=c[t];return void 0===e&amp;&amp;(e=new ys,c[t]=e),e.getHandSpace()},this.setFramebufferScaleFactor=function(t){s=t,!0===n.isPresenting&amp;&amp;console.warn("THREE.WebXRManager: Cannot change framebuffer scale while presenting.")},this.setReferenceSpaceType=function(t){o=t,!0===n.isPresenting&amp;&amp;console.warn("THREE.WebXRManager: Cannot change reference space type while presenting.")},this.getReferenceSpace=function(){return a},this.getSession=function(){return r},this.setSession=async function(t){if(r=t,null!==r){r.addEventListener("select",v),r.addEventListener("selectstart",v),r.addEventListener("selectend",v),r.addEventListener("squeeze",v),r.addEventListener("squeezestart",v),r.addEventListener("squeezeend",v),r.addEventListener("end",y),r.addEventListener("inputsourceschange",x);const t=e.getContextAttributes();!0!==t.xrCompatible&amp;&amp;await e.makeXRCompatible();const i={antialias:t.antialias,alpha:t.alpha,depth:t.depth,stencil:t.stencil,framebufferScaleFactor:s},l=new XRWebGLLayer(r,e,i);r.updateRenderState({baseLayer:l}),a=await r.requestReferenceSpace(o),S.setContext(r),S.start(),n.isPresenting=!0,n.dispatchEvent({type:"sessionstart"})}};const _=new Lt,w=new Lt;function b(t,e){null===e?t.matrixWorld.copy(t.matrix):t.matrixWorld.multiplyMatrices(e.matrixWorld,t.matrix),t.matrixWorldInverse.copy(t.matrixWorld).invert()}this.getCamera=function(t){m.near=d.near=u.near=t.near,m.far=d.far=u.far=t.far,f===m.near&amp;&amp;g===m.far||(r.updateRenderState({depthNear:m.near,depthFar:m.far}),f=m.near,g=m.far);const e=t.parent,n=m.cameras;b(m,e);for(let t=0;t&lt;n.length;t++)b(n[t],e);t.matrixWorld.copy(m.matrixWorld),t.matrix.copy(m.matrix),t.matrix.decompose(t.position,t.quaternion,t.scale);const i=t.children;for(let t=0,e=i.length;t&lt;e;t++)i[t].updateMatrixWorld(!0);return 2===n.length?function(t,e,n){_.setFromMatrixPosition(e.matrixWorld),w.setFromMatrixPosition(n.matrixWorld);const i=_.distanceTo(w),r=e.projectionMatrix.elements,s=n.projectionMatrix.elements,a=r[14]/(r[10]-1),o=r[14]/(r[10]+1),l=(r[9]+1)/r[5],c=(r[9]-1)/r[5],h=(r[8]-1)/r[0],u=(s[8]+1)/s[0],d=a*h,p=a*u,m=i/(-h+u),f=m*-h;e.matrixWorld.decompose(t.position,t.quaternion,t.scale),t.translateX(f),t.translateZ(m),t.matrixWorld.compose(t.position,t.quaternion,t.scale),t.matrixWorldInverse.copy(t.matrixWorld).invert();const g=a+m,v=o+m,y=d-f,x=p+(i-f),b=l*o/v*g,M=c*o/v*g;t.projectionMatrix.makePerspective(y,x,b,M,g,v)}(m,u,d):m.projectionMatrix.copy(u.projectionMatrix),m};let M=null;const S=new oi;S.setAnimationLoop((function(t,e){if(l=e.getViewerPose(a),null!==l){const t=l.views,e=r.renderState.baseLayer;i.bindXRFramebuffer(e.framebuffer);let n=!1;t.length!==m.cameras.length&amp;&amp;(m.cameras.length=0,n=!0);for(let i=0;i&lt;t.length;i++){const r=t[i],s=e.getViewport(r),a=p[i];a.matrix.fromArray(r.transform.matrix),a.projectionMatrix.fromArray(r.projectionMatrix),a.viewport.set(s.x,s.y,s.width,s.height),0===i&amp;&amp;m.matrix.copy(a.matrix),!0===n&amp;&amp;m.cameras.push(a)}}const n=r.inputSources;for(let t=0;t&lt;c.length;t++){const i=c[t],r=n[t];i.update(r,e,a)}M&amp;&amp;M(t,e)})),this.setAnimationLoop=function(t){M=t},this.dispose=function(){}}}function _s(t){function e(e,n){e.opacity.value=n.opacity,n.color&amp;&amp;e.diffuse.value.copy(n.color),n.emissive&amp;&amp;e.emissive.value.copy(n.emissive).multiplyScalar(n.emissiveIntensity),n.map&amp;&amp;(e.map.value=n.map),n.alphaMap&amp;&amp;(e.alphaMap.value=n.alphaMap),n.specularMap&amp;&amp;(e.specularMap.value=n.specularMap);const i=t.get(n).envMap;if(i){e.envMap.value=i,e.flipEnvMap.value=i.isCubeTexture&amp;&amp;i._needsFlipEnvMap?-1:1,e.reflectivity.value=n.reflectivity,e.refractionRatio.value=n.refractionRatio;const r=t.get(i).__maxMipLevel;void 0!==r&amp;&amp;(e.maxMipLevel.value=r)}let r,s;n.lightMap&amp;&amp;(e.lightMap.value=n.lightMap,e.lightMapIntensity.value=n.lightMapIntensity),n.aoMap&amp;&amp;(e.aoMap.value=n.aoMap,e.aoMapIntensity.value=n.aoMapIntensity),n.map?r=n.map:n.specularMap?r=n.specularMap:n.displacementMap?r=n.displacementMap:n.normalMap?r=n.normalMap:n.bumpMap?r=n.bumpMap:n.roughnessMap?r=n.roughnessMap:n.metalnessMap?r=n.metalnessMap:n.alphaMap?r=n.alphaMap:n.emissiveMap?r=n.emissiveMap:n.clearcoatMap?r=n.clearcoatMap:n.clearcoatNormalMap?r=n.clearcoatNormalMap:n.clearcoatRoughnessMap&amp;&amp;(r=n.clearcoatRoughnessMap),void 0!==r&amp;&amp;(r.isWebGLRenderTarget&amp;&amp;(r=r.texture),!0===r.matrixAutoUpdate&amp;&amp;r.updateMatrix(),e.uvTransform.value.copy(r.matrix)),n.aoMap?s=n.aoMap:n.lightMap&amp;&amp;(s=n.lightMap),void 0!==s&amp;&amp;(s.isWebGLRenderTarget&amp;&amp;(s=s.texture),!0===s.matrixAutoUpdate&amp;&amp;s.updateMatrix(),e.uv2Transform.value.copy(s.matrix))}function n(e,n){e.roughness.value=n.roughness,e.metalness.value=n.metalness,n.roughnessMap&amp;&amp;(e.roughnessMap.value=n.roughnessMap),n.metalnessMap&amp;&amp;(e.metalnessMap.value=n.metalnessMap),n.emissiveMap&amp;&amp;(e.emissiveMap.value=n.emissiveMap),n.bumpMap&amp;&amp;(e.bumpMap.value=n.bumpMap,e.bumpScale.value=n.bumpScale,1===n.side&amp;&amp;(e.bumpScale.value*=-1)),n.normalMap&amp;&amp;(e.normalMap.value=n.normalMap,e.normalScale.value.copy(n.normalScale),1===n.side&amp;&amp;e.normalScale.value.negate()),n.displacementMap&amp;&amp;(e.displacementMap.value=n.displacementMap,e.displacementScale.value=n.displacementScale,e.displacementBias.value=n.displacementBias);t.get(n).envMap&amp;&amp;(e.envMapIntensity.value=n.envMapIntensity)}return{refreshFogUniforms:function(t,e){t.fogColor.value.copy(e.color),e.isFog?(t.fogNear.value=e.near,t.fogFar.value=e.far):e.isFogExp2&amp;&amp;(t.fogDensity.value=e.density)},refreshMaterialUniforms:function(t,i,r,s){i.isMeshBasicMaterial?e(t,i):i.isMeshLambertMaterial?(e(t,i),function(t,e){e.emissiveMap&amp;&amp;(t.emissiveMap.value=e.emissiveMap)}(t,i)):i.isMeshToonMaterial?(e(t,i),function(t,e){e.gradientMap&amp;&amp;(t.gradientMap.value=e.gradientMap);e.emissiveMap&amp;&amp;(t.emissiveMap.value=e.emissiveMap);e.bumpMap&amp;&amp;(t.bumpMap.value=e.bumpMap,t.bumpScale.value=e.bumpScale,1===e.side&amp;&amp;(t.bumpScale.value*=-1));e.normalMap&amp;&amp;(t.normalMap.value=e.normalMap,t.normalScale.value.copy(e.normalScale),1===e.side&amp;&amp;t.normalScale.value.negate());e.displacementMap&amp;&amp;(t.displacementMap.value=e.displacementMap,t.displacementScale.value=e.displacementScale,t.displacementBias.value=e.displacementBias)}(t,i)):i.isMeshPhongMaterial?(e(t,i),function(t,e){t.specular.value.copy(e.specular),t.shininess.value=Math.max(e.shininess,1e-4),e.emissiveMap&amp;&amp;(t.emissiveMap.value=e.emissiveMap);e.bumpMap&amp;&amp;(t.bumpMap.value=e.bumpMap,t.bumpScale.value=e.bumpScale,1===e.side&amp;&amp;(t.bumpScale.value*=-1));e.normalMap&amp;&amp;(t.normalMap.value=e.normalMap,t.normalScale.value.copy(e.normalScale),1===e.side&amp;&amp;t.normalScale.value.negate());e.displacementMap&amp;&amp;(t.displacementMap.value=e.displacementMap,t.displacementScale.value=e.displacementScale,t.displacementBias.value=e.displacementBias)}(t,i)):i.isMeshStandardMaterial?(e(t,i),i.isMeshPhysicalMaterial?function(t,e){n(t,e),t.reflectivity.value=e.reflectivity,t.clearcoat.value=e.clearcoat,t.clearcoatRoughness.value=e.clearcoatRoughness,e.sheen&amp;&amp;t.sheen.value.copy(e.sheen);e.clearcoatMap&amp;&amp;(t.clearcoatMap.value=e.clearcoatMap);e.clearcoatRoughnessMap&amp;&amp;(t.clearcoatRoughnessMap.value=e.clearcoatRoughnessMap);e.clearcoatNormalMap&amp;&amp;(t.clearcoatNormalScale.value.copy(e.clearcoatNormalScale),t.clearcoatNormalMap.value=e.clearcoatNormalMap,1===e.side&amp;&amp;t.clearcoatNormalScale.value.negate());t.transmission.value=e.transmission,e.transmissionMap&amp;&amp;(t.transmissionMap.value=e.transmissionMap)}(t,i):n(t,i)):i.isMeshMatcapMaterial?(e(t,i),function(t,e){e.matcap&amp;&amp;(t.matcap.value=e.matcap);e.bumpMap&amp;&amp;(t.bumpMap.value=e.bumpMap,t.bumpScale.value=e.bumpScale,1===e.side&amp;&amp;(t.bumpScale.value*=-1));e.normalMap&amp;&amp;(t.normalMap.value=e.normalMap,t.normalScale.value.copy(e.normalScale),1===e.side&amp;&amp;t.normalScale.value.negate());e.displacementMap&amp;&amp;(t.displacementMap.value=e.displacementMap,t.displacementScale.value=e.displacementScale,t.displacementBias.value=e.displacementBias)}(t,i)):i.isMeshDepthMaterial?(e(t,i),function(t,e){e.displacementMap&amp;&amp;(t.displacementMap.value=e.displacementMap,t.displacementScale.value=e.displacementScale,t.displacementBias.value=e.displacementBias)}(t,i)):i.isMeshDistanceMaterial?(e(t,i),function(t,e){e.displacementMap&amp;&amp;(t.displacementMap.value=e.displacementMap,t.displacementScale.value=e.displacementScale,t.displacementBias.value=e.displacementBias);t.referencePosition.value.copy(e.referencePosition),t.nearDistance.value=e.nearDistance,t.farDistance.value=e.farDistance}(t,i)):i.isMeshNormalMaterial?(e(t,i),function(t,e){e.bumpMap&amp;&amp;(t.bumpMap.value=e.bumpMap,t.bumpScale.value=e.bumpScale,1===e.side&amp;&amp;(t.bumpScale.value*=-1));e.normalMap&amp;&amp;(t.normalMap.value=e.normalMap,t.normalScale.value.copy(e.normalScale),1===e.side&amp;&amp;t.normalScale.value.negate());e.displacementMap&amp;&amp;(t.displacementMap.value=e.displacementMap,t.displacementScale.value=e.displacementScale,t.displacementBias.value=e.displacementBias)}(t,i)):i.isLineBasicMaterial?(function(t,e){t.diffuse.value.copy(e.color),t.opacity.value=e.opacity}(t,i),i.isLineDashedMaterial&amp;&amp;function(t,e){t.dashSize.value=e.dashSize,t.totalSize.value=e.dashSize+e.gapSize,t.scale.value=e.scale}(t,i)):i.isPointsMaterial?function(t,e,n,i){t.diffuse.value.copy(e.color),t.opacity.value=e.opacity,t.size.value=e.size*n,t.scale.value=.5*i,e.map&amp;&amp;(t.map.value=e.map);e.alphaMap&amp;&amp;(t.alphaMap.value=e.alphaMap);let r;e.map?r=e.map:e.alphaMap&amp;&amp;(r=e.alphaMap);void 0!==r&amp;&amp;(!0===r.matrixAutoUpdate&amp;&amp;r.updateMatrix(),t.uvTransform.value.copy(r.matrix))}(t,i,r,s):i.isSpriteMaterial?function(t,e){t.diffuse.value.copy(e.color),t.opacity.value=e.opacity,t.rotation.value=e.rotation,e.map&amp;&amp;(t.map.value=e.map);e.alphaMap&amp;&amp;(t.alphaMap.value=e.alphaMap);let n;e.map?n=e.map:e.alphaMap&amp;&amp;(n=e.alphaMap);void 0!==n&amp;&amp;(!0===n.matrixAutoUpdate&amp;&amp;n.updateMatrix(),t.uvTransform.value.copy(n.matrix))}(t,i):i.isShadowMaterial?(t.color.value.copy(i.color),t.opacity.value=i.opacity):i.isShaderMaterial&amp;&amp;(i.uniformsNeedUpdate=!1)}}}function ws(t){const e=void 0!==(t=t||{}).canvas?t.canvas:function(){const t=document.createElementNS("http://www.w3.org/1999/xhtml","canvas");return t.style.display="block",t}(),n=void 0!==t.context?t.context:null,i=void 0!==t.alpha&amp;&amp;t.alpha,r=void 0===t.depth||t.depth,s=void 0===t.stencil||t.stencil,a=void 0!==t.antialias&amp;&amp;t.antialias,o=void 0===t.premultipliedAlpha||t.premultipliedAlpha,l=void 0!==t.preserveDrawingBuffer&amp;&amp;t.preserveDrawingBuffer,c=void 0!==t.powerPreference?t.powerPreference:"default",h=void 0!==t.failIfMajorPerformanceCaveat&amp;&amp;t.failIfMajorPerformanceCaveat;let u=null,d=null;const p=[],m=[];this.domElement=e,this.debug={checkShaderErrors:!0},this.autoClear=!0,this.autoClearColor=!0,this.autoClearDepth=!0,this.autoClearStencil=!0,this.sortObjects=!0,this.clippingPlanes=[],this.localClippingEnabled=!1,this.gammaFactor=2,this.outputEncoding=X,this.physicallyCorrectLights=!1,this.toneMapping=0,this.toneMappingExposure=1;const f=this;let g=!1,v=0,y=0,_=null,w=-1,S=null;const T=new St,A=new St;let L=null,R=e.width,C=e.height,P=1,D=null,I=null;const N=new St(0,0,R,C),B=new St(0,0,R,C);let z=!1;const F=new ai;let O=!1,H=!1;const G=new se,U=new Lt,k={background:null,fog:null,environment:null,overrideMaterial:null,isScene:!0};function V(){return null===_?P:1}let W,j,q,Y,Z,J,Q,K,$,tt,et,nt,it,rt,st,at,ot,lt,ct,ht,ut,dt,pt=n;function ft(t,n){for(let i=0;i&lt;t.length;i++){const r=t[i],s=e.getContext(r,n);if(null!==s)return s}return null}try{const t={alpha:i,depth:r,stencil:s,antialias:a,premultipliedAlpha:o,preserveDrawingBuffer:l,powerPreference:c,failIfMajorPerformanceCaveat:h};if(e.addEventListener("webglcontextlost",xt,!1),e.addEventListener("webglcontextrestored",_t,!1),null===pt){const e=["webgl2","webgl","experimental-webgl"];if(!0===f.isWebGL1Renderer&amp;&amp;e.shift(),pt=ft(e,t),null===pt)throw ft(e)?new Error("Error creating WebGL context with your selected attributes."):new Error("Error creating WebGL context.")}void 0===pt.getShaderPrecisionFormat&amp;&amp;(pt.getShaderPrecisionFormat=function(){return{rangeMin:1,rangeMax:1,precision:1}})}catch(t){throw console.error("THREE.WebGLRenderer: "+t.message),t}function gt(){W=new xi(pt),j=new gi(pt,W,t),W.init(j),ut=new ms(pt,W,j),q=new ds(pt,W,j),Y=new bi(pt),Z=new Kr,J=new ps(pt,W,q,Z,j,ut,Y),Q=new yi(f),K=new li(pt,j),dt=new mi(pt,W,K,j),$=new _i(pt,K,Y,dt),tt=new Ei(pt,$,K,Y),lt=new Ti(pt),st=new vi(Z),et=new Qr(f,Q,W,j,dt,st),nt=new _s(Z),it=new ns(Z),rt=new ls(W,j),ot=new pi(f,Q,q,tt,o),at=new us(f,tt,j),ct=new fi(pt,W,Y,j),ht=new wi(pt,W,Y,j),Y.programs=et.programs,f.capabilities=j,f.extensions=W,f.properties=Z,f.renderLists=it,f.shadowMap=at,f.state=q,f.info=Y}gt();const yt=new xs(f,pt);function xt(t){t.preventDefault(),console.log("THREE.WebGLRenderer: Context Lost."),g=!0}function _t(){console.log("THREE.WebGLRenderer: Context Restored."),g=!1;const t=Y.autoReset,e=at.enabled,n=at.autoUpdate,i=at.needsUpdate,r=at.type;gt(),Y.autoReset=t,at.enabled=e,at.autoUpdate=n,at.needsUpdate=i,at.type=r}function wt(t){const e=t.target;e.removeEventListener("dispose",wt),function(t){(function(t){const e=Z.get(t).programs;void 0!==e&amp;&amp;e.forEach((function(t){et.releaseProgram(t)}))})(t),Z.remove(t)}(e)}this.xr=yt,this.getContext=function(){return pt},this.getContextAttributes=function(){return pt.getContextAttributes()},this.forceContextLoss=function(){const t=W.get("WEBGL_lose_context");t&amp;&amp;t.loseContext()},this.forceContextRestore=function(){const t=W.get("WEBGL_lose_context");t&amp;&amp;t.restoreContext()},this.getPixelRatio=function(){return P},this.setPixelRatio=function(t){void 0!==t&amp;&amp;(P=t,this.setSize(R,C,!1))},this.getSize=function(t){return void 0===t&amp;&amp;(console.warn("WebGLRenderer: .getsize() now requires a Vector2 as an argument"),t=new vt),t.set(R,C)},this.setSize=function(t,n,i){yt.isPresenting?console.warn("THREE.WebGLRenderer: Can't change size while VR device is presenting."):(R=t,C=n,e.width=Math.floor(t*P),e.height=Math.floor(n*P),!1!==i&amp;&amp;(e.style.width=t+"px",e.style.height=n+"px"),this.setViewport(0,0,t,n))},this.getDrawingBufferSize=function(t){return void 0===t&amp;&amp;(console.warn("WebGLRenderer: .getdrawingBufferSize() now requires a Vector2 as an argument"),t=new vt),t.set(R*P,C*P).floor()},this.setDrawingBufferSize=function(t,n,i){R=t,C=n,P=i,e.width=Math.floor(t*i),e.height=Math.floor(n*i),this.setViewport(0,0,t,n)},this.getCurrentViewport=function(t){return void 0===t&amp;&amp;(console.warn("WebGLRenderer: .getCurrentViewport() now requires a Vector4 as an argument"),t=new St),t.copy(T)},this.getViewport=function(t){return t.copy(N)},this.setViewport=function(t,e,n,i){t.isVector4?N.set(t.x,t.y,t.z,t.w):N.set(t,e,n,i),q.viewport(T.copy(N).multiplyScalar(P).floor())},this.getScissor=function(t){return t.copy(B)},this.setScissor=function(t,e,n,i){t.isVector4?B.set(t.x,t.y,t.z,t.w):B.set(t,e,n,i),q.scissor(A.copy(B).multiplyScalar(P).floor())},this.getScissorTest=function(){return z},this.setScissorTest=function(t){q.setScissorTest(z=t)},this.setOpaqueSort=function(t){D=t},this.setTransparentSort=function(t){I=t},this.getClearColor=function(t){return void 0===t&amp;&amp;(console.warn("WebGLRenderer: .getClearColor() now requires a Color as an argument"),t=new tn),t.copy(ot.getClearColor())},this.setClearColor=function(){ot.setClearColor.apply(ot,arguments)},this.getClearAlpha=function(){return ot.getClearAlpha()},this.setClearAlpha=function(){ot.setClearAlpha.apply(ot,arguments)},this.clear=function(t,e,n){let i=0;(void 0===t||t)&amp;&amp;(i|=16384),(void 0===e||e)&amp;&amp;(i|=256),(void 0===n||n)&amp;&amp;(i|=1024),pt.clear(i)},this.clearColor=function(){this.clear(!0,!1,!1)},this.clearDepth=function(){this.clear(!1,!0,!1)},this.clearStencil=function(){this.clear(!1,!1,!0)},this.dispose=function(){e.removeEventListener("webglcontextlost",xt,!1),e.removeEventListener("webglcontextrestored",_t,!1),it.dispose(),rt.dispose(),Z.dispose(),Q.dispose(),tt.dispose(),dt.dispose(),yt.dispose(),yt.removeEventListener("sessionstart",Mt),yt.removeEventListener("sessionend",Tt),Et.stop()},this.renderBufferImmediate=function(t,e){dt.initAttributes();const n=Z.get(t);t.hasPositions&amp;&amp;!n.position&amp;&amp;(n.position=pt.createBuffer()),t.hasNormals&amp;&amp;!n.normal&amp;&amp;(n.normal=pt.createBuffer()),t.hasUvs&amp;&amp;!n.uv&amp;&amp;(n.uv=pt.createBuffer()),t.hasColors&amp;&amp;!n.color&amp;&amp;(n.color=pt.createBuffer());const i=e.getAttributes();t.hasPositions&amp;&amp;(pt.bindBuffer(34962,n.position),pt.bufferData(34962,t.positionArray,35048),dt.enableAttribute(i.position),pt.vertexAttribPointer(i.position,3,5126,!1,0,0)),t.hasNormals&amp;&amp;(pt.bindBuffer(34962,n.normal),pt.bufferData(34962,t.normalArray,35048),dt.enableAttribute(i.normal),pt.vertexAttribPointer(i.normal,3,5126,!1,0,0)),t.hasUvs&amp;&amp;(pt.bindBuffer(34962,n.uv),pt.bufferData(34962,t.uvArray,35048),dt.enableAttribute(i.uv),pt.vertexAttribPointer(i.uv,2,5126,!1,0,0)),t.hasColors&amp;&amp;(pt.bindBuffer(34962,n.color),pt.bufferData(34962,t.colorArray,35048),dt.enableAttribute(i.color),pt.vertexAttribPointer(i.color,3,5126,!1,0,0)),dt.disableUnusedAttributes(),pt.drawArrays(4,0,t.count),t.count=0},this.renderBufferDirect=function(t,e,n,i,r,s){null===e&amp;&amp;(e=k);const a=r.isMesh&amp;&amp;r.matrixWorld.determinant()&lt;0,o=It(t,e,i,r);q.setMaterial(i,a);let l=n.index;const c=n.attributes.position;if(null===l){if(void 0===c||0===c.count)return}else if(0===l.count)return;let h,u=1;!0===i.wireframe&amp;&amp;(l=$.getWireframeAttribute(n),u=2),(i.morphTargets||i.morphNormals)&amp;&amp;lt.update(r,n,i,o),dt.setup(r,i,o,n,l);let d=ct;null!==l&amp;&amp;(h=K.get(l),d=ht,d.setIndex(h));const p=null!==l?l.count:c.count,m=n.drawRange.start*u,f=n.drawRange.count*u,g=null!==s?s.start*u:0,v=null!==s?s.count*u:1/0,y=Math.max(m,g),x=Math.min(p,m+f,g+v)-1,_=Math.max(0,x-y+1);if(0!==_){if(r.isMesh)!0===i.wireframe?(q.setLineWidth(i.wireframeLinewidth*V()),d.setMode(1)):d.setMode(4);else if(r.isLine){let t=i.linewidth;void 0===t&amp;&amp;(t=1),q.setLineWidth(t*V()),r.isLineSegments?d.setMode(1):r.isLineLoop?d.setMode(2):d.setMode(3)}else r.isPoints?d.setMode(0):r.isSprite&amp;&amp;d.setMode(4);if(r.isInstancedMesh)d.renderInstances(y,_,r.count);else if(n.isInstancedBufferGeometry){const t=Math.min(n.instanceCount,n._maxInstanceCount);d.renderInstances(y,_,t)}else d.render(y,_)}},this.compile=function(t,e){d=rt.get(t),d.init(),t.traverseVisible((function(t){t.isLight&amp;&amp;t.layers.test(e.layers)&amp;&amp;(d.pushLight(t),t.castShadow&amp;&amp;d.pushShadow(t))})),d.setupLights(),t.traverse((function(e){const n=e.material;if(n)if(Array.isArray(n))for(let i=0;i&lt;n.length;i++){Pt(n[i],t,e)}else Pt(n,t,e)}))};let bt=null;function Mt(){Et.stop()}function Tt(){Et.start()}const Et=new oi;function At(t,e,n,i){if(!1===t.visible)return;if(t.layers.test(e.layers))if(t.isGroup)n=t.renderOrder;else if(t.isLOD)!0===t.autoUpdate&amp;&amp;t.update(e);else if(t.isLight)d.pushLight(t),t.castShadow&amp;&amp;d.pushShadow(t);else if(t.isSprite){if(!t.frustumCulled||F.intersectsSprite(t)){i&amp;&amp;U.setFromMatrixPosition(t.matrixWorld).applyMatrix4(G);const e=tt.update(t),r=t.material;r.visible&amp;&amp;u.push(t,e,r,n,U.z,null)}}else if(t.isImmediateRenderObject)i&amp;&amp;U.setFromMatrixPosition(t.matrixWorld).applyMatrix4(G),u.push(t,null,t.material,n,U.z,null);else if((t.isMesh||t.isLine||t.isPoints)&amp;&amp;(t.isSkinnedMesh&amp;&amp;t.skeleton.frame!==Y.render.frame&amp;&amp;(t.skeleton.update(),t.skeleton.frame=Y.render.frame),!t.frustumCulled||F.intersectsObject(t))){i&amp;&amp;U.setFromMatrixPosition(t.matrixWorld).applyMatrix4(G);const e=tt.update(t),r=t.material;if(Array.isArray(r)){const i=e.groups;for(let s=0,a=i.length;s&lt;a;s++){const a=i[s],o=r[a.materialIndex];o&amp;&amp;o.visible&amp;&amp;u.push(t,e,o,n,U.z,a)}}else r.visible&amp;&amp;u.push(t,e,r,n,U.z,null)}const r=t.children;for(let t=0,s=r.length;t&lt;s;t++)At(r[t],e,n,i)}function Rt(t,e,n){const i=!0===e.isScene?e.overrideMaterial:null;for(let r=0,s=t.length;r&lt;s;r++){const s=t[r],a=s.object,o=s.geometry,l=null===i?s.material:i,c=s.group;if(n.isArrayCamera){const t=n.cameras;for(let n=0,i=t.length;n&lt;i;n++){const i=t[n];a.layers.test(i.layers)&amp;&amp;(q.viewport(T.copy(i.viewport)),d.setupLightsView(i),Ct(a,e,i,o,l,c))}}else Ct(a,e,n,o,l,c)}}function Ct(t,e,n,i,r,s){if(t.onBeforeRender(f,e,n,i,r,s),t.modelViewMatrix.multiplyMatrices(n.matrixWorldInverse,t.matrixWorld),t.normalMatrix.getNormalMatrix(t.modelViewMatrix),t.isImmediateRenderObject){const i=It(n,e,r,t);q.setMaterial(r),dt.reset(),function(t,e){t.render((function(t){f.renderBufferImmediate(t,e)}))}(t,i)}else f.renderBufferDirect(n,e,i,r,t,s);t.onAfterRender(f,e,n,i,r,s)}function Pt(t,e,n){!0!==e.isScene&amp;&amp;(e=k);const i=Z.get(t),r=d.state.lights,s=d.state.shadowsArray,a=r.state.version,o=et.getParameters(t,r.state,s,e,n),l=et.getProgramCacheKey(o);let c=i.programs;i.environment=t.isMeshStandardMaterial?e.environment:null,i.fog=e.fog,i.envMap=Q.get(t.envMap||i.environment),void 0===c&amp;&amp;(t.addEventListener("dispose",wt),c=new Map,i.programs=c);let h=c.get(l);if(void 0!==h){if(i.currentProgram===h&amp;&amp;i.lightsStateVersion===a)return Dt(t,o),h}else o.uniforms=et.getUniforms(t),t.onBuild(o,f),t.onBeforeCompile(o,f),h=et.acquireProgram(o,l),c.set(l,h),i.uniforms=o.uniforms;const u=i.uniforms;(t.isShaderMaterial||t.isRawShaderMaterial)&amp;&amp;!0!==t.clipping||(u.clippingPlanes=st.uniform),Dt(t,o),i.needsLights=function(t){return t.isMeshLambertMaterial||t.isMeshToonMaterial||t.isMeshPhongMaterial||t.isMeshStandardMaterial||t.isShadowMaterial||t.isShaderMaterial&amp;&amp;!0===t.lights}(t),i.lightsStateVersion=a,i.needsLights&amp;&amp;(u.ambientLightColor.value=r.state.ambient,u.lightProbe.value=r.state.probe,u.directionalLights.value=r.state.directional,u.directionalLightShadows.value=r.state.directionalShadow,u.spotLights.value=r.state.spot,u.spotLightShadows.value=r.state.spotShadow,u.rectAreaLights.value=r.state.rectArea,u.ltc_1.value=r.state.rectAreaLTC1,u.ltc_2.value=r.state.rectAreaLTC2,u.pointLights.value=r.state.point,u.pointLightShadows.value=r.state.pointShadow,u.hemisphereLights.value=r.state.hemi,u.directionalShadowMap.value=r.state.directionalShadowMap,u.directionalShadowMatrix.value=r.state.directionalShadowMatrix,u.spotShadowMap.value=r.state.spotShadowMap,u.spotShadowMatrix.value=r.state.spotShadowMatrix,u.pointShadowMap.value=r.state.pointShadowMap,u.pointShadowMatrix.value=r.state.pointShadowMatrix);const p=h.getUniforms(),m=Cr.seqWithValue(p.seq,u);return i.currentProgram=h,i.uniformsList=m,h}function Dt(t,e){const n=Z.get(t);n.outputEncoding=e.outputEncoding,n.instancing=e.instancing,n.numClippingPlanes=e.numClippingPlanes,n.numIntersection=e.numClipIntersection,n.vertexAlphas=e.vertexAlphas}function It(t,e,n,i){!0!==e.isScene&amp;&amp;(e=k),J.resetTextureUnits();const r=e.fog,s=n.isMeshStandardMaterial?e.environment:null,a=null===_?f.outputEncoding:_.texture.encoding,o=Q.get(n.envMap||s),l=!0===n.vertexColors&amp;&amp;i.geometry&amp;&amp;i.geometry.attributes.color&amp;&amp;4===i.geometry.attributes.color.itemSize,c=Z.get(n),h=d.state.lights;if(!0===O&amp;&amp;(!0===H||t!==S)){const e=t===S&amp;&amp;n.id===w;st.setState(n,t,e)}let u=!1;n.version===c.__version?c.needsLights&amp;&amp;c.lightsStateVersion!==h.state.version||c.outputEncoding!==a||i.isInstancedMesh&amp;&amp;!1===c.instancing?u=!0:i.isInstancedMesh||!0!==c.instancing?c.envMap!==o||n.fog&amp;&amp;c.fog!==r?u=!0:void 0===c.numClippingPlanes||c.numClippingPlanes===st.numPlanes&amp;&amp;c.numIntersection===st.numIntersection?c.vertexAlphas!==l&amp;&amp;(u=!0):u=!0:u=!0:(u=!0,c.__version=n.version);let p=c.currentProgram;!0===u&amp;&amp;(p=Pt(n,e,i));let m=!1,g=!1,v=!1;const y=p.getUniforms(),x=c.uniforms;if(q.useProgram(p.program)&amp;&amp;(m=!0,g=!0,v=!0),n.id!==w&amp;&amp;(w=n.id,g=!0),m||S!==t){if(y.setValue(pt,"projectionMatrix",t.projectionMatrix),j.logarithmicDepthBuffer&amp;&amp;y.setValue(pt,"logDepthBufFC",2/(Math.log(t.far+1)/Math.LN2)),S!==t&amp;&amp;(S=t,g=!0,v=!0),n.isShaderMaterial||n.isMeshPhongMaterial||n.isMeshToonMaterial||n.isMeshStandardMaterial||n.envMap){const e=y.map.cameraPosition;void 0!==e&amp;&amp;e.setValue(pt,U.setFromMatrixPosition(t.matrixWorld))}(n.isMeshPhongMaterial||n.isMeshToonMaterial||n.isMeshLambertMaterial||n.isMeshBasicMaterial||n.isMeshStandardMaterial||n.isShaderMaterial)&amp;&amp;y.setValue(pt,"isOrthographic",!0===t.isOrthographicCamera),(n.isMeshPhongMaterial||n.isMeshToonMaterial||n.isMeshLambertMaterial||n.isMeshBasicMaterial||n.isMeshStandardMaterial||n.isShaderMaterial||n.isShadowMaterial||n.skinning)&amp;&amp;y.setValue(pt,"viewMatrix",t.matrixWorldInverse)}if(n.skinning){y.setOptional(pt,i,"bindMatrix"),y.setOptional(pt,i,"bindMatrixInverse");const t=i.skeleton;if(t){const e=t.bones;if(j.floatVertexTextures){if(null===t.boneTexture){let n=Math.sqrt(4*e.length);n=mt(n),n=Math.max(n,4);const i=new Float32Array(n*n*4);i.set(t.boneMatrices);const r=new ii(i,n,n,E,b);t.boneMatrices=i,t.boneTexture=r,t.boneTextureSize=n}y.setValue(pt,"boneTexture",t.boneTexture,J),y.setValue(pt,"boneTextureSize",t.boneTextureSize)}else y.setOptional(pt,t,"boneMatrices")}}var M,T;return(g||c.receiveShadow!==i.receiveShadow)&amp;&amp;(c.receiveShadow=i.receiveShadow,y.setValue(pt,"receiveShadow",i.receiveShadow)),g&amp;&amp;(y.setValue(pt,"toneMappingExposure",f.toneMappingExposure),c.needsLights&amp;&amp;(T=v,(M=x).ambientLightColor.needsUpdate=T,M.lightProbe.needsUpdate=T,M.directionalLights.needsUpdate=T,M.directionalLightShadows.needsUpdate=T,M.pointLights.needsUpdate=T,M.pointLightShadows.needsUpdate=T,M.spotLights.needsUpdate=T,M.spotLightShadows.needsUpdate=T,M.rectAreaLights.needsUpdate=T,M.hemisphereLights.needsUpdate=T),r&amp;&amp;n.fog&amp;&amp;nt.refreshFogUniforms(x,r),nt.refreshMaterialUniforms(x,n,P,C),Cr.upload(pt,c.uniformsList,x,J)),n.isShaderMaterial&amp;&amp;!0===n.uniformsNeedUpdate&amp;&amp;(Cr.upload(pt,c.uniformsList,x,J),n.uniformsNeedUpdate=!1),n.isSpriteMaterial&amp;&amp;y.setValue(pt,"center",i.center),y.setValue(pt,"modelViewMatrix",i.modelViewMatrix),y.setValue(pt,"normalMatrix",i.normalMatrix),y.setValue(pt,"modelMatrix",i.matrixWorld),p}Et.setAnimationLoop((function(t){bt&amp;&amp;bt(t)})),"undefined"!=typeof window&amp;&amp;Et.setContext(window),this.setAnimationLoop=function(t){bt=t,yt.setAnimationLoop(t),null===t?Et.stop():Et.start()},yt.addEventListener("sessionstart",Mt),yt.addEventListener("sessionend",Tt),this.render=function(t,e){let n,i;if(void 0!==arguments[2]&amp;&amp;(console.warn("THREE.WebGLRenderer.render(): the renderTarget argument has been removed. Use .setRenderTarget() instead."),n=arguments[2]),void 0!==arguments[3]&amp;&amp;(console.warn("THREE.WebGLRenderer.render(): the forceClear argument has been removed. Use .clear() instead."),i=arguments[3]),void 0!==e&amp;&amp;!0!==e.isCamera)return void console.error("THREE.WebGLRenderer.render: camera is not an instance of THREE.Camera.");if(!0===g)return;!0===t.autoUpdate&amp;&amp;t.updateMatrixWorld(),null===e.parent&amp;&amp;e.updateMatrixWorld(),!0===yt.enabled&amp;&amp;!0===yt.isPresenting&amp;&amp;(e=yt.getCamera(e)),!0===t.isScene&amp;&amp;t.onBeforeRender(f,t,e,n||_),d=rt.get(t,m.length),d.init(),m.push(d),G.multiplyMatrices(e.projectionMatrix,e.matrixWorldInverse),F.setFromProjectionMatrix(G),H=this.localClippingEnabled,O=st.init(this.clippingPlanes,H,e),u=it.get(t,p.length),u.init(),p.push(u),At(t,e,0,f.sortObjects),u.finish(),!0===f.sortObjects&amp;&amp;u.sort(D,I),!0===O&amp;&amp;st.beginShadows();const r=d.state.shadowsArray;at.render(r,t,e),d.setupLights(),d.setupLightsView(e),!0===O&amp;&amp;st.endShadows(),!0===this.info.autoReset&amp;&amp;this.info.reset(),void 0!==n&amp;&amp;this.setRenderTarget(n),ot.render(u,t,e,i);const s=u.opaque,a=u.transparent;s.length&gt;0&amp;&amp;Rt(s,t,e),a.length&gt;0&amp;&amp;Rt(a,t,e),null!==_&amp;&amp;(J.updateRenderTargetMipmap(_),J.updateMultisampleRenderTarget(_)),!0===t.isScene&amp;&amp;t.onAfterRender(f,t,e),q.buffers.depth.setTest(!0),q.buffers.depth.setMask(!0),q.buffers.color.setMask(!0),q.setPolygonOffset(!1),dt.resetDefaultState(),w=-1,S=null,m.pop(),d=m.length&gt;0?m[m.length-1]:null,p.pop(),u=p.length&gt;0?p[p.length-1]:null},this.getActiveCubeFace=function(){return v},this.getActiveMipmapLevel=function(){return y},this.getRenderTarget=function(){return _},this.setRenderTarget=function(t,e=0,n=0){_=t,v=e,y=n,t&amp;&amp;void 0===Z.get(t).__webglFramebuffer&amp;&amp;J.setupRenderTarget(t);let i=null,r=!1,s=!1;if(t){const n=t.texture;(n.isDataTexture3D||n.isDataTexture2DArray)&amp;&amp;(s=!0);const a=Z.get(t).__webglFramebuffer;t.isWebGLCubeRenderTarget?(i=a[e],r=!0):i=t.isWebGLMultisampleRenderTarget?Z.get(t).__webglMultisampledFramebuffer:a,T.copy(t.viewport),A.copy(t.scissor),L=t.scissorTest}else T.copy(N).multiplyScalar(P).floor(),A.copy(B).multiplyScalar(P).floor(),L=z;if(q.bindFramebuffer(36160,i),q.viewport(T),q.scissor(A),q.setScissorTest(L),r){const i=Z.get(t.texture);pt.framebufferTexture2D(36160,36064,34069+e,i.__webglTexture,n)}else if(s){const i=Z.get(t.texture),r=e||0;pt.framebufferTextureLayer(36160,36064,i.__webglTexture,n||0,r)}},this.readRenderTargetPixels=function(t,e,n,i,r,s,a){if(!t||!t.isWebGLRenderTarget)return void console.error("THREE.WebGLRenderer.readRenderTargetPixels: renderTarget is not THREE.WebGLRenderTarget.");let o=Z.get(t).__webglFramebuffer;if(t.isWebGLCubeRenderTarget&amp;&amp;void 0!==a&amp;&amp;(o=o[a]),o){q.bindFramebuffer(36160,o);try{const a=t.texture,o=a.format,l=a.type;if(o!==E&amp;&amp;ut.convert(o)!==pt.getParameter(35739))return void console.error("THREE.WebGLRenderer.readRenderTargetPixels: renderTarget is not in RGBA or implementation defined format.");const c=l===M&amp;&amp;(W.has("EXT_color_buffer_half_float")||j.isWebGL2&amp;&amp;W.has("EXT_color_buffer_float"));if(!(l===x||ut.convert(l)===pt.getParameter(35738)||l===b&amp;&amp;(j.isWebGL2||W.has("OES_texture_float")||W.has("WEBGL_color_buffer_float"))||c))return void console.error("THREE.WebGLRenderer.readRenderTargetPixels: renderTarget is not in UnsignedByteType or implementation defined type.");36053===pt.checkFramebufferStatus(36160)?e&gt;=0&amp;&amp;e&lt;=t.width-i&amp;&amp;n&gt;=0&amp;&amp;n&lt;=t.height-r&amp;&amp;pt.readPixels(e,n,i,r,ut.convert(o),ut.convert(l),s):console.error("THREE.WebGLRenderer.readRenderTargetPixels: readPixels from renderTarget failed. Framebuffer not complete.")}finally{const t=null!==_?Z.get(_).__webglFramebuffer:null;q.bindFramebuffer(36160,t)}}},this.copyFramebufferToTexture=function(t,e,n=0){const i=Math.pow(2,-n),r=Math.floor(e.image.width*i),s=Math.floor(e.image.height*i),a=ut.convert(e.format);J.setTexture2D(e,0),pt.copyTexImage2D(3553,n,a,t.x,t.y,r,s,0),q.unbindTexture()},this.copyTextureToTexture=function(t,e,n,i=0){const r=e.image.width,s=e.image.height,a=ut.convert(n.format),o=ut.convert(n.type);J.setTexture2D(n,0),pt.pixelStorei(37440,n.flipY),pt.pixelStorei(37441,n.premultiplyAlpha),pt.pixelStorei(3317,n.unpackAlignment),e.isDataTexture?pt.texSubImage2D(3553,i,t.x,t.y,r,s,a,o,e.image.data):e.isCompressedTexture?pt.compressedTexSubImage2D(3553,i,t.x,t.y,e.mipmaps[0].width,e.mipmaps[0].height,a,e.mipmaps[0].data):pt.texSubImage2D(3553,i,t.x,t.y,a,o,e.image),0===i&amp;&amp;n.generateMipmaps&amp;&amp;pt.generateMipmap(3553),q.unbindTexture()},this.copyTextureToTexture3D=function(t,e,n,i,r=0){if(f.isWebGL1Renderer)return void console.warn("THREE.WebGLRenderer.copyTextureToTexture3D: can only be used with WebGL2.");const{width:s,height:a,data:o}=n.image,l=ut.convert(i.format),c=ut.convert(i.type);let h;if(i.isDataTexture3D)J.setTexture3D(i,0),h=32879;else{if(!i.isDataTexture2DArray)return void console.warn("THREE.WebGLRenderer.copyTextureToTexture3D: only supports THREE.DataTexture3D and THREE.DataTexture2DArray.");J.setTexture2DArray(i,0),h=35866}pt.pixelStorei(37440,i.flipY),pt.pixelStorei(37441,i.premultiplyAlpha),pt.pixelStorei(3317,i.unpackAlignment);const u=pt.getParameter(3314),d=pt.getParameter(32878),p=pt.getParameter(3316),m=pt.getParameter(3315),g=pt.getParameter(32877);pt.pixelStorei(3314,s),pt.pixelStorei(32878,a),pt.pixelStorei(3316,t.min.x),pt.pixelStorei(3315,t.min.y),pt.pixelStorei(32877,t.min.z),pt.texSubImage3D(h,r,e.x,e.y,e.z,t.max.x-t.min.x+1,t.max.y-t.min.y+1,t.max.z-t.min.z+1,l,c,o),pt.pixelStorei(3314,u),pt.pixelStorei(32878,d),pt.pixelStorei(3316,p),pt.pixelStorei(3315,m),pt.pixelStorei(32877,g),0===r&amp;&amp;i.generateMipmaps&amp;&amp;pt.generateMipmap(h),q.unbindTexture()},this.initTexture=function(t){J.setTexture2D(t,0),q.unbindTexture()},this.resetState=function(){v=0,y=0,_=null,q.reset(),dt.reset()},"undefined"!=typeof __THREE_DEVTOOLS__&amp;&amp;__THREE_DEVTOOLS__.dispatchEvent(new CustomEvent("observe",{detail:this}))}class bs extends ws{}bs.prototype.isWebGL1Renderer=!0;class Ms{constructor(t,e=25e-5){this.name="",this.color=new tn(t),this.density=e}clone(){return new Ms(this.color,this.density)}toJSON(){return{type:"FogExp2",color:this.color.getHex(),density:this.density}}}Ms.prototype.isFogExp2=!0;class Ss{constructor(t,e=1,n=1e3){this.name="",this.color=new tn(t),this.near=e,this.far=n}clone(){return new Ss(this.color,this.near,this.far)}toJSON(){return{type:"Fog",color:this.color.getHex(),near:this.near,far:this.far}}}Ss.prototype.isFog=!0;class Ts extends Ce{constructor(){super(),this.type="Scene",this.background=null,this.environment=null,this.fog=null,this.overrideMaterial=null,this.autoUpdate=!0,"undefined"!=typeof __THREE_DEVTOOLS__&amp;&amp;__THREE_DEVTOOLS__.dispatchEvent(new CustomEvent("observe",{detail:this}))}copy(t,e){return super.copy(t,e),null!==t.background&amp;&amp;(this.background=t.background.clone()),null!==t.environment&amp;&amp;(this.environment=t.environment.clone()),null!==t.fog&amp;&amp;(this.fog=t.fog.clone()),null!==t.overrideMaterial&amp;&amp;(this.overrideMaterial=t.overrideMaterial.clone()),this.autoUpdate=t.autoUpdate,this.matrixAutoUpdate=t.matrixAutoUpdate,this}toJSON(t){const e=super.toJSON(t);return null!==this.background&amp;&amp;(e.object.background=this.background.toJSON(t)),null!==this.environment&amp;&amp;(e.object.environment=this.environment.toJSON(t)),null!==this.fog&amp;&amp;(e.object.fog=this.fog.toJSON()),e}}Ts.prototype.isScene=!0;class Es{constructor(t,e){this.array=t,this.stride=e,this.count=void 0!==t?t.length/e:0,this.usage=et,this.updateRange={offset:0,count:-1},this.version=0,this.uuid=ct(),this.onUploadCallback=function(){}}set needsUpdate(t){!0===t&amp;&amp;this.version++}setUsage(t){return this.usage=t,this}copy(t){return this.array=new t.array.constructor(t.array),this.count=t.count,this.stride=t.stride,this.usage=t.usage,this}copyAt(t,e,n){t*=this.stride,n*=e.stride;for(let i=0,r=this.stride;i&lt;r;i++)this.array[t+i]=e.array[n+i];return this}set(t,e=0){return this.array.set(t,e),this}clone(t){void 0===t.arrayBuffers&amp;&amp;(t.arrayBuffers={}),void 0===this.array.buffer._uuid&amp;&amp;(this.array.buffer._uuid=ct()),void 0===t.arrayBuffers[this.array.buffer._uuid]&amp;&amp;(t.arrayBuffers[this.array.buffer._uuid]=this.array.slice(0).buffer);const e=new this.array.constructor(t.arrayBuffers[this.array.buffer._uuid]),n=new Es(e,this.stride);return n.setUsage(this.usage),n}onUpload(t){return this.onUploadCallback=t,this}toJSON(t){return void 0===t.arrayBuffers&amp;&amp;(t.arrayBuffers={}),void 0===this.array.buffer._uuid&amp;&amp;(this.array.buffer._uuid=ct()),void 0===t.arrayBuffers[this.array.buffer._uuid]&amp;&amp;(t.arrayBuffers[this.array.buffer._uuid]=Array.prototype.slice.call(new Uint32Array(this.array.buffer))),{uuid:this.uuid,buffer:this.array.buffer._uuid,type:this.array.constructor.name,stride:this.stride}}}Es.prototype.isInterleavedBuffer=!0;const As=new Lt;class Ls{constructor(t,e,n,i){this.name="",this.data=t,this.itemSize=e,this.offset=n,this.normalized=!0===i}get count(){return this.data.count}get array(){return this.data.array}set needsUpdate(t){this.data.needsUpdate=t}applyMatrix4(t){for(let e=0,n=this.data.count;e&lt;n;e++)As.x=this.getX(e),As.y=this.getY(e),As.z=this.getZ(e),As.applyMatrix4(t),this.setXYZ(e,As.x,As.y,As.z);return this}applyNormalMatrix(t){for(let e=0,n=this.count;e&lt;n;e++)As.x=this.getX(e),As.y=this.getY(e),As.z=this.getZ(e),As.applyNormalMatrix(t),this.setXYZ(e,As.x,As.y,As.z);return this}transformDirection(t){for(let e=0,n=this.count;e&lt;n;e++)As.x=this.getX(e),As.y=this.getY(e),As.z=this.getZ(e),As.transformDirection(t),this.setXYZ(e,As.x,As.y,As.z);return this}setX(t,e){return this.data.array[t*this.data.stride+this.offset]=e,this}setY(t,e){return this.data.array[t*this.data.stride+this.offset+1]=e,this}setZ(t,e){return this.data.array[t*this.data.stride+this.offset+2]=e,this}setW(t,e){return this.data.array[t*this.data.stride+this.offset+3]=e,this}getX(t){return this.data.array[t*this.data.stride+this.offset]}getY(t){return this.data.array[t*this.data.stride+this.offset+1]}getZ(t){return this.data.array[t*this.data.stride+this.offset+2]}getW(t){return this.data.array[t*this.data.stride+this.offset+3]}setXY(t,e,n){return t=t*this.data.stride+this.offset,this.data.array[t+0]=e,this.data.array[t+1]=n,this}setXYZ(t,e,n,i){return t=t*this.data.stride+this.offset,this.data.array[t+0]=e,this.data.array[t+1]=n,this.data.array[t+2]=i,this}setXYZW(t,e,n,i,r){return t=t*this.data.stride+this.offset,this.data.array[t+0]=e,this.data.array[t+1]=n,this.data.array[t+2]=i,this.data.array[t+3]=r,this}clone(t){if(void 0===t){console.log("THREE.InterleavedBufferAttribute.clone(): Cloning an interlaved buffer attribute will deinterleave buffer data.");const t=[];for(let e=0;e&lt;this.count;e++){const n=e*this.data.stride+this.offset;for(let e=0;e&lt;this.itemSize;e++)t.push(this.data.array[n+e])}return new sn(new this.array.constructor(t),this.itemSize,this.normalized)}return void 0===t.interleavedBuffers&amp;&amp;(t.interleavedBuffers={}),void 0===t.interleavedBuffers[this.data.uuid]&amp;&amp;(t.interleavedBuffers[this.data.uuid]=this.data.clone(t)),new Ls(t.interleavedBuffers[this.data.uuid],this.itemSize,this.offset,this.normalized)}toJSON(t){if(void 0===t){console.log("THREE.InterleavedBufferAttribute.toJSON(): Serializing an interlaved buffer attribute will deinterleave buffer data.");const t=[];for(let e=0;e&lt;this.count;e++){const n=e*this.data.stride+this.offset;for(let e=0;e&lt;this.itemSize;e++)t.push(this.data.array[n+e])}return{itemSize:this.itemSize,type:this.array.constructor.name,array:t,normalized:this.normalized}}return void 0===t.interleavedBuffers&amp;&amp;(t.interleavedBuffers={}),void 0===t.interleavedBuffers[this.data.uuid]&amp;&amp;(t.interleavedBuffers[this.data.uuid]=this.data.toJSON(t)),{isInterleavedBufferAttribute:!0,itemSize:this.itemSize,data:this.data.uuid,offset:this.offset,normalized:this.normalized}}}Ls.prototype.isInterleavedBufferAttribute=!0;class Rs extends Xe{constructor(t){super(),this.type="SpriteMaterial",this.color=new tn(16777215),this.map=null,this.alphaMap=null,this.rotation=0,this.sizeAttenuation=!0,this.transparent=!0,this.setValues(t)}copy(t){return super.copy(t),this.color.copy(t.color),this.map=t.map,this.alphaMap=t.alphaMap,this.rotation=t.rotation,this.sizeAttenuation=t.sizeAttenuation,this}}let Cs;Rs.prototype.isSpriteMaterial=!0;const Ps=new Lt,Ds=new Lt,Is=new Lt,Ns=new vt,Bs=new vt,zs=new se,Fs=new Lt,Os=new Lt,Hs=new Lt,Gs=new vt,Us=new vt,ks=new vt;class Vs extends Ce{constructor(t){if(super(),this.type="Sprite",void 0===Cs){Cs=new En;const t=new Float32Array([-.5,-.5,0,0,0,.5,-.5,0,1,0,.5,.5,0,1,1,-.5,.5,0,0,1]),e=new Es(t,5);Cs.setIndex([0,1,2,0,2,3]),Cs.setAttribute("position",new Ls(e,3,0,!1)),Cs.setAttribute("uv",new Ls(e,2,3,!1))}this.geometry=Cs,this.material=void 0!==t?t:new Rs,this.center=new vt(.5,.5)}raycast(t,e){null===t.camera&amp;&amp;console.error('THREE.Sprite: "Raycaster.camera" needs to be set in order to raycast against sprites.'),Ds.setFromMatrixScale(this.matrixWorld),zs.copy(t.camera.matrixWorld),this.modelViewMatrix.multiplyMatrices(t.camera.matrixWorldInverse,this.matrixWorld),Is.setFromMatrixPosition(this.modelViewMatrix),t.camera.isPerspectiveCamera&amp;&amp;!1===this.material.sizeAttenuation&amp;&amp;Ds.multiplyScalar(-Is.z);const n=this.material.rotation;let i,r;0!==n&amp;&amp;(r=Math.cos(n),i=Math.sin(n));const s=this.center;Ws(Fs.set(-.5,-.5,0),Is,s,Ds,i,r),Ws(Os.set(.5,-.5,0),Is,s,Ds,i,r),Ws(Hs.set(.5,.5,0),Is,s,Ds,i,r),Gs.set(0,0),Us.set(1,0),ks.set(1,1);let a=t.ray.intersectTriangle(Fs,Os,Hs,!1,Ps);if(null===a&amp;&amp;(Ws(Os.set(-.5,.5,0),Is,s,Ds,i,r),Us.set(0,1),a=t.ray.intersectTriangle(Fs,Hs,Os,!1,Ps),null===a))return;const o=t.ray.origin.distanceTo(Ps);o&lt;t.near||o&gt;t.far||e.push({distance:o,point:Ps.clone(),uv:je.getUV(Ps,Fs,Os,Hs,Gs,Us,ks,new vt),face:null,object:this})}copy(t){return super.copy(t),void 0!==t.center&amp;&amp;this.center.copy(t.center),this.material=t.material,this}}function Ws(t,e,n,i,r,s){Ns.subVectors(t,n).addScalar(.5).multiply(i),void 0!==r?(Bs.x=s*Ns.x-r*Ns.y,Bs.y=r*Ns.x+s*Ns.y):Bs.copy(Ns),t.copy(e),t.x+=Bs.x,t.y+=Bs.y,t.applyMatrix4(zs)}Vs.prototype.isSprite=!0;const js=new Lt,qs=new Lt;class Xs extends Ce{constructor(){super(),this._currentLevel=0,this.type="LOD",Object.defineProperties(this,{levels:{enumerable:!0,value:[]},isLOD:{value:!0}}),this.autoUpdate=!0}copy(t){super.copy(t,!1);const e=t.levels;for(let t=0,n=e.length;t&lt;n;t++){const n=e[t];this.addLevel(n.object.clone(),n.distance)}return this.autoUpdate=t.autoUpdate,this}addLevel(t,e=0){e=Math.abs(e);const n=this.levels;let i;for(i=0;i&lt;n.length&amp;&amp;!(e&lt;n[i].distance);i++);return n.splice(i,0,{distance:e,object:t}),this.add(t),this}getCurrentLevel(){return this._currentLevel}getObjectForDistance(t){const e=this.levels;if(e.length&gt;0){let n,i;for(n=1,i=e.length;n&lt;i&amp;&amp;!(t&lt;e[n].distance);n++);return e[n-1].object}return null}raycast(t,e){if(this.levels.length&gt;0){js.setFromMatrixPosition(this.matrixWorld);const n=t.ray.origin.distanceTo(js);this.getObjectForDistance(n).raycast(t,e)}}update(t){const e=this.levels;if(e.length&gt;1){js.setFromMatrixPosition(t.matrixWorld),qs.setFromMatrixPosition(this.matrixWorld);const n=js.distanceTo(qs)/t.zoom;let i,r;for(e[0].object.visible=!0,i=1,r=e.length;i&lt;r&amp;&amp;n&gt;=e[i].distance;i++)e[i-1].object.visible=!1,e[i].object.visible=!0;for(this._currentLevel=i-1;i&lt;r;i++)e[i].object.visible=!1}}toJSON(t){const e=super.toJSON(t);!1===this.autoUpdate&amp;&amp;(e.object.autoUpdate=!1),e.object.levels=[];const n=this.levels;for(let t=0,i=n.length;t&lt;i;t++){const i=n[t];e.object.levels.push({object:i.object.uuid,distance:i.distance})}return e}}const Ys=new Lt,Zs=new St,Js=new St,Qs=new Lt,Ks=new se;class $s extends Wn{constructor(t,e){super(t,e),this.type="SkinnedMesh",this.bindMode="attached",this.bindMatrix=new se,this.bindMatrixInverse=new se}copy(t){return super.copy(t),this.bindMode=t.bindMode,this.bindMatrix.copy(t.bindMatrix),this.bindMatrixInverse.copy(t.bindMatrixInverse),this.skeleton=t.skeleton,this}bind(t,e){this.skeleton=t,void 0===e&amp;&amp;(this.updateMatrixWorld(!0),this.skeleton.calculateInverses(),e=this.matrixWorld),this.bindMatrix.copy(e),this.bindMatrixInverse.copy(e).invert()}pose(){this.skeleton.pose()}normalizeSkinWeights(){const t=new St,e=this.geometry.attributes.skinWeight;for(let n=0,i=e.count;n&lt;i;n++){t.x=e.getX(n),t.y=e.getY(n),t.z=e.getZ(n),t.w=e.getW(n);const i=1/t.manhattanLength();i!==1/0?t.multiplyScalar(i):t.set(1,0,0,0),e.setXYZW(n,t.x,t.y,t.z,t.w)}}updateMatrixWorld(t){super.updateMatrixWorld(t),"attached"===this.bindMode?this.bindMatrixInverse.copy(this.matrixWorld).invert():"detached"===this.bindMode?this.bindMatrixInverse.copy(this.bindMatrix).invert():console.warn("THREE.SkinnedMesh: Unrecognized bindMode: "+this.bindMode)}boneTransform(t,e){const n=this.skeleton,i=this.geometry;Zs.fromBufferAttribute(i.attributes.skinIndex,t),Js.fromBufferAttribute(i.attributes.skinWeight,t),Ys.fromBufferAttribute(i.attributes.position,t).applyMatrix4(this.bindMatrix),e.set(0,0,0);for(let t=0;t&lt;4;t++){const i=Js.getComponent(t);if(0!==i){const r=Zs.getComponent(t);Ks.multiplyMatrices(n.bones[r].matrixWorld,n.boneInverses[r]),e.addScaledVector(Qs.copy(Ys).applyMatrix4(Ks),i)}}return e.applyMatrix4(this.bindMatrixInverse)}}$s.prototype.isSkinnedMesh=!0;class ta extends Ce{constructor(){super(),this.type="Bone"}}ta.prototype.isBone=!0;const ea=new se,na=new se;class ia{constructor(t=[],e=[]){this.uuid=ct(),this.bones=t.slice(0),this.boneInverses=e,this.boneMatrices=null,this.boneTexture=null,this.boneTextureSize=0,this.frame=-1,this.init()}init(){const t=this.bones,e=this.boneInverses;if(this.boneMatrices=new Float32Array(16*t.length),0===e.length)this.calculateInverses();else if(t.length!==e.length){console.warn("THREE.Skeleton: Number of inverse bone matrices does not match amount of bones."),this.boneInverses=[];for(let t=0,e=this.bones.length;t&lt;e;t++)this.boneInverses.push(new se)}}calculateInverses(){this.boneInverses.length=0;for(let t=0,e=this.bones.length;t&lt;e;t++){const e=new se;this.bones[t]&amp;&amp;e.copy(this.bones[t].matrixWorld).invert(),this.boneInverses.push(e)}}pose(){for(let t=0,e=this.bones.length;t&lt;e;t++){const e=this.bones[t];e&amp;&amp;e.matrixWorld.copy(this.boneInverses[t]).invert()}for(let t=0,e=this.bones.length;t&lt;e;t++){const e=this.bones[t];e&amp;&amp;(e.parent&amp;&amp;e.parent.isBone?(e.matrix.copy(e.parent.matrixWorld).invert(),e.matrix.multiply(e.matrixWorld)):e.matrix.copy(e.matrixWorld),e.matrix.decompose(e.position,e.quaternion,e.scale))}}update(){const t=this.bones,e=this.boneInverses,n=this.boneMatrices,i=this.boneTexture;for(let i=0,r=t.length;i&lt;r;i++){const r=t[i]?t[i].matrixWorld:na;ea.multiplyMatrices(r,e[i]),ea.toArray(n,16*i)}null!==i&amp;&amp;(i.needsUpdate=!0)}clone(){return new ia(this.bones,this.boneInverses)}getBoneByName(t){for(let e=0,n=this.bones.length;e&lt;n;e++){const n=this.bones[e];if(n.name===t)return n}}dispose(){null!==this.boneTexture&amp;&amp;(this.boneTexture.dispose(),this.boneTexture=null)}fromJSON(t,e){this.uuid=t.uuid;for(let n=0,i=t.bones.length;n&lt;i;n++){const i=t.bones[n];let r=e[i];void 0===r&amp;&amp;(console.warn("THREE.Skeleton: No bone found with UUID:",i),r=new ta),this.bones.push(r),this.boneInverses.push((new se).fromArray(t.boneInverses[n]))}return this.init(),this}toJSON(){const t={metadata:{version:4.5,type:"Skeleton",generator:"Skeleton.toJSON"},bones:[],boneInverses:[]};t.uuid=this.uuid;const e=this.bones,n=this.boneInverses;for(let i=0,r=e.length;i&lt;r;i++){const r=e[i];t.bones.push(r.uuid);const s=n[i];t.boneInverses.push(s.toArray())}return t}}const ra=new se,sa=new se,aa=[],oa=new Wn;class la extends Wn{constructor(t,e,n){super(t,e),this.instanceMatrix=new sn(new Float32Array(16*n),16),this.instanceColor=null,this.count=n,this.frustumCulled=!1}copy(t){return super.copy(t),this.instanceMatrix.copy(t.instanceMatrix),null!==t.instanceColor&amp;&amp;(this.instanceColor=t.instanceColor.clone()),this.count=t.count,this}getColorAt(t,e){e.fromArray(this.instanceColor.array,3*t)}getMatrixAt(t,e){e.fromArray(this.instanceMatrix.array,16*t)}raycast(t,e){const n=this.matrixWorld,i=this.count;if(oa.geometry=this.geometry,oa.material=this.material,void 0!==oa.material)for(let r=0;r&lt;i;r++){this.getMatrixAt(r,ra),sa.multiplyMatrices(n,ra),oa.matrixWorld=sa,oa.raycast(t,aa);for(let t=0,n=aa.length;t&lt;n;t++){const n=aa[t];n.instanceId=r,n.object=this,e.push(n)}aa.length=0}}setColorAt(t,e){null===this.instanceColor&amp;&amp;(this.instanceColor=new sn(new Float32Array(3*this.count),3)),e.toArray(this.instanceColor.array,3*t)}setMatrixAt(t,e){e.toArray(this.instanceMatrix.array,16*t)}updateMorphTargets(){}dispose(){this.dispatchEvent({type:"dispose"})}}la.prototype.isInstancedMesh=!0;class ca extends Xe{constructor(t){super(),this.type="LineBasicMaterial",this.color=new tn(16777215),this.linewidth=1,this.linecap="round",this.linejoin="round",this.morphTargets=!1,this.setValues(t)}copy(t){return super.copy(t),this.color.copy(t.color),this.linewidth=t.linewidth,this.linecap=t.linecap,this.linejoin=t.linejoin,this.morphTargets=t.morphTargets,this}}ca.prototype.isLineBasicMaterial=!0;const ha=new Lt,ua=new Lt,da=new se,pa=new re,ma=new Jt;class fa extends Ce{constructor(t=new En,e=new ca){super(),this.type="Line",this.geometry=t,this.material=e,this.updateMorphTargets()}copy(t){return super.copy(t),this.material=t.material,this.geometry=t.geometry,this}computeLineDistances(){const t=this.geometry;if(t.isBufferGeometry)if(null===t.index){const e=t.attributes.position,n=[0];for(let t=1,i=e.count;t&lt;i;t++)ha.fromBufferAttribute(e,t-1),ua.fromBufferAttribute(e,t),n[t]=n[t-1],n[t]+=ha.distanceTo(ua);t.setAttribute("lineDistance",new mn(n,1))}else console.warn("THREE.Line.computeLineDistances(): Computation only possible with non-indexed BufferGeometry.");else t.isGeometry&amp;&amp;console.error("THREE.Line.computeLineDistances() no longer supports THREE.Geometry. Use THREE.BufferGeometry instead.");return this}raycast(t,e){const n=this.geometry,i=this.matrixWorld,r=t.params.Line.threshold,s=n.drawRange;if(null===n.boundingSphere&amp;&amp;n.computeBoundingSphere(),ma.copy(n.boundingSphere),ma.applyMatrix4(i),ma.radius+=r,!1===t.ray.intersectsSphere(ma))return;da.copy(i).invert(),pa.copy(t.ray).applyMatrix4(da);const a=r/((this.scale.x+this.scale.y+this.scale.z)/3),o=a*a,l=new Lt,c=new Lt,h=new Lt,u=new Lt,d=this.isLineSegments?2:1;if(n.isBufferGeometry){const i=n.index,r=n.attributes.position;if(null!==i){for(let n=Math.max(0,s.start),a=Math.min(i.count,s.start+s.count)-1;n&lt;a;n+=d){const s=i.getX(n),a=i.getX(n+1);l.fromBufferAttribute(r,s),c.fromBufferAttribute(r,a);if(pa.distanceSqToSegment(l,c,u,h)&gt;o)continue;u.applyMatrix4(this.matrixWorld);const d=t.ray.origin.distanceTo(u);d&lt;t.near||d&gt;t.far||e.push({distance:d,point:h.clone().applyMatrix4(this.matrixWorld),index:n,face:null,faceIndex:null,object:this})}}else{for(let n=Math.max(0,s.start),i=Math.min(r.count,s.start+s.count)-1;n&lt;i;n+=d){l.fromBufferAttribute(r,n),c.fromBufferAttribute(r,n+1);if(pa.distanceSqToSegment(l,c,u,h)&gt;o)continue;u.applyMatrix4(this.matrixWorld);const i=t.ray.origin.distanceTo(u);i&lt;t.near||i&gt;t.far||e.push({distance:i,point:h.clone().applyMatrix4(this.matrixWorld),index:n,face:null,faceIndex:null,object:this})}}}else n.isGeometry&amp;&amp;console.error("THREE.Line.raycast() no longer supports THREE.Geometry. Use THREE.BufferGeometry instead.")}updateMorphTargets(){const t=this.geometry;if(t.isBufferGeometry){const e=t.morphAttributes,n=Object.keys(e);if(n.length&gt;0){const t=e[n[0]];if(void 0!==t){this.morphTargetInfluences=[],this.morphTargetDictionary={};for(let e=0,n=t.length;e&lt;n;e++){const n=t[e].name||String(e);this.morphTargetInfluences.push(0),this.morphTargetDictionary[n]=e}}}}else{const e=t.morphTargets;void 0!==e&amp;&amp;e.length&gt;0&amp;&amp;console.error("THREE.Line.updateMorphTargets() does not support THREE.Geometry. Use THREE.BufferGeometry instead.")}}}fa.prototype.isLine=!0;const ga=new Lt,va=new Lt;class ya extends fa{constructor(t,e){super(t,e),this.type="LineSegments"}computeLineDistances(){const t=this.geometry;if(t.isBufferGeometry)if(null===t.index){const e=t.attributes.position,n=[];for(let t=0,i=e.count;t&lt;i;t+=2)ga.fromBufferAttribute(e,t),va.fromBufferAttribute(e,t+1),n[t]=0===t?0:n[t-1],n[t+1]=n[t]+ga.distanceTo(va);t.setAttribute("lineDistance",new mn(n,1))}else console.warn("THREE.LineSegments.computeLineDistances(): Computation only possible with non-indexed BufferGeometry.");else t.isGeometry&amp;&amp;console.error("THREE.LineSegments.computeLineDistances() no longer supports THREE.Geometry. Use THREE.BufferGeometry instead.");return this}}ya.prototype.isLineSegments=!0;class xa extends fa{constructor(t,e){super(t,e),this.type="LineLoop"}}xa.prototype.isLineLoop=!0;class _a extends Xe{constructor(t){super(),this.type="PointsMaterial",this.color=new tn(16777215),this.map=null,this.alphaMap=null,this.size=1,this.sizeAttenuation=!0,this.morphTargets=!1,this.setValues(t)}copy(t){return super.copy(t),this.color.copy(t.color),this.map=t.map,this.alphaMap=t.alphaMap,this.size=t.size,this.sizeAttenuation=t.sizeAttenuation,this.morphTargets=t.morphTargets,this}}_a.prototype.isPointsMaterial=!0;const wa=new se,ba=new re,Ma=new Jt,Sa=new Lt;class Ta extends Ce{constructor(t=new En,e=new _a){super(),this.type="Points",this.geometry=t,this.material=e,this.updateMorphTargets()}copy(t){return super.copy(t),this.material=t.material,this.geometry=t.geometry,this}raycast(t,e){const n=this.geometry,i=this.matrixWorld,r=t.params.Points.threshold,s=n.drawRange;if(null===n.boundingSphere&amp;&amp;n.computeBoundingSphere(),Ma.copy(n.boundingSphere),Ma.applyMatrix4(i),Ma.radius+=r,!1===t.ray.intersectsSphere(Ma))return;wa.copy(i).invert(),ba.copy(t.ray).applyMatrix4(wa);const a=r/((this.scale.x+this.scale.y+this.scale.z)/3),o=a*a;if(n.isBufferGeometry){const r=n.index,a=n.attributes.position;if(null!==r){for(let n=Math.max(0,s.start),l=Math.min(r.count,s.start+s.count);n&lt;l;n++){const s=r.getX(n);Sa.fromBufferAttribute(a,s),Ea(Sa,s,o,i,t,e,this)}}else{for(let n=Math.max(0,s.start),r=Math.min(a.count,s.start+s.count);n&lt;r;n++)Sa.fromBufferAttribute(a,n),Ea(Sa,n,o,i,t,e,this)}}else console.error("THREE.Points.raycast() no longer supports THREE.Geometry. Use THREE.BufferGeometry instead.")}updateMorphTargets(){const t=this.geometry;if(t.isBufferGeometry){const e=t.morphAttributes,n=Object.keys(e);if(n.length&gt;0){const t=e[n[0]];if(void 0!==t){this.morphTargetInfluences=[],this.morphTargetDictionary={};for(let e=0,n=t.length;e&lt;n;e++){const n=t[e].name||String(e);this.morphTargetInfluences.push(0),this.morphTargetDictionary[n]=e}}}}else{const e=t.morphTargets;void 0!==e&amp;&amp;e.length&gt;0&amp;&amp;console.error("THREE.Points.updateMorphTargets() does not support THREE.Geometry. Use THREE.BufferGeometry instead.")}}}function Ea(t,e,n,i,r,s,a){const o=ba.distanceSqToPoint(t);if(o&lt;n){const n=new Lt;ba.closestPointToPoint(t,n),n.applyMatrix4(i);const l=r.ray.origin.distanceTo(n);if(l&lt;r.near||l&gt;r.far)return;s.push({distance:l,distanceToRay:Math.sqrt(o),point:n,index:e,face:null,object:a})}}Ta.prototype.isPoints=!0;class Aa extends bt{constructor(t,e,n,i,r,s,a,o,l){super(t,e,n,i,r,s,a,o,l),this.format=void 0!==a?a:T,this.minFilter=void 0!==s?s:g,this.magFilter=void 0!==r?r:g,this.generateMipmaps=!1;const c=this;"requestVideoFrameCallback"in t&amp;&amp;t.requestVideoFrameCallback((function e(){c.needsUpdate=!0,t.requestVideoFrameCallback(e)}))}clone(){return new this.constructor(this.image).copy(this)}update(){const t=this.image;!1==="requestVideoFrameCallback"in t&amp;&amp;t.readyState&gt;=t.HAVE_CURRENT_DATA&amp;&amp;(this.needsUpdate=!0)}}Aa.prototype.isVideoTexture=!0;class La extends bt{constructor(t,e,n,i,r,s,a,o,l,c,h,u){super(null,s,a,o,l,c,i,r,h,u),this.image={width:e,height:n},this.mipmaps=t,this.flipY=!1,this.generateMipmaps=!1}}La.prototype.isCompressedTexture=!0;class Ra extends bt{constructor(t,e,n,i,r,s,a,o,l){super(t,e,n,i,r,s,a,o,l),this.needsUpdate=!0}}Ra.prototype.isCanvasTexture=!0;class Ca extends bt{constructor(t,e,n,i,r,s,a,o,l,c){if((c=void 0!==c?c:A)!==A&amp;&amp;c!==L)throw new Error("DepthTexture format must be either THREE.DepthFormat or THREE.DepthStencilFormat");void 0===n&amp;&amp;c===A&amp;&amp;(n=_),void 0===n&amp;&amp;c===L&amp;&amp;(n=S),super(null,i,r,s,a,o,c,n,l),this.image={width:t,height:e},this.magFilter=void 0!==a?a:p,this.minFilter=void 0!==o?o:p,this.flipY=!1,this.generateMipmaps=!1}}Ca.prototype.isDepthTexture=!0;class Pa extends En{constructor(t=1,e=8,n=0,i=2*Math.PI){super(),this.type="CircleGeometry",this.parameters={radius:t,segments:e,thetaStart:n,thetaLength:i},e=Math.max(3,e);const r=[],s=[],a=[],o=[],l=new Lt,c=new vt;s.push(0,0,0),a.push(0,0,1),o.push(.5,.5);for(let r=0,h=3;r&lt;=e;r++,h+=3){const u=n+r/e*i;l.x=t*Math.cos(u),l.y=t*Math.sin(u),s.push(l.x,l.y,l.z),a.push(0,0,1),c.x=(s[h]/t+1)/2,c.y=(s[h+1]/t+1)/2,o.push(c.x,c.y)}for(let t=1;t&lt;=e;t++)r.push(t,t+1,0);this.setIndex(r),this.setAttribute("position",new mn(s,3)),this.setAttribute("normal",new mn(a,3)),this.setAttribute("uv",new mn(o,2))}}class Da extends En{constructor(t=1,e=1,n=1,i=8,r=1,s=!1,a=0,o=2*Math.PI){super(),this.type="CylinderGeometry",this.parameters={radiusTop:t,radiusBottom:e,height:n,radialSegments:i,heightSegments:r,openEnded:s,thetaStart:a,thetaLength:o};const l=this;i=Math.floor(i),r=Math.floor(r);const c=[],h=[],u=[],d=[];let p=0;const m=[],f=n/2;let g=0;function v(n){const r=p,s=new vt,m=new Lt;let v=0;const y=!0===n?t:e,x=!0===n?1:-1;for(let t=1;t&lt;=i;t++)h.push(0,f*x,0),u.push(0,x,0),d.push(.5,.5),p++;const _=p;for(let t=0;t&lt;=i;t++){const e=t/i*o+a,n=Math.cos(e),r=Math.sin(e);m.x=y*r,m.y=f*x,m.z=y*n,h.push(m.x,m.y,m.z),u.push(0,x,0),s.x=.5*n+.5,s.y=.5*r*x+.5,d.push(s.x,s.y),p++}for(let t=0;t&lt;i;t++){const e=r+t,i=_+t;!0===n?c.push(i,i+1,e):c.push(i+1,i,e),v+=3}l.addGroup(g,v,!0===n?1:2),g+=v}!function(){const s=new Lt,v=new Lt;let y=0;const x=(e-t)/n;for(let l=0;l&lt;=r;l++){const c=[],g=l/r,y=g*(e-t)+t;for(let t=0;t&lt;=i;t++){const e=t/i,r=e*o+a,l=Math.sin(r),m=Math.cos(r);v.x=y*l,v.y=-g*n+f,v.z=y*m,h.push(v.x,v.y,v.z),s.set(l,x,m).normalize(),u.push(s.x,s.y,s.z),d.push(e,1-g),c.push(p++)}m.push(c)}for(let t=0;t&lt;i;t++)for(let e=0;e&lt;r;e++){const n=m[e][t],i=m[e+1][t],r=m[e+1][t+1],s=m[e][t+1];c.push(n,i,s),c.push(i,r,s),y+=6}l.addGroup(g,y,0),g+=y}(),!1===s&amp;&amp;(t&gt;0&amp;&amp;v(!0),e&gt;0&amp;&amp;v(!1)),this.setIndex(c),this.setAttribute("position",new mn(h,3)),this.setAttribute("normal",new mn(u,3)),this.setAttribute("uv",new mn(d,2))}}class Ia extends Da{constructor(t=1,e=1,n=8,i=1,r=!1,s=0,a=2*Math.PI){super(0,t,e,n,i,r,s,a),this.type="ConeGeometry",this.parameters={radius:t,height:e,radialSegments:n,heightSegments:i,openEnded:r,thetaStart:s,thetaLength:a}}}class Na extends En{constructor(t,e,n=1,i=0){super(),this.type="PolyhedronGeometry",this.parameters={vertices:t,indices:e,radius:n,detail:i};const r=[],s=[];function a(t,e,n,i){const r=i+1,s=[];for(let i=0;i&lt;=r;i++){s[i]=[];const a=t.clone().lerp(n,i/r),o=e.clone().lerp(n,i/r),l=r-i;for(let t=0;t&lt;=l;t++)s[i][t]=0===t&amp;&amp;i===r?a:a.clone().lerp(o,t/l)}for(let t=0;t&lt;r;t++)for(let e=0;e&lt;2*(r-t)-1;e++){const n=Math.floor(e/2);e%2==0?(o(s[t][n+1]),o(s[t+1][n]),o(s[t][n])):(o(s[t][n+1]),o(s[t+1][n+1]),o(s[t+1][n]))}}function o(t){r.push(t.x,t.y,t.z)}function l(e,n){const i=3*e;n.x=t[i+0],n.y=t[i+1],n.z=t[i+2]}function c(t,e,n,i){i&lt;0&amp;&amp;1===t.x&amp;&amp;(s[e]=t.x-1),0===n.x&amp;&amp;0===n.z&amp;&amp;(s[e]=i/2/Math.PI+.5)}function h(t){return Math.atan2(t.z,-t.x)}!function(t){const n=new Lt,i=new Lt,r=new Lt;for(let s=0;s&lt;e.length;s+=3)l(e[s+0],n),l(e[s+1],i),l(e[s+2],r),a(n,i,r,t)}(i),function(t){const e=new Lt;for(let n=0;n&lt;r.length;n+=3)e.x=r[n+0],e.y=r[n+1],e.z=r[n+2],e.normalize().multiplyScalar(t),r[n+0]=e.x,r[n+1]=e.y,r[n+2]=e.z}(n),function(){const t=new Lt;for(let n=0;n&lt;r.length;n+=3){t.x=r[n+0],t.y=r[n+1],t.z=r[n+2];const i=h(t)/2/Math.PI+.5,a=(e=t,Math.atan2(-e.y,Math.sqrt(e.x*e.x+e.z*e.z))/Math.PI+.5);s.push(i,1-a)}var e;(function(){const t=new Lt,e=new Lt,n=new Lt,i=new Lt,a=new vt,o=new vt,l=new vt;for(let u=0,d=0;u&lt;r.length;u+=9,d+=6){t.set(r[u+0],r[u+1],r[u+2]),e.set(r[u+3],r[u+4],r[u+5]),n.set(r[u+6],r[u+7],r[u+8]),a.set(s[d+0],s[d+1]),o.set(s[d+2],s[d+3]),l.set(s[d+4],s[d+5]),i.copy(t).add(e).add(n).divideScalar(3);const p=h(i);c(a,d+0,t,p),c(o,d+2,e,p),c(l,d+4,n,p)}})(),function(){for(let t=0;t&lt;s.length;t+=6){const e=s[t+0],n=s[t+2],i=s[t+4],r=Math.max(e,n,i),a=Math.min(e,n,i);r&gt;.9&amp;&amp;a&lt;.1&amp;&amp;(e&lt;.2&amp;&amp;(s[t+0]+=1),n&lt;.2&amp;&amp;(s[t+2]+=1),i&lt;.2&amp;&amp;(s[t+4]+=1))}}()}(),this.setAttribute("position",new mn(r,3)),this.setAttribute("normal",new mn(r.slice(),3)),this.setAttribute("uv",new mn(s,2)),0===i?this.computeVertexNormals():this.normalizeNormals()}}class Ba extends Na{constructor(t=1,e=0){const n=(1+Math.sqrt(5))/2,i=1/n;super([-1,-1,-1,-1,-1,1,-1,1,-1,-1,1,1,1,-1,-1,1,-1,1,1,1,-1,1,1,1,0,-i,-n,0,-i,n,0,i,-n,0,i,n,-i,-n,0,-i,n,0,i,-n,0,i,n,0,-n,0,-i,n,0,-i,-n,0,i,n,0,i],[3,11,7,3,7,15,3,15,13,7,19,17,7,17,6,7,6,15,17,4,8,17,8,10,17,10,6,8,0,16,8,16,2,8,2,10,0,12,1,0,1,18,0,18,16,6,10,2,6,2,13,6,13,15,2,16,18,2,18,3,2,3,13,18,1,9,18,9,11,18,11,3,4,14,12,4,12,0,4,0,8,11,9,5,11,5,19,11,19,7,19,5,14,19,14,4,19,4,17,1,12,14,1,14,5,1,5,9],t,e),this.type="DodecahedronGeometry",this.parameters={radius:t,detail:e}}}const za=new Lt,Fa=new Lt,Oa=new Lt,Ha=new je;class Ga extends En{constructor(t,e){if(super(),this.type="EdgesGeometry",this.parameters={thresholdAngle:e},e=void 0!==e?e:1,!0===t.isGeometry)return void console.error("THREE.EdgesGeometry no longer supports THREE.Geometry. Use THREE.BufferGeometry instead.");const n=Math.pow(10,4),i=Math.cos(ot*e),r=t.getIndex(),s=t.getAttribute("position"),a=r?r.count:s.count,o=[0,0,0],l=["a","b","c"],c=new Array(3),h={},u=[];for(let t=0;t&lt;a;t+=3){r?(o[0]=r.getX(t),o[1]=r.getX(t+1),o[2]=r.getX(t+2)):(o[0]=t,o[1]=t+1,o[2]=t+2);const{a:e,b:a,c:d}=Ha;if(e.fromBufferAttribute(s,o[0]),a.fromBufferAttribute(s,o[1]),d.fromBufferAttribute(s,o[2]),Ha.getNormal(Oa),c[0]=`${Math.round(e.x*n)},${Math.round(e.y*n)},${Math.round(e.z*n)}`,c[1]=`${Math.round(a.x*n)},${Math.round(a.y*n)},${Math.round(a.z*n)}`,c[2]=`${Math.round(d.x*n)},${Math.round(d.y*n)},${Math.round(d.z*n)}`,c[0]!==c[1]&amp;&amp;c[1]!==c[2]&amp;&amp;c[2]!==c[0])for(let t=0;t&lt;3;t++){const e=(t+1)%3,n=c[t],r=c[e],s=Ha[l[t]],a=Ha[l[e]],d=`${n}_${r}`,p=`${r}_${n}`;p in h&amp;&amp;h[p]?(Oa.dot(h[p].normal)&lt;=i&amp;&amp;(u.push(s.x,s.y,s.z),u.push(a.x,a.y,a.z)),h[p]=null):d in h||(h[d]={index0:o[t],index1:o[e],normal:Oa.clone()})}}for(const t in h)if(h[t]){const{index0:e,index1:n}=h[t];za.fromBufferAttribute(s,e),Fa.fromBufferAttribute(s,n),u.push(za.x,za.y,za.z),u.push(Fa.x,Fa.y,Fa.z)}this.setAttribute("position",new mn(u,3))}}const Ua=function(t,e,n){n=n||2;const i=e&amp;&amp;e.length,r=i?e[0]*n:t.length;let s=ka(t,0,r,n,!0);const a=[];if(!s||s.next===s.prev)return a;let o,l,c,h,u,d,p;if(i&amp;&amp;(s=function(t,e,n,i){const r=[];let s,a,o,l,c;for(s=0,a=e.length;s&lt;a;s++)o=e[s]*i,l=s&lt;a-1?e[s+1]*i:t.length,c=ka(t,o,l,i,!1),c===c.next&amp;&amp;(c.steiner=!0),r.push($a(c));for(r.sort(Za),s=0;s&lt;r.length;s++)Ja(r[s],n),n=Va(n,n.next);return n}(t,e,s,n)),t.length&gt;80*n){o=c=t[0],l=h=t[1];for(let e=n;e&lt;r;e+=n)u=t[e],d=t[e+1],u&lt;o&amp;&amp;(o=u),d&lt;l&amp;&amp;(l=d),u&gt;c&amp;&amp;(c=u),d&gt;h&amp;&amp;(h=d);p=Math.max(c-o,h-l),p=0!==p?1/p:0}return Wa(s,a,n,o,l,p),a};function ka(t,e,n,i,r){let s,a;if(r===function(t,e,n,i){let r=0;for(let s=e,a=n-i;s&lt;n;s+=i)r+=(t[a]-t[s])*(t[s+1]+t[a+1]),a=s;return r}(t,e,n,i)&gt;0)for(s=e;s&lt;n;s+=i)a=co(s,t[s],t[s+1],a);else for(s=n-i;s&gt;=e;s-=i)a=co(s,t[s],t[s+1],a);return a&amp;&amp;io(a,a.next)&amp;&amp;(ho(a),a=a.next),a}function Va(t,e){if(!t)return t;e||(e=t);let n,i=t;do{if(n=!1,i.steiner||!io(i,i.next)&amp;&amp;0!==no(i.prev,i,i.next))i=i.next;else{if(ho(i),i=e=i.prev,i===i.next)break;n=!0}}while(n||i!==e);return e}function Wa(t,e,n,i,r,s,a){if(!t)return;!a&amp;&amp;s&amp;&amp;function(t,e,n,i){let r=t;do{null===r.z&amp;&amp;(r.z=Ka(r.x,r.y,e,n,i)),r.prevZ=r.prev,r.nextZ=r.next,r=r.next}while(r!==t);r.prevZ.nextZ=null,r.prevZ=null,function(t){let e,n,i,r,s,a,o,l,c=1;do{for(n=t,t=null,s=null,a=0;n;){for(a++,i=n,o=0,e=0;e&lt;c&amp;&amp;(o++,i=i.nextZ,i);e++);for(l=c;o&gt;0||l&gt;0&amp;&amp;i;)0!==o&amp;&amp;(0===l||!i||n.z&lt;=i.z)?(r=n,n=n.nextZ,o--):(r=i,i=i.nextZ,l--),s?s.nextZ=r:t=r,r.prevZ=s,s=r;n=i}s.nextZ=null,c*=2}while(a&gt;1)}(r)}(t,i,r,s);let o,l,c=t;for(;t.prev!==t.next;)if(o=t.prev,l=t.next,s?qa(t,i,r,s):ja(t))e.push(o.i/n),e.push(t.i/n),e.push(l.i/n),ho(t),t=l.next,c=l.next;else if((t=l)===c){a?1===a?Wa(t=Xa(Va(t),e,n),e,n,i,r,s,2):2===a&amp;&amp;Ya(t,e,n,i,r,s):Wa(Va(t),e,n,i,r,s,1);break}}function ja(t){const e=t.prev,n=t,i=t.next;if(no(e,n,i)&gt;=0)return!1;let r=t.next.next;for(;r!==t.prev;){if(to(e.x,e.y,n.x,n.y,i.x,i.y,r.x,r.y)&amp;&amp;no(r.prev,r,r.next)&gt;=0)return!1;r=r.next}return!0}function qa(t,e,n,i){const r=t.prev,s=t,a=t.next;if(no(r,s,a)&gt;=0)return!1;const o=r.x&lt;s.x?r.x&lt;a.x?r.x:a.x:s.x&lt;a.x?s.x:a.x,l=r.y&lt;s.y?r.y&lt;a.y?r.y:a.y:s.y&lt;a.y?s.y:a.y,c=r.x&gt;s.x?r.x&gt;a.x?r.x:a.x:s.x&gt;a.x?s.x:a.x,h=r.y&gt;s.y?r.y&gt;a.y?r.y:a.y:s.y&gt;a.y?s.y:a.y,u=Ka(o,l,e,n,i),d=Ka(c,h,e,n,i);let p=t.prevZ,m=t.nextZ;for(;p&amp;&amp;p.z&gt;=u&amp;&amp;m&amp;&amp;m.z&lt;=d;){if(p!==t.prev&amp;&amp;p!==t.next&amp;&amp;to(r.x,r.y,s.x,s.y,a.x,a.y,p.x,p.y)&amp;&amp;no(p.prev,p,p.next)&gt;=0)return!1;if(p=p.prevZ,m!==t.prev&amp;&amp;m!==t.next&amp;&amp;to(r.x,r.y,s.x,s.y,a.x,a.y,m.x,m.y)&amp;&amp;no(m.prev,m,m.next)&gt;=0)return!1;m=m.nextZ}for(;p&amp;&amp;p.z&gt;=u;){if(p!==t.prev&amp;&amp;p!==t.next&amp;&amp;to(r.x,r.y,s.x,s.y,a.x,a.y,p.x,p.y)&amp;&amp;no(p.prev,p,p.next)&gt;=0)return!1;p=p.prevZ}for(;m&amp;&amp;m.z&lt;=d;){if(m!==t.prev&amp;&amp;m!==t.next&amp;&amp;to(r.x,r.y,s.x,s.y,a.x,a.y,m.x,m.y)&amp;&amp;no(m.prev,m,m.next)&gt;=0)return!1;m=m.nextZ}return!0}function Xa(t,e,n){let i=t;do{const r=i.prev,s=i.next.next;!io(r,s)&amp;&amp;ro(r,i,i.next,s)&amp;&amp;oo(r,s)&amp;&amp;oo(s,r)&amp;&amp;(e.push(r.i/n),e.push(i.i/n),e.push(s.i/n),ho(i),ho(i.next),i=t=s),i=i.next}while(i!==t);return Va(i)}function Ya(t,e,n,i,r,s){let a=t;do{let t=a.next.next;for(;t!==a.prev;){if(a.i!==t.i&amp;&amp;eo(a,t)){let o=lo(a,t);return a=Va(a,a.next),o=Va(o,o.next),Wa(a,e,n,i,r,s),void Wa(o,e,n,i,r,s)}t=t.next}a=a.next}while(a!==t)}function Za(t,e){return t.x-e.x}function Ja(t,e){if(e=function(t,e){let n=e;const i=t.x,r=t.y;let s,a=-1/0;do{if(r&lt;=n.y&amp;&amp;r&gt;=n.next.y&amp;&amp;n.next.y!==n.y){const t=n.x+(r-n.y)*(n.next.x-n.x)/(n.next.y-n.y);if(t&lt;=i&amp;&amp;t&gt;a){if(a=t,t===i){if(r===n.y)return n;if(r===n.next.y)return n.next}s=n.x&lt;n.next.x?n:n.next}}n=n.next}while(n!==e);if(!s)return null;if(i===a)return s;const o=s,l=s.x,c=s.y;let h,u=1/0;n=s;do{i&gt;=n.x&amp;&amp;n.x&gt;=l&amp;&amp;i!==n.x&amp;&amp;to(r&lt;c?i:a,r,l,c,r&lt;c?a:i,r,n.x,n.y)&amp;&amp;(h=Math.abs(r-n.y)/(i-n.x),oo(n,t)&amp;&amp;(h&lt;u||h===u&amp;&amp;(n.x&gt;s.x||n.x===s.x&amp;&amp;Qa(s,n)))&amp;&amp;(s=n,u=h)),n=n.next}while(n!==o);return s}(t,e)){const n=lo(e,t);Va(e,e.next),Va(n,n.next)}}function Qa(t,e){return no(t.prev,t,e.prev)&lt;0&amp;&amp;no(e.next,t,t.next)&lt;0}function Ka(t,e,n,i,r){return(t=1431655765&amp;((t=858993459&amp;((t=252645135&amp;((t=16711935&amp;((t=32767*(t-n)*r)|t&lt;&lt;8))|t&lt;&lt;4))|t&lt;&lt;2))|t&lt;&lt;1))|(e=1431655765&amp;((e=858993459&amp;((e=252645135&amp;((e=16711935&amp;((e=32767*(e-i)*r)|e&lt;&lt;8))|e&lt;&lt;4))|e&lt;&lt;2))|e&lt;&lt;1))&lt;&lt;1}function $a(t){let e=t,n=t;do{(e.x&lt;n.x||e.x===n.x&amp;&amp;e.y&lt;n.y)&amp;&amp;(n=e),e=e.next}while(e!==t);return n}function to(t,e,n,i,r,s,a,o){return(r-a)*(e-o)-(t-a)*(s-o)&gt;=0&amp;&amp;(t-a)*(i-o)-(n-a)*(e-o)&gt;=0&amp;&amp;(n-a)*(s-o)-(r-a)*(i-o)&gt;=0}function eo(t,e){return t.next.i!==e.i&amp;&amp;t.prev.i!==e.i&amp;&amp;!function(t,e){let n=t;do{if(n.i!==t.i&amp;&amp;n.next.i!==t.i&amp;&amp;n.i!==e.i&amp;&amp;n.next.i!==e.i&amp;&amp;ro(n,n.next,t,e))return!0;n=n.next}while(n!==t);return!1}(t,e)&amp;&amp;(oo(t,e)&amp;&amp;oo(e,t)&amp;&amp;function(t,e){let n=t,i=!1;const r=(t.x+e.x)/2,s=(t.y+e.y)/2;do{n.y&gt;s!=n.next.y&gt;s&amp;&amp;n.next.y!==n.y&amp;&amp;r&lt;(n.next.x-n.x)*(s-n.y)/(n.next.y-n.y)+n.x&amp;&amp;(i=!i),n=n.next}while(n!==t);return i}(t,e)&amp;&amp;(no(t.prev,t,e.prev)||no(t,e.prev,e))||io(t,e)&amp;&amp;no(t.prev,t,t.next)&gt;0&amp;&amp;no(e.prev,e,e.next)&gt;0)}function no(t,e,n){return(e.y-t.y)*(n.x-e.x)-(e.x-t.x)*(n.y-e.y)}function io(t,e){return t.x===e.x&amp;&amp;t.y===e.y}function ro(t,e,n,i){const r=ao(no(t,e,n)),s=ao(no(t,e,i)),a=ao(no(n,i,t)),o=ao(no(n,i,e));return r!==s&amp;&amp;a!==o||(!(0!==r||!so(t,n,e))||(!(0!==s||!so(t,i,e))||(!(0!==a||!so(n,t,i))||!(0!==o||!so(n,e,i)))))}function so(t,e,n){return e.x&lt;=Math.max(t.x,n.x)&amp;&amp;e.x&gt;=Math.min(t.x,n.x)&amp;&amp;e.y&lt;=Math.max(t.y,n.y)&amp;&amp;e.y&gt;=Math.min(t.y,n.y)}function ao(t){return t&gt;0?1:t&lt;0?-1:0}function oo(t,e){return no(t.prev,t,t.next)&lt;0?no(t,e,t.next)&gt;=0&amp;&amp;no(t,t.prev,e)&gt;=0:no(t,e,t.prev)&lt;0||no(t,t.next,e)&lt;0}function lo(t,e){const n=new uo(t.i,t.x,t.y),i=new uo(e.i,e.x,e.y),r=t.next,s=e.prev;return t.next=e,e.prev=t,n.next=r,r.prev=n,i.next=n,n.prev=i,s.next=i,i.prev=s,i}function co(t,e,n,i){const r=new uo(t,e,n);return i?(r.next=i.next,r.prev=i,i.next.prev=r,i.next=r):(r.prev=r,r.next=r),r}function ho(t){t.next.prev=t.prev,t.prev.next=t.next,t.prevZ&amp;&amp;(t.prevZ.nextZ=t.nextZ),t.nextZ&amp;&amp;(t.nextZ.prevZ=t.prevZ)}function uo(t,e,n){this.i=t,this.x=e,this.y=n,this.prev=null,this.next=null,this.z=null,this.prevZ=null,this.nextZ=null,this.steiner=!1}class po{static area(t){const e=t.length;let n=0;for(let i=e-1,r=0;r&lt;e;i=r++)n+=t[i].x*t[r].y-t[r].x*t[i].y;return.5*n}static isClockWise(t){return po.area(t)&lt;0}static triangulateShape(t,e){const n=[],i=[],r=[];mo(t),fo(n,t);let s=t.length;e.forEach(mo);for(let t=0;t&lt;e.length;t++)i.push(s),s+=e[t].length,fo(n,e[t]);const a=Ua(n,i);for(let t=0;t&lt;a.length;t+=3)r.push(a.slice(t,t+3));return r}}function mo(t){const e=t.length;e&gt;2&amp;&amp;t[e-1].equals(t[0])&amp;&amp;t.pop()}function fo(t,e){for(let n=0;n&lt;e.length;n++)t.push(e[n].x),t.push(e[n].y)}class go extends En{constructor(t,e){super(),this.type="ExtrudeGeometry",this.parameters={shapes:t,options:e},t=Array.isArray(t)?t:[t];const n=this,i=[],r=[];for(let e=0,n=t.length;e&lt;n;e++){s(t[e])}function s(t){const s=[],a=void 0!==e.curveSegments?e.curveSegments:12,o=void 0!==e.steps?e.steps:1;let l=void 0!==e.depth?e.depth:100,c=void 0===e.bevelEnabled||e.bevelEnabled,h=void 0!==e.bevelThickness?e.bevelThickness:6,u=void 0!==e.bevelSize?e.bevelSize:h-2,d=void 0!==e.bevelOffset?e.bevelOffset:0,p=void 0!==e.bevelSegments?e.bevelSegments:3;const m=e.extrudePath,f=void 0!==e.UVGenerator?e.UVGenerator:vo;void 0!==e.amount&amp;&amp;(console.warn("THREE.ExtrudeBufferGeometry: amount has been renamed to depth."),l=e.amount);let g,v,y,x,_,w=!1;m&amp;&amp;(g=m.getSpacedPoints(o),w=!0,c=!1,v=m.computeFrenetFrames(o,!1),y=new Lt,x=new Lt,_=new Lt),c||(p=0,h=0,u=0,d=0);const b=t.extractPoints(a);let M=b.shape;const S=b.holes;if(!po.isClockWise(M)){M=M.reverse();for(let t=0,e=S.length;t&lt;e;t++){const e=S[t];po.isClockWise(e)&amp;&amp;(S[t]=e.reverse())}}const T=po.triangulateShape(M,S),E=M;for(let t=0,e=S.length;t&lt;e;t++){const e=S[t];M=M.concat(e)}function A(t,e,n){return e||console.error("THREE.ExtrudeGeometry: vec does not exist"),e.clone().multiplyScalar(n).add(t)}const L=M.length,R=T.length;function C(t,e,n){let i,r,s;const a=t.x-e.x,o=t.y-e.y,l=n.x-t.x,c=n.y-t.y,h=a*a+o*o,u=a*c-o*l;if(Math.abs(u)&gt;Number.EPSILON){const u=Math.sqrt(h),d=Math.sqrt(l*l+c*c),p=e.x-o/u,m=e.y+a/u,f=((n.x-c/d-p)*c-(n.y+l/d-m)*l)/(a*c-o*l);i=p+a*f-t.x,r=m+o*f-t.y;const g=i*i+r*r;if(g&lt;=2)return new vt(i,r);s=Math.sqrt(g/2)}else{let t=!1;a&gt;Number.EPSILON?l&gt;Number.EPSILON&amp;&amp;(t=!0):a&lt;-Number.EPSILON?l&lt;-Number.EPSILON&amp;&amp;(t=!0):Math.sign(o)===Math.sign(c)&amp;&amp;(t=!0),t?(i=-o,r=a,s=Math.sqrt(h)):(i=a,r=o,s=Math.sqrt(h/2))}return new vt(i/s,r/s)}const P=[];for(let t=0,e=E.length,n=e-1,i=t+1;t&lt;e;t++,n++,i++)n===e&amp;&amp;(n=0),i===e&amp;&amp;(i=0),P[t]=C(E[t],E[n],E[i]);const D=[];let I,N=P.concat();for(let t=0,e=S.length;t&lt;e;t++){const e=S[t];I=[];for(let t=0,n=e.length,i=n-1,r=t+1;t&lt;n;t++,i++,r++)i===n&amp;&amp;(i=0),r===n&amp;&amp;(r=0),I[t]=C(e[t],e[i],e[r]);D.push(I),N=N.concat(I)}for(let t=0;t&lt;p;t++){const e=t/p,n=h*Math.cos(e*Math.PI/2),i=u*Math.sin(e*Math.PI/2)+d;for(let t=0,e=E.length;t&lt;e;t++){const e=A(E[t],P[t],i);F(e.x,e.y,-n)}for(let t=0,e=S.length;t&lt;e;t++){const e=S[t];I=D[t];for(let t=0,r=e.length;t&lt;r;t++){const r=A(e[t],I[t],i);F(r.x,r.y,-n)}}}const B=u+d;for(let t=0;t&lt;L;t++){const e=c?A(M[t],N[t],B):M[t];w?(x.copy(v.normals[0]).multiplyScalar(e.x),y.copy(v.binormals[0]).multiplyScalar(e.y),_.copy(g[0]).add(x).add(y),F(_.x,_.y,_.z)):F(e.x,e.y,0)}for(let t=1;t&lt;=o;t++)for(let e=0;e&lt;L;e++){const n=c?A(M[e],N[e],B):M[e];w?(x.copy(v.normals[t]).multiplyScalar(n.x),y.copy(v.binormals[t]).multiplyScalar(n.y),_.copy(g[t]).add(x).add(y),F(_.x,_.y,_.z)):F(n.x,n.y,l/o*t)}for(let t=p-1;t&gt;=0;t--){const e=t/p,n=h*Math.cos(e*Math.PI/2),i=u*Math.sin(e*Math.PI/2)+d;for(let t=0,e=E.length;t&lt;e;t++){const e=A(E[t],P[t],i);F(e.x,e.y,l+n)}for(let t=0,e=S.length;t&lt;e;t++){const e=S[t];I=D[t];for(let t=0,r=e.length;t&lt;r;t++){const r=A(e[t],I[t],i);w?F(r.x,r.y+g[o-1].y,g[o-1].x+n):F(r.x,r.y,l+n)}}}function z(t,e){let n=t.length;for(;--n&gt;=0;){const i=n;let r=n-1;r&lt;0&amp;&amp;(r=t.length-1);for(let t=0,n=o+2*p;t&lt;n;t++){const n=L*t,s=L*(t+1);H(e+i+n,e+r+n,e+r+s,e+i+s)}}}function F(t,e,n){s.push(t),s.push(e),s.push(n)}function O(t,e,r){G(t),G(e),G(r);const s=i.length/3,a=f.generateTopUV(n,i,s-3,s-2,s-1);U(a[0]),U(a[1]),U(a[2])}function H(t,e,r,s){G(t),G(e),G(s),G(e),G(r),G(s);const a=i.length/3,o=f.generateSideWallUV(n,i,a-6,a-3,a-2,a-1);U(o[0]),U(o[1]),U(o[3]),U(o[1]),U(o[2]),U(o[3])}function G(t){i.push(s[3*t+0]),i.push(s[3*t+1]),i.push(s[3*t+2])}function U(t){r.push(t.x),r.push(t.y)}!function(){const t=i.length/3;if(c){let t=0,e=L*t;for(let t=0;t&lt;R;t++){const n=T[t];O(n[2]+e,n[1]+e,n[0]+e)}t=o+2*p,e=L*t;for(let t=0;t&lt;R;t++){const n=T[t];O(n[0]+e,n[1]+e,n[2]+e)}}else{for(let t=0;t&lt;R;t++){const e=T[t];O(e[2],e[1],e[0])}for(let t=0;t&lt;R;t++){const e=T[t];O(e[0]+L*o,e[1]+L*o,e[2]+L*o)}}n.addGroup(t,i.length/3-t,0)}(),function(){const t=i.length/3;let e=0;z(E,e),e+=E.length;for(let t=0,n=S.length;t&lt;n;t++){const n=S[t];z(n,e),e+=n.length}n.addGroup(t,i.length/3-t,1)}()}this.setAttribute("position",new mn(i,3)),this.setAttribute("uv",new mn(r,2)),this.computeVertexNormals()}toJSON(){const t=En.prototype.toJSON.call(this);return function(t,e,n){if(n.shapes=[],Array.isArray(t))for(let e=0,i=t.length;e&lt;i;e++){const i=t[e];n.shapes.push(i.uuid)}else n.shapes.push(t.uuid);void 0!==e.extrudePath&amp;&amp;(n.options.extrudePath=e.extrudePath.toJSON());return n}(this.parameters.shapes,this.parameters.options,t)}}const vo={generateTopUV:function(t,e,n,i,r){const s=e[3*n],a=e[3*n+1],o=e[3*i],l=e[3*i+1],c=e[3*r],h=e[3*r+1];return[new vt(s,a),new vt(o,l),new vt(c,h)]},generateSideWallUV:function(t,e,n,i,r,s){const a=e[3*n],o=e[3*n+1],l=e[3*n+2],c=e[3*i],h=e[3*i+1],u=e[3*i+2],d=e[3*r],p=e[3*r+1],m=e[3*r+2],f=e[3*s],g=e[3*s+1],v=e[3*s+2];return Math.abs(o-h)&lt;.01?[new vt(a,1-l),new vt(c,1-u),new vt(d,1-m),new vt(f,1-v)]:[new vt(o,1-l),new vt(h,1-u),new vt(p,1-m),new vt(g,1-v)]}};class yo extends Na{constructor(t=1,e=0){const n=(1+Math.sqrt(5))/2;super([-1,n,0,1,n,0,-1,-n,0,1,-n,0,0,-1,n,0,1,n,0,-1,-n,0,1,-n,n,0,-1,n,0,1,-n,0,-1,-n,0,1],[0,11,5,0,5,1,0,1,7,0,7,10,0,10,11,1,5,9,5,11,4,11,10,2,10,7,6,7,1,8,3,9,4,3,4,2,3,2,6,3,6,8,3,8,9,4,9,5,2,4,11,6,2,10,8,6,7,9,8,1],t,e),this.type="IcosahedronGeometry",this.parameters={radius:t,detail:e}}}class xo extends En{constructor(t,e=12,n=0,i=2*Math.PI){super(),this.type="LatheGeometry",this.parameters={points:t,segments:e,phiStart:n,phiLength:i},e=Math.floor(e),i=ht(i,0,2*Math.PI);const r=[],s=[],a=[],o=1/e,l=new Lt,c=new vt;for(let r=0;r&lt;=e;r++){const h=n+r*o*i,u=Math.sin(h),d=Math.cos(h);for(let n=0;n&lt;=t.length-1;n++)l.x=t[n].x*u,l.y=t[n].y,l.z=t[n].x*d,s.push(l.x,l.y,l.z),c.x=r/e,c.y=n/(t.length-1),a.push(c.x,c.y)}for(let n=0;n&lt;e;n++)for(let e=0;e&lt;t.length-1;e++){const i=e+n*t.length,s=i,a=i+t.length,o=i+t.length+1,l=i+1;r.push(s,a,l),r.push(a,o,l)}if(this.setIndex(r),this.setAttribute("position",new mn(s,3)),this.setAttribute("uv",new mn(a,2)),this.computeVertexNormals(),i===2*Math.PI){const n=this.attributes.normal.array,i=new Lt,r=new Lt,s=new Lt,a=e*t.length*3;for(let e=0,o=0;e&lt;t.length;e++,o+=3)i.x=n[o+0],i.y=n[o+1],i.z=n[o+2],r.x=n[a+o+0],r.y=n[a+o+1],r.z=n[a+o+2],s.addVectors(i,r).normalize(),n[o+0]=n[a+o+0]=s.x,n[o+1]=n[a+o+1]=s.y,n[o+2]=n[a+o+2]=s.z}}}class _o extends Na{constructor(t=1,e=0){super([1,0,0,-1,0,0,0,1,0,0,-1,0,0,0,1,0,0,-1],[0,2,4,0,4,3,0,3,5,0,5,2,1,2,5,1,5,3,1,3,4,1,4,2],t,e),this.type="OctahedronGeometry",this.parameters={radius:t,detail:e}}}class wo extends En{constructor(t,e,n){super(),this.type="ParametricGeometry",this.parameters={func:t,slices:e,stacks:n};const i=[],r=[],s=[],a=[],o=1e-5,l=new Lt,c=new Lt,h=new Lt,u=new Lt,d=new Lt;t.length&lt;3&amp;&amp;console.error("THREE.ParametricGeometry: Function must now modify a Vector3 as third parameter.");const p=e+1;for(let i=0;i&lt;=n;i++){const p=i/n;for(let n=0;n&lt;=e;n++){const i=n/e;t(i,p,c),r.push(c.x,c.y,c.z),i-o&gt;=0?(t(i-o,p,h),u.subVectors(c,h)):(t(i+o,p,h),u.subVectors(h,c)),p-o&gt;=0?(t(i,p-o,h),d.subVectors(c,h)):(t(i,p+o,h),d.subVectors(h,c)),l.crossVectors(u,d).normalize(),s.push(l.x,l.y,l.z),a.push(i,p)}}for(let t=0;t&lt;n;t++)for(let n=0;n&lt;e;n++){const e=t*p+n,r=t*p+n+1,s=(t+1)*p+n+1,a=(t+1)*p+n;i.push(e,r,a),i.push(r,s,a)}this.setIndex(i),this.setAttribute("position",new mn(r,3)),this.setAttribute("normal",new mn(s,3)),this.setAttribute("uv",new mn(a,2))}}class bo extends En{constructor(t=.5,e=1,n=8,i=1,r=0,s=2*Math.PI){super(),this.type="RingGeometry",this.parameters={innerRadius:t,outerRadius:e,thetaSegments:n,phiSegments:i,thetaStart:r,thetaLength:s},n=Math.max(3,n);const a=[],o=[],l=[],c=[];let h=t;const u=(e-t)/(i=Math.max(1,i)),d=new Lt,p=new vt;for(let t=0;t&lt;=i;t++){for(let t=0;t&lt;=n;t++){const i=r+t/n*s;d.x=h*Math.cos(i),d.y=h*Math.sin(i),o.push(d.x,d.y,d.z),l.push(0,0,1),p.x=(d.x/e+1)/2,p.y=(d.y/e+1)/2,c.push(p.x,p.y)}h+=u}for(let t=0;t&lt;i;t++){const e=t*(n+1);for(let t=0;t&lt;n;t++){const i=t+e,r=i,s=i+n+1,o=i+n+2,l=i+1;a.push(r,s,l),a.push(s,o,l)}}this.setIndex(a),this.setAttribute("position",new mn(o,3)),this.setAttribute("normal",new mn(l,3)),this.setAttribute("uv",new mn(c,2))}}class Mo extends En{constructor(t,e=12){super(),this.type="ShapeGeometry",this.parameters={shapes:t,curveSegments:e};const n=[],i=[],r=[],s=[];let a=0,o=0;if(!1===Array.isArray(t))l(t);else for(let e=0;e&lt;t.length;e++)l(t[e]),this.addGroup(a,o,e),a+=o,o=0;function l(t){const a=i.length/3,l=t.extractPoints(e);let c=l.shape;const h=l.holes;!1===po.isClockWise(c)&amp;&amp;(c=c.reverse());for(let t=0,e=h.length;t&lt;e;t++){const e=h[t];!0===po.isClockWise(e)&amp;&amp;(h[t]=e.reverse())}const u=po.triangulateShape(c,h);for(let t=0,e=h.length;t&lt;e;t++){const e=h[t];c=c.concat(e)}for(let t=0,e=c.length;t&lt;e;t++){const e=c[t];i.push(e.x,e.y,0),r.push(0,0,1),s.push(e.x,e.y)}for(let t=0,e=u.length;t&lt;e;t++){const e=u[t],i=e[0]+a,r=e[1]+a,s=e[2]+a;n.push(i,r,s),o+=3}}this.setIndex(n),this.setAttribute("position",new mn(i,3)),this.setAttribute("normal",new mn(r,3)),this.setAttribute("uv",new mn(s,2))}toJSON(){const t=En.prototype.toJSON.call(this);return function(t,e){if(e.shapes=[],Array.isArray(t))for(let n=0,i=t.length;n&lt;i;n++){const i=t[n];e.shapes.push(i.uuid)}else e.shapes.push(t.uuid);return e}(this.parameters.shapes,t)}}class So extends En{constructor(t=1,e=8,n=6,i=0,r=2*Math.PI,s=0,a=Math.PI){super(),this.type="SphereGeometry",this.parameters={radius:t,widthSegments:e,heightSegments:n,phiStart:i,phiLength:r,thetaStart:s,thetaLength:a},e=Math.max(3,Math.floor(e)),n=Math.max(2,Math.floor(n));const o=Math.min(s+a,Math.PI);let l=0;const c=[],h=new Lt,u=new Lt,d=[],p=[],m=[],f=[];for(let d=0;d&lt;=n;d++){const g=[],v=d/n;let y=0;0==d&amp;&amp;0==s?y=.5/e:d==n&amp;&amp;o==Math.PI&amp;&amp;(y=-.5/e);for(let n=0;n&lt;=e;n++){const o=n/e;h.x=-t*Math.cos(i+o*r)*Math.sin(s+v*a),h.y=t*Math.cos(s+v*a),h.z=t*Math.sin(i+o*r)*Math.sin(s+v*a),p.push(h.x,h.y,h.z),u.copy(h).normalize(),m.push(u.x,u.y,u.z),f.push(o+y,1-v),g.push(l++)}c.push(g)}for(let t=0;t&lt;n;t++)for(let i=0;i&lt;e;i++){const e=c[t][i+1],r=c[t][i],a=c[t+1][i],l=c[t+1][i+1];(0!==t||s&gt;0)&amp;&amp;d.push(e,r,l),(t!==n-1||o&lt;Math.PI)&amp;&amp;d.push(r,a,l)}this.setIndex(d),this.setAttribute("position",new mn(p,3)),this.setAttribute("normal",new mn(m,3)),this.setAttribute("uv",new mn(f,2))}}class To extends Na{constructor(t=1,e=0){super([1,1,1,-1,-1,1,-1,1,-1,1,-1,-1],[2,1,0,0,3,2,1,3,0,2,3,1],t,e),this.type="TetrahedronGeometry",this.parameters={radius:t,detail:e}}}class Eo extends go{constructor(t,e={}){const n=e.font;if(!n||!n.isFont)return console.error("THREE.TextGeometry: font parameter is not an instance of THREE.Font."),new En;const i=n.generateShapes(t,e.size);e.depth=void 0!==e.height?e.height:50,void 0===e.bevelThickness&amp;&amp;(e.bevelThickness=10),void 0===e.bevelSize&amp;&amp;(e.bevelSize=8),void 0===e.bevelEnabled&amp;&amp;(e.bevelEnabled=!1),super(i,e),this.type="TextGeometry"}}class Ao extends En{constructor(t=1,e=.4,n=8,i=6,r=2*Math.PI){super(),this.type="TorusGeometry",this.parameters={radius:t,tube:e,radialSegments:n,tubularSegments:i,arc:r},n=Math.floor(n),i=Math.floor(i);const s=[],a=[],o=[],l=[],c=new Lt,h=new Lt,u=new Lt;for(let s=0;s&lt;=n;s++)for(let d=0;d&lt;=i;d++){const p=d/i*r,m=s/n*Math.PI*2;h.x=(t+e*Math.cos(m))*Math.cos(p),h.y=(t+e*Math.cos(m))*Math.sin(p),h.z=e*Math.sin(m),a.push(h.x,h.y,h.z),c.x=t*Math.cos(p),c.y=t*Math.sin(p),u.subVectors(h,c).normalize(),o.push(u.x,u.y,u.z),l.push(d/i),l.push(s/n)}for(let t=1;t&lt;=n;t++)for(let e=1;e&lt;=i;e++){const n=(i+1)*t+e-1,r=(i+1)*(t-1)+e-1,a=(i+1)*(t-1)+e,o=(i+1)*t+e;s.push(n,r,o),s.push(r,a,o)}this.setIndex(s),this.setAttribute("position",new mn(a,3)),this.setAttribute("normal",new mn(o,3)),this.setAttribute("uv",new mn(l,2))}}class Lo extends En{constructor(t=1,e=.4,n=64,i=8,r=2,s=3){super(),this.type="TorusKnotGeometry",this.parameters={radius:t,tube:e,tubularSegments:n,radialSegments:i,p:r,q:s},n=Math.floor(n),i=Math.floor(i);const a=[],o=[],l=[],c=[],h=new Lt,u=new Lt,d=new Lt,p=new Lt,m=new Lt,f=new Lt,g=new Lt;for(let a=0;a&lt;=n;++a){const y=a/n*r*Math.PI*2;v(y,r,s,t,d),v(y+.01,r,s,t,p),f.subVectors(p,d),g.addVectors(p,d),m.crossVectors(f,g),g.crossVectors(m,f),m.normalize(),g.normalize();for(let t=0;t&lt;=i;++t){const r=t/i*Math.PI*2,s=-e*Math.cos(r),p=e*Math.sin(r);h.x=d.x+(s*g.x+p*m.x),h.y=d.y+(s*g.y+p*m.y),h.z=d.z+(s*g.z+p*m.z),o.push(h.x,h.y,h.z),u.subVectors(h,d).normalize(),l.push(u.x,u.y,u.z),c.push(a/n),c.push(t/i)}}for(let t=1;t&lt;=n;t++)for(let e=1;e&lt;=i;e++){const n=(i+1)*(t-1)+(e-1),r=(i+1)*t+(e-1),s=(i+1)*t+e,o=(i+1)*(t-1)+e;a.push(n,r,o),a.push(r,s,o)}function v(t,e,n,i,r){const s=Math.cos(t),a=Math.sin(t),o=n/e*t,l=Math.cos(o);r.x=i*(2+l)*.5*s,r.y=i*(2+l)*a*.5,r.z=i*Math.sin(o)*.5}this.setIndex(a),this.setAttribute("position",new mn(o,3)),this.setAttribute("normal",new mn(l,3)),this.setAttribute("uv",new mn(c,2))}}class Ro extends En{constructor(t,e=64,n=1,i=8,r=!1){super(),this.type="TubeGeometry",this.parameters={path:t,tubularSegments:e,radius:n,radialSegments:i,closed:r};const s=t.computeFrenetFrames(e,r);this.tangents=s.tangents,this.normals=s.normals,this.binormals=s.binormals;const a=new Lt,o=new Lt,l=new vt;let c=new Lt;const h=[],u=[],d=[],p=[];function m(r){c=t.getPointAt(r/e,c);const l=s.normals[r],d=s.binormals[r];for(let t=0;t&lt;=i;t++){const e=t/i*Math.PI*2,r=Math.sin(e),s=-Math.cos(e);o.x=s*l.x+r*d.x,o.y=s*l.y+r*d.y,o.z=s*l.z+r*d.z,o.normalize(),u.push(o.x,o.y,o.z),a.x=c.x+n*o.x,a.y=c.y+n*o.y,a.z=c.z+n*o.z,h.push(a.x,a.y,a.z)}}!function(){for(let t=0;t&lt;e;t++)m(t);m(!1===r?e:0),function(){for(let t=0;t&lt;=e;t++)for(let n=0;n&lt;=i;n++)l.x=t/e,l.y=n/i,d.push(l.x,l.y)}(),function(){for(let t=1;t&lt;=e;t++)for(let e=1;e&lt;=i;e++){const n=(i+1)*(t-1)+(e-1),r=(i+1)*t+(e-1),s=(i+1)*t+e,a=(i+1)*(t-1)+e;p.push(n,r,a),p.push(r,s,a)}}()}(),this.setIndex(p),this.setAttribute("position",new mn(h,3)),this.setAttribute("normal",new mn(u,3)),this.setAttribute("uv",new mn(d,2))}toJSON(){const t=En.prototype.toJSON.call(this);return t.path=this.parameters.path.toJSON(),t}}class Co extends En{constructor(t){if(super(),this.type="WireframeGeometry",!0===t.isGeometry)return void console.error("THREE.WireframeGeometry no longer supports THREE.Geometry. Use THREE.BufferGeometry instead.");const e=[],n=[0,0],i={},r=new Lt;if(null!==t.index){const s=t.attributes.position,a=t.index;let o=t.groups;0===o.length&amp;&amp;(o=[{start:0,count:a.count,materialIndex:0}]);for(let t=0,e=o.length;t&lt;e;++t){const e=o[t],r=e.start;for(let t=r,s=r+e.count;t&lt;s;t+=3)for(let e=0;e&lt;3;e++){const r=a.getX(t+e),s=a.getX(t+(e+1)%3);n[0]=Math.min(r,s),n[1]=Math.max(r,s);const o=n[0]+","+n[1];void 0===i[o]&amp;&amp;(i[o]={index1:n[0],index2:n[1]})}}for(const t in i){const n=i[t];r.fromBufferAttribute(s,n.index1),e.push(r.x,r.y,r.z),r.fromBufferAttribute(s,n.index2),e.push(r.x,r.y,r.z)}}else{const n=t.attributes.position;for(let t=0,i=n.count/3;t&lt;i;t++)for(let i=0;i&lt;3;i++){const s=3*t+i;r.fromBufferAttribute(n,s),e.push(r.x,r.y,r.z);const a=3*t+(i+1)%3;r.fromBufferAttribute(n,a),e.push(r.x,r.y,r.z)}}this.setAttribute("position",new mn(e,3))}}var Po=Object.freeze({__proto__:null,BoxGeometry:qn,BoxBufferGeometry:qn,CircleGeometry:Pa,CircleBufferGeometry:Pa,ConeGeometry:Ia,ConeBufferGeometry:Ia,CylinderGeometry:Da,CylinderBufferGeometry:Da,DodecahedronGeometry:Ba,DodecahedronBufferGeometry:Ba,EdgesGeometry:Ga,ExtrudeGeometry:go,ExtrudeBufferGeometry:go,IcosahedronGeometry:yo,IcosahedronBufferGeometry:yo,LatheGeometry:xo,LatheBufferGeometry:xo,OctahedronGeometry:_o,OctahedronBufferGeometry:_o,ParametricGeometry:wo,ParametricBufferGeometry:wo,PlaneGeometry:ci,PlaneBufferGeometry:ci,PolyhedronGeometry:Na,PolyhedronBufferGeometry:Na,RingGeometry:bo,RingBufferGeometry:bo,ShapeGeometry:Mo,ShapeBufferGeometry:Mo,SphereGeometry:So,SphereBufferGeometry:So,TetrahedronGeometry:To,TetrahedronBufferGeometry:To,TextGeometry:Eo,TextBufferGeometry:Eo,TorusGeometry:Ao,TorusBufferGeometry:Ao,TorusKnotGeometry:Lo,TorusKnotBufferGeometry:Lo,TubeGeometry:Ro,TubeBufferGeometry:Ro,WireframeGeometry:Co});class Do extends Xe{constructor(t){super(),this.type="ShadowMaterial",this.color=new tn(0),this.transparent=!0,this.setValues(t)}copy(t){return super.copy(t),this.color.copy(t.color),this}}Do.prototype.isShadowMaterial=!0;class Io extends Jn{constructor(t){super(t),this.type="RawShaderMaterial"}}Io.prototype.isRawShaderMaterial=!0;class No extends Xe{constructor(t){super(),this.defines={STANDARD:""},this.type="MeshStandardMaterial",this.color=new tn(16777215),this.roughness=1,this.metalness=0,this.map=null,this.lightMap=null,this.lightMapIntensity=1,this.aoMap=null,this.aoMapIntensity=1,this.emissive=new tn(0),this.emissiveIntensity=1,this.emissiveMap=null,this.bumpMap=null,this.bumpScale=1,this.normalMap=null,this.normalMapType=0,this.normalScale=new vt(1,1),this.displacementMap=null,this.displacementScale=1,this.displacementBias=0,this.roughnessMap=null,this.metalnessMap=null,this.alphaMap=null,this.envMap=null,this.envMapIntensity=1,this.refractionRatio=.98,this.wireframe=!1,this.wireframeLinewidth=1,this.wireframeLinecap="round",this.wireframeLinejoin="round",this.skinning=!1,this.morphTargets=!1,this.morphNormals=!1,this.flatShading=!1,this.vertexTangents=!1,this.setValues(t)}copy(t){return super.copy(t),this.defines={STANDARD:""},this.color.copy(t.color),this.roughness=t.roughness,this.metalness=t.metalness,this.map=t.map,this.lightMap=t.lightMap,this.lightMapIntensity=t.lightMapIntensity,this.aoMap=t.aoMap,this.aoMapIntensity=t.aoMapIntensity,this.emissive.copy(t.emissive),this.emissiveMap=t.emissiveMap,this.emissiveIntensity=t.emissiveIntensity,this.bumpMap=t.bumpMap,this.bumpScale=t.bumpScale,this.normalMap=t.normalMap,this.normalMapType=t.normalMapType,this.normalScale.copy(t.normalScale),this.displacementMap=t.displacementMap,this.displacementScale=t.displacementScale,this.displacementBias=t.displacementBias,this.roughnessMap=t.roughnessMap,this.metalnessMap=t.metalnessMap,this.alphaMap=t.alphaMap,this.envMap=t.envMap,this.envMapIntensity=t.envMapIntensity,this.refractionRatio=t.refractionRatio,this.wireframe=t.wireframe,this.wireframeLinewidth=t.wireframeLinewidth,this.wireframeLinecap=t.wireframeLinecap,this.wireframeLinejoin=t.wireframeLinejoin,this.skinning=t.skinning,this.morphTargets=t.morphTargets,this.morphNormals=t.morphNormals,this.flatShading=t.flatShading,this.vertexTangents=t.vertexTangents,this}}No.prototype.isMeshStandardMaterial=!0;class Bo extends No{constructor(t){super(),this.defines={STANDARD:"",PHYSICAL:""},this.type="MeshPhysicalMaterial",this.clearcoat=0,this.clearcoatMap=null,this.clearcoatRoughness=0,this.clearcoatRoughnessMap=null,this.clearcoatNormalScale=new vt(1,1),this.clearcoatNormalMap=null,this.reflectivity=.5,Object.defineProperty(this,"ior",{get:function(){return(1+.4*this.reflectivity)/(1-.4*this.reflectivity)},set:function(t){this.reflectivity=ht(2.5*(t-1)/(t+1),0,1)}}),this.sheen=null,this.transmission=0,this.transmissionMap=null,this.setValues(t)}copy(t){return super.copy(t),this.defines={STANDARD:"",PHYSICAL:""},this.clearcoat=t.clearcoat,this.clearcoatMap=t.clearcoatMap,this.clearcoatRoughness=t.clearcoatRoughness,this.clearcoatRoughnessMap=t.clearcoatRoughnessMap,this.clearcoatNormalMap=t.clearcoatNormalMap,this.clearcoatNormalScale.copy(t.clearcoatNormalScale),this.reflectivity=t.reflectivity,t.sheen?this.sheen=(this.sheen||new tn).copy(t.sheen):this.sheen=null,this.transmission=t.transmission,this.transmissionMap=t.transmissionMap,this}}Bo.prototype.isMeshPhysicalMaterial=!0;class zo extends Xe{constructor(t){super(),this.type="MeshPhongMaterial",this.color=new tn(16777215),this.specular=new tn(1118481),this.shininess=30,this.map=null,this.lightMap=null,this.lightMapIntensity=1,this.aoMap=null,this.aoMapIntensity=1,this.emissive=new tn(0),this.emissiveIntensity=1,this.emissiveMap=null,this.bumpMap=null,this.bumpScale=1,this.normalMap=null,this.normalMapType=0,this.normalScale=new vt(1,1),this.displacementMap=null,this.displacementScale=1,this.displacementBias=0,this.specularMap=null,this.alphaMap=null,this.envMap=null,this.combine=0,this.reflectivity=1,this.refractionRatio=.98,this.wireframe=!1,this.wireframeLinewidth=1,this.wireframeLinecap="round",this.wireframeLinejoin="round",this.skinning=!1,this.morphTargets=!1,this.morphNormals=!1,this.flatShading=!1,this.setValues(t)}copy(t){return super.copy(t),this.color.copy(t.color),this.specular.copy(t.specular),this.shininess=t.shininess,this.map=t.map,this.lightMap=t.lightMap,this.lightMapIntensity=t.lightMapIntensity,this.aoMap=t.aoMap,this.aoMapIntensity=t.aoMapIntensity,this.emissive.copy(t.emissive),this.emissiveMap=t.emissiveMap,this.emissiveIntensity=t.emissiveIntensity,this.bumpMap=t.bumpMap,this.bumpScale=t.bumpScale,this.normalMap=t.normalMap,this.normalMapType=t.normalMapType,this.normalScale.copy(t.normalScale),this.displacementMap=t.displacementMap,this.displacementScale=t.displacementScale,this.displacementBias=t.displacementBias,this.specularMap=t.specularMap,this.alphaMap=t.alphaMap,this.envMap=t.envMap,this.combine=t.combine,this.reflectivity=t.reflectivity,this.refractionRatio=t.refractionRatio,this.wireframe=t.wireframe,this.wireframeLinewidth=t.wireframeLinewidth,this.wireframeLinecap=t.wireframeLinecap,this.wireframeLinejoin=t.wireframeLinejoin,this.skinning=t.skinning,this.morphTargets=t.morphTargets,this.morphNormals=t.morphNormals,this.flatShading=t.flatShading,this}}zo.prototype.isMeshPhongMaterial=!0;class Fo extends Xe{constructor(t){super(),this.defines={TOON:""},this.type="MeshToonMaterial",this.color=new tn(16777215),this.map=null,this.gradientMap=null,this.lightMap=null,this.lightMapIntensity=1,this.aoMap=null,this.aoMapIntensity=1,this.emissive=new tn(0),this.emissiveIntensity=1,this.emissiveMap=null,this.bumpMap=null,this.bumpScale=1,this.normalMap=null,this.normalMapType=0,this.normalScale=new vt(1,1),this.displacementMap=null,this.displacementScale=1,this.displacementBias=0,this.alphaMap=null,this.wireframe=!1,this.wireframeLinewidth=1,this.wireframeLinecap="round",this.wireframeLinejoin="round",this.skinning=!1,this.morphTargets=!1,this.morphNormals=!1,this.setValues(t)}copy(t){return super.copy(t),this.color.copy(t.color),this.map=t.map,this.gradientMap=t.gradientMap,this.lightMap=t.lightMap,this.lightMapIntensity=t.lightMapIntensity,this.aoMap=t.aoMap,this.aoMapIntensity=t.aoMapIntensity,this.emissive.copy(t.emissive),this.emissiveMap=t.emissiveMap,this.emissiveIntensity=t.emissiveIntensity,this.bumpMap=t.bumpMap,this.bumpScale=t.bumpScale,this.normalMap=t.normalMap,this.normalMapType=t.normalMapType,this.normalScale.copy(t.normalScale),this.displacementMap=t.displacementMap,this.displacementScale=t.displacementScale,this.displacementBias=t.displacementBias,this.alphaMap=t.alphaMap,this.wireframe=t.wireframe,this.wireframeLinewidth=t.wireframeLinewidth,this.wireframeLinecap=t.wireframeLinecap,this.wireframeLinejoin=t.wireframeLinejoin,this.skinning=t.skinning,this.morphTargets=t.morphTargets,this.morphNormals=t.morphNormals,this}}Fo.prototype.isMeshToonMaterial=!0;class Oo extends Xe{constructor(t){super(),this.type="MeshNormalMaterial",this.bumpMap=null,this.bumpScale=1,this.normalMap=null,this.normalMapType=0,this.normalScale=new vt(1,1),this.displacementMap=null,this.displacementScale=1,this.displacementBias=0,this.wireframe=!1,this.wireframeLinewidth=1,this.fog=!1,this.skinning=!1,this.morphTargets=!1,this.morphNormals=!1,this.flatShading=!1,this.setValues(t)}copy(t){return super.copy(t),this.bumpMap=t.bumpMap,this.bumpScale=t.bumpScale,this.normalMap=t.normalMap,this.normalMapType=t.normalMapType,this.normalScale.copy(t.normalScale),this.displacementMap=t.displacementMap,this.displacementScale=t.displacementScale,this.displacementBias=t.displacementBias,this.wireframe=t.wireframe,this.wireframeLinewidth=t.wireframeLinewidth,this.skinning=t.skinning,this.morphTargets=t.morphTargets,this.morphNormals=t.morphNormals,this.flatShading=t.flatShading,this}}Oo.prototype.isMeshNormalMaterial=!0;class Ho extends Xe{constructor(t){super(),this.type="MeshLambertMaterial",this.color=new tn(16777215),this.map=null,this.lightMap=null,this.lightMapIntensity=1,this.aoMap=null,this.aoMapIntensity=1,this.emissive=new tn(0),this.emissiveIntensity=1,this.emissiveMap=null,this.specularMap=null,this.alphaMap=null,this.envMap=null,this.combine=0,this.reflectivity=1,this.refractionRatio=.98,this.wireframe=!1,this.wireframeLinewidth=1,this.wireframeLinecap="round",this.wireframeLinejoin="round",this.skinning=!1,this.morphTargets=!1,this.morphNormals=!1,this.setValues(t)}copy(t){return super.copy(t),this.color.copy(t.color),this.map=t.map,this.lightMap=t.lightMap,this.lightMapIntensity=t.lightMapIntensity,this.aoMap=t.aoMap,this.aoMapIntensity=t.aoMapIntensity,this.emissive.copy(t.emissive),this.emissiveMap=t.emissiveMap,this.emissiveIntensity=t.emissiveIntensity,this.specularMap=t.specularMap,this.alphaMap=t.alphaMap,this.envMap=t.envMap,this.combine=t.combine,this.reflectivity=t.reflectivity,this.refractionRatio=t.refractionRatio,this.wireframe=t.wireframe,this.wireframeLinewidth=t.wireframeLinewidth,this.wireframeLinecap=t.wireframeLinecap,this.wireframeLinejoin=t.wireframeLinejoin,this.skinning=t.skinning,this.morphTargets=t.morphTargets,this.morphNormals=t.morphNormals,this}}Ho.prototype.isMeshLambertMaterial=!0;class Go extends Xe{constructor(t){super(),this.defines={MATCAP:""},this.type="MeshMatcapMaterial",this.color=new tn(16777215),this.matcap=null,this.map=null,this.bumpMap=null,this.bumpScale=1,this.normalMap=null,this.normalMapType=0,this.normalScale=new vt(1,1),this.displacementMap=null,this.displacementScale=1,this.displacementBias=0,this.alphaMap=null,this.skinning=!1,this.morphTargets=!1,this.morphNormals=!1,this.flatShading=!1,this.setValues(t)}copy(t){return super.copy(t),this.defines={MATCAP:""},this.color.copy(t.color),this.matcap=t.matcap,this.map=t.map,this.bumpMap=t.bumpMap,this.bumpScale=t.bumpScale,this.normalMap=t.normalMap,this.normalMapType=t.normalMapType,this.normalScale.copy(t.normalScale),this.displacementMap=t.displacementMap,this.displacementScale=t.displacementScale,this.displacementBias=t.displacementBias,this.alphaMap=t.alphaMap,this.skinning=t.skinning,this.morphTargets=t.morphTargets,this.morphNormals=t.morphNormals,this.flatShading=t.flatShading,this}}Go.prototype.isMeshMatcapMaterial=!0;class Uo extends ca{constructor(t){super(),this.type="LineDashedMaterial",this.scale=1,this.dashSize=3,this.gapSize=1,this.setValues(t)}copy(t){return super.copy(t),this.scale=t.scale,this.dashSize=t.dashSize,this.gapSize=t.gapSize,this}}Uo.prototype.isLineDashedMaterial=!0;var ko=Object.freeze({__proto__:null,ShadowMaterial:Do,SpriteMaterial:Rs,RawShaderMaterial:Io,ShaderMaterial:Jn,PointsMaterial:_a,MeshPhysicalMaterial:Bo,MeshStandardMaterial:No,MeshPhongMaterial:zo,MeshToonMaterial:Fo,MeshNormalMaterial:Oo,MeshLambertMaterial:Ho,MeshDepthMaterial:cs,MeshDistanceMaterial:hs,MeshBasicMaterial:en,MeshMatcapMaterial:Go,LineDashedMaterial:Uo,LineBasicMaterial:ca,Material:Xe});const Vo={arraySlice:function(t,e,n){return Vo.isTypedArray(t)?new t.constructor(t.subarray(e,void 0!==n?n:t.length)):t.slice(e,n)},convertArray:function(t,e,n){return!t||!n&amp;&amp;t.constructor===e?t:"number"==typeof e.BYTES_PER_ELEMENT?new e(t):Array.prototype.slice.call(t)},isTypedArray:function(t){return ArrayBuffer.isView(t)&amp;&amp;!(t instanceof DataView)},getKeyframeOrder:function(t){const e=t.length,n=new Array(e);for(let t=0;t!==e;++t)n[t]=t;return n.sort((function(e,n){return t[e]-t[n]})),n},sortedArray:function(t,e,n){const i=t.length,r=new t.constructor(i);for(let s=0,a=0;a!==i;++s){const i=n[s]*e;for(let n=0;n!==e;++n)r[a++]=t[i+n]}return r},flattenJSON:function(t,e,n,i){let r=1,s=t[0];for(;void 0!==s&amp;&amp;void 0===s[i];)s=t[r++];if(void 0===s)return;let a=s[i];if(void 0!==a)if(Array.isArray(a))do{a=s[i],void 0!==a&amp;&amp;(e.push(s.time),n.push.apply(n,a)),s=t[r++]}while(void 0!==s);else if(void 0!==a.toArray)do{a=s[i],void 0!==a&amp;&amp;(e.push(s.time),a.toArray(n,n.length)),s=t[r++]}while(void 0!==s);else do{a=s[i],void 0!==a&amp;&amp;(e.push(s.time),n.push(a)),s=t[r++]}while(void 0!==s)},subclip:function(t,e,n,i,r=30){const s=t.clone();s.name=e;const a=[];for(let t=0;t&lt;s.tracks.length;++t){const e=s.tracks[t],o=e.getValueSize(),l=[],c=[];for(let t=0;t&lt;e.times.length;++t){const s=e.times[t]*r;if(!(s&lt;n||s&gt;=i)){l.push(e.times[t]);for(let n=0;n&lt;o;++n)c.push(e.values[t*o+n])}}0!==l.length&amp;&amp;(e.times=Vo.convertArray(l,e.times.constructor),e.values=Vo.convertArray(c,e.values.constructor),a.push(e))}s.tracks=a;let o=1/0;for(let t=0;t&lt;s.tracks.length;++t)o&gt;s.tracks[t].times[0]&amp;&amp;(o=s.tracks[t].times[0]);for(let t=0;t&lt;s.tracks.length;++t)s.tracks[t].shift(-1*o);return s.resetDuration(),s},makeClipAdditive:function(t,e=0,n=t,i=30){i&lt;=0&amp;&amp;(i=30);const r=n.tracks.length,s=e/i;for(let e=0;e&lt;r;++e){const i=n.tracks[e],r=i.ValueTypeName;if("bool"===r||"string"===r)continue;const a=t.tracks.find((function(t){return t.name===i.name&amp;&amp;t.ValueTypeName===r}));if(void 0===a)continue;let o=0;const l=i.getValueSize();i.createInterpolant.isInterpolantFactoryMethodGLTFCubicSpline&amp;&amp;(o=l/3);let c=0;const h=a.getValueSize();a.createInterpolant.isInterpolantFactoryMethodGLTFCubicSpline&amp;&amp;(c=h/3);const u=i.times.length-1;let d;if(s&lt;=i.times[0]){const t=o,e=l-o;d=Vo.arraySlice(i.values,t,e)}else if(s&gt;=i.times[u]){const t=u*l+o,e=t+l-o;d=Vo.arraySlice(i.values,t,e)}else{const t=i.createInterpolant(),e=o,n=l-o;t.evaluate(s),d=Vo.arraySlice(t.resultBuffer,e,n)}if("quaternion"===r){(new At).fromArray(d).normalize().conjugate().toArray(d)}const p=a.times.length;for(let t=0;t&lt;p;++t){const e=t*h+c;if("quaternion"===r)At.multiplyQuaternionsFlat(a.values,e,d,0,a.values,e);else{const t=h-2*c;for(let n=0;n&lt;t;++n)a.values[e+n]-=d[n]}}}return t.blendMode=q,t}};class Wo{constructor(t,e,n,i){this.parameterPositions=t,this._cachedIndex=0,this.resultBuffer=void 0!==i?i:new e.constructor(n),this.sampleValues=e,this.valueSize=n,this.settings=null,this.DefaultSettings_={}}evaluate(t){const e=this.parameterPositions;let n=this._cachedIndex,i=e[n],r=e[n-1];t:{e:{let s;n:{i:if(!(t&lt;i)){for(let s=n+2;;){if(void 0===i){if(t&lt;r)break i;return n=e.length,this._cachedIndex=n,this.afterEnd_(n-1,t,r)}if(n===s)break;if(r=i,i=e[++n],t&lt;i)break e}s=e.length;break n}if(t&gt;=r)break t;{const a=e[1];t&lt;a&amp;&amp;(n=2,r=a);for(let s=n-2;;){if(void 0===r)return this._cachedIndex=0,this.beforeStart_(0,t,i);if(n===s)break;if(i=r,r=e[--n-1],t&gt;=r)break e}s=n,n=0}}for(;n&lt;s;){const i=n+s&gt;&gt;&gt;1;t&lt;e[i]?s=i:n=i+1}if(i=e[n],r=e[n-1],void 0===r)return this._cachedIndex=0,this.beforeStart_(0,t,i);if(void 0===i)return n=e.length,this._cachedIndex=n,this.afterEnd_(n-1,r,t)}this._cachedIndex=n,this.intervalChanged_(n,r,i)}return this.interpolate_(n,r,t,i)}getSettings_(){return this.settings||this.DefaultSettings_}copySampleValue_(t){const e=this.resultBuffer,n=this.sampleValues,i=this.valueSize,r=t*i;for(let t=0;t!==i;++t)e[t]=n[r+t];return e}interpolate_(){throw new Error("call to abstract method")}intervalChanged_(){}}Wo.prototype.beforeStart_=Wo.prototype.copySampleValue_,Wo.prototype.afterEnd_=Wo.prototype.copySampleValue_;class jo extends Wo{constructor(t,e,n,i){super(t,e,n,i),this._weightPrev=-0,this._offsetPrev=-0,this._weightNext=-0,this._offsetNext=-0,this.DefaultSettings_={endingStart:k,endingEnd:k}}intervalChanged_(t,e,n){const i=this.parameterPositions;let r=t-2,s=t+1,a=i[r],o=i[s];if(void 0===a)switch(this.getSettings_().endingStart){case V:r=t,a=2*e-n;break;case W:r=i.length-2,a=e+i[r]-i[r+1];break;default:r=t,a=n}if(void 0===o)switch(this.getSettings_().endingEnd){case V:s=t,o=2*n-e;break;case W:s=1,o=n+i[1]-i[0];break;default:s=t-1,o=e}const l=.5*(n-e),c=this.valueSize;this._weightPrev=l/(e-a),this._weightNext=l/(o-n),this._offsetPrev=r*c,this._offsetNext=s*c}interpolate_(t,e,n,i){const r=this.resultBuffer,s=this.sampleValues,a=this.valueSize,o=t*a,l=o-a,c=this._offsetPrev,h=this._offsetNext,u=this._weightPrev,d=this._weightNext,p=(n-e)/(i-e),m=p*p,f=m*p,g=-u*f+2*u*m-u*p,v=(1+u)*f+(-1.5-2*u)*m+(-.5+u)*p+1,y=(-1-d)*f+(1.5+d)*m+.5*p,x=d*f-d*m;for(let t=0;t!==a;++t)r[t]=g*s[c+t]+v*s[l+t]+y*s[o+t]+x*s[h+t];return r}}class qo extends Wo{constructor(t,e,n,i){super(t,e,n,i)}interpolate_(t,e,n,i){const r=this.resultBuffer,s=this.sampleValues,a=this.valueSize,o=t*a,l=o-a,c=(n-e)/(i-e),h=1-c;for(let t=0;t!==a;++t)r[t]=s[l+t]*h+s[o+t]*c;return r}}class Xo extends Wo{constructor(t,e,n,i){super(t,e,n,i)}interpolate_(t){return this.copySampleValue_(t-1)}}class Yo{constructor(t,e,n,i){if(void 0===t)throw new Error("THREE.KeyframeTrack: track name is undefined");if(void 0===e||0===e.length)throw new Error("THREE.KeyframeTrack: no keyframes in track named "+t);this.name=t,this.times=Vo.convertArray(e,this.TimeBufferType),this.values=Vo.convertArray(n,this.ValueBufferType),this.setInterpolation(i||this.DefaultInterpolation)}static toJSON(t){const e=t.constructor;let n;if(e.toJSON!==this.toJSON)n=e.toJSON(t);else{n={name:t.name,times:Vo.convertArray(t.times,Array),values:Vo.convertArray(t.values,Array)};const e=t.getInterpolation();e!==t.DefaultInterpolation&amp;&amp;(n.interpolation=e)}return n.type=t.ValueTypeName,n}InterpolantFactoryMethodDiscrete(t){return new Xo(this.times,this.values,this.getValueSize(),t)}InterpolantFactoryMethodLinear(t){return new qo(this.times,this.values,this.getValueSize(),t)}InterpolantFactoryMethodSmooth(t){return new jo(this.times,this.values,this.getValueSize(),t)}setInterpolation(t){let e;switch(t){case H:e=this.InterpolantFactoryMethodDiscrete;break;case G:e=this.InterpolantFactoryMethodLinear;break;case U:e=this.InterpolantFactoryMethodSmooth}if(void 0===e){const e="unsupported interpolation for "+this.ValueTypeName+" keyframe track named "+this.name;if(void 0===this.createInterpolant){if(t===this.DefaultInterpolation)throw new Error(e);this.setInterpolation(this.DefaultInterpolation)}return console.warn("THREE.KeyframeTrack:",e),this}return this.createInterpolant=e,this}getInterpolation(){switch(this.createInterpolant){case this.InterpolantFactoryMethodDiscrete:return H;case this.InterpolantFactoryMethodLinear:return G;case this.InterpolantFactoryMethodSmooth:return U}}getValueSize(){return this.values.length/this.times.length}shift(t){if(0!==t){const e=this.times;for(let n=0,i=e.length;n!==i;++n)e[n]+=t}return this}scale(t){if(1!==t){const e=this.times;for(let n=0,i=e.length;n!==i;++n)e[n]*=t}return this}trim(t,e){const n=this.times,i=n.length;let r=0,s=i-1;for(;r!==i&amp;&amp;n[r]&lt;t;)++r;for(;-1!==s&amp;&amp;n[s]&gt;e;)--s;if(++s,0!==r||s!==i){r&gt;=s&amp;&amp;(s=Math.max(s,1),r=s-1);const t=this.getValueSize();this.times=Vo.arraySlice(n,r,s),this.values=Vo.arraySlice(this.values,r*t,s*t)}return this}validate(){let t=!0;const e=this.getValueSize();e-Math.floor(e)!=0&amp;&amp;(console.error("THREE.KeyframeTrack: Invalid value size in track.",this),t=!1);const n=this.times,i=this.values,r=n.length;0===r&amp;&amp;(console.error("THREE.KeyframeTrack: Track is empty.",this),t=!1);let s=null;for(let e=0;e!==r;e++){const i=n[e];if("number"==typeof i&amp;&amp;isNaN(i)){console.error("THREE.KeyframeTrack: Time is not a valid number.",this,e,i),t=!1;break}if(null!==s&amp;&amp;s&gt;i){console.error("THREE.KeyframeTrack: Out of order keys.",this,e,i,s),t=!1;break}s=i}if(void 0!==i&amp;&amp;Vo.isTypedArray(i))for(let e=0,n=i.length;e!==n;++e){const n=i[e];if(isNaN(n)){console.error("THREE.KeyframeTrack: Value is not a valid number.",this,e,n),t=!1;break}}return t}optimize(){const t=Vo.arraySlice(this.times),e=Vo.arraySlice(this.values),n=this.getValueSize(),i=this.getInterpolation()===U,r=t.length-1;let s=1;for(let a=1;a&lt;r;++a){let r=!1;const o=t[a];if(o!==t[a+1]&amp;&amp;(1!==a||o!==t[0]))if(i)r=!0;else{const t=a*n,i=t-n,s=t+n;for(let a=0;a!==n;++a){const n=e[t+a];if(n!==e[i+a]||n!==e[s+a]){r=!0;break}}}if(r){if(a!==s){t[s]=t[a];const i=a*n,r=s*n;for(let t=0;t!==n;++t)e[r+t]=e[i+t]}++s}}if(r&gt;0){t[s]=t[r];for(let t=r*n,i=s*n,a=0;a!==n;++a)e[i+a]=e[t+a];++s}return s!==t.length?(this.times=Vo.arraySlice(t,0,s),this.values=Vo.arraySlice(e,0,s*n)):(this.times=t,this.values=e),this}clone(){const t=Vo.arraySlice(this.times,0),e=Vo.arraySlice(this.values,0),n=new(0,this.constructor)(this.name,t,e);return n.createInterpolant=this.createInterpolant,n}}Yo.prototype.TimeBufferType=Float32Array,Yo.prototype.ValueBufferType=Float32Array,Yo.prototype.DefaultInterpolation=G;class Zo extends Yo{}Zo.prototype.ValueTypeName="bool",Zo.prototype.ValueBufferType=Array,Zo.prototype.DefaultInterpolation=H,Zo.prototype.InterpolantFactoryMethodLinear=void 0,Zo.prototype.InterpolantFactoryMethodSmooth=void 0;class Jo extends Yo{}Jo.prototype.ValueTypeName="color";class Qo extends Yo{}Qo.prototype.ValueTypeName="number";class Ko extends Wo{constructor(t,e,n,i){super(t,e,n,i)}interpolate_(t,e,n,i){const r=this.resultBuffer,s=this.sampleValues,a=this.valueSize,o=(n-e)/(i-e);let l=t*a;for(let t=l+a;l!==t;l+=4)At.slerpFlat(r,0,s,l-a,s,l,o);return r}}class $o extends Yo{InterpolantFactoryMethodLinear(t){return new Ko(this.times,this.values,this.getValueSize(),t)}}$o.prototype.ValueTypeName="quaternion",$o.prototype.DefaultInterpolation=G,$o.prototype.InterpolantFactoryMethodSmooth=void 0;class tl extends Yo{}tl.prototype.ValueTypeName="string",tl.prototype.ValueBufferType=Array,tl.prototype.DefaultInterpolation=H,tl.prototype.InterpolantFactoryMethodLinear=void 0,tl.prototype.InterpolantFactoryMethodSmooth=void 0;class el extends Yo{}el.prototype.ValueTypeName="vector";class nl{constructor(t,e=-1,n,i=2500){this.name=t,this.tracks=n,this.duration=e,this.blendMode=i,this.uuid=ct(),this.duration&lt;0&amp;&amp;this.resetDuration()}static parse(t){const e=[],n=t.tracks,i=1/(t.fps||1);for(let t=0,r=n.length;t!==r;++t)e.push(il(n[t]).scale(i));const r=new this(t.name,t.duration,e,t.blendMode);return r.uuid=t.uuid,r}static toJSON(t){const e=[],n=t.tracks,i={name:t.name,duration:t.duration,tracks:e,uuid:t.uuid,blendMode:t.blendMode};for(let t=0,i=n.length;t!==i;++t)e.push(Yo.toJSON(n[t]));return i}static CreateFromMorphTargetSequence(t,e,n,i){const r=e.length,s=[];for(let t=0;t&lt;r;t++){let a=[],o=[];a.push((t+r-1)%r,t,(t+1)%r),o.push(0,1,0);const l=Vo.getKeyframeOrder(a);a=Vo.sortedArray(a,1,l),o=Vo.sortedArray(o,1,l),i||0!==a[0]||(a.push(r),o.push(o[0])),s.push(new Qo(".morphTargetInfluences["+e[t].name+"]",a,o).scale(1/n))}return new this(t,-1,s)}static findByName(t,e){let n=t;if(!Array.isArray(t)){const e=t;n=e.geometry&amp;&amp;e.geometry.animations||e.animations}for(let t=0;t&lt;n.length;t++)if(n[t].name===e)return n[t];return null}static CreateClipsFromMorphTargetSequences(t,e,n){const i={},r=/^([\w-]*?)([\d]+)$/;for(let e=0,n=t.length;e&lt;n;e++){const n=t[e],s=n.name.match(r);if(s&amp;&amp;s.length&gt;1){const t=s[1];let e=i[t];e||(i[t]=e=[]),e.push(n)}}const s=[];for(const t in i)s.push(this.CreateFromMorphTargetSequence(t,i[t],e,n));return s}static parseAnimation(t,e){if(!t)return console.error("THREE.AnimationClip: No animation in JSONLoader data."),null;const n=function(t,e,n,i,r){if(0!==n.length){const s=[],a=[];Vo.flattenJSON(n,s,a,i),0!==s.length&amp;&amp;r.push(new t(e,s,a))}},i=[],r=t.name||"default",s=t.fps||30,a=t.blendMode;let o=t.length||-1;const l=t.hierarchy||[];for(let t=0;t&lt;l.length;t++){const r=l[t].keys;if(r&amp;&amp;0!==r.length)if(r[0].morphTargets){const t={};let e;for(e=0;e&lt;r.length;e++)if(r[e].morphTargets)for(let n=0;n&lt;r[e].morphTargets.length;n++)t[r[e].morphTargets[n]]=-1;for(const n in t){const t=[],s=[];for(let i=0;i!==r[e].morphTargets.length;++i){const i=r[e];t.push(i.time),s.push(i.morphTarget===n?1:0)}i.push(new Qo(".morphTargetInfluence["+n+"]",t,s))}o=t.length*(s||1)}else{const s=".bones["+e[t].name+"]";n(el,s+".position",r,"pos",i),n($o,s+".quaternion",r,"rot",i),n(el,s+".scale",r,"scl",i)}}if(0===i.length)return null;return new this(r,o,i,a)}resetDuration(){let t=0;for(let e=0,n=this.tracks.length;e!==n;++e){const n=this.tracks[e];t=Math.max(t,n.times[n.times.length-1])}return this.duration=t,this}trim(){for(let t=0;t&lt;this.tracks.length;t++)this.tracks[t].trim(0,this.duration);return this}validate(){let t=!0;for(let e=0;e&lt;this.tracks.length;e++)t=t&amp;&amp;this.tracks[e].validate();return t}optimize(){for(let t=0;t&lt;this.tracks.length;t++)this.tracks[t].optimize();return this}clone(){const t=[];for(let e=0;e&lt;this.tracks.length;e++)t.push(this.tracks[e].clone());return new this.constructor(this.name,this.duration,t,this.blendMode)}toJSON(){return this.constructor.toJSON(this)}}function il(t){if(void 0===t.type)throw new Error("THREE.KeyframeTrack: track type undefined, can not parse");const e=function(t){switch(t.toLowerCase()){case"scalar":case"double":case"float":case"number":case"integer":return Qo;case"vector":case"vector2":case"vector3":case"vector4":return el;case"color":return Jo;case"quaternion":return $o;case"bool":case"boolean":return Zo;case"string":return tl}throw new Error("THREE.KeyframeTrack: Unsupported typeName: "+t)}(t.type);if(void 0===t.times){const e=[],n=[];Vo.flattenJSON(t.keys,e,n,"value"),t.times=e,t.values=n}return void 0!==e.parse?e.parse(t):new e(t.name,t.times,t.values,t.interpolation)}const rl={enabled:!1,files:{},add:function(t,e){!1!==this.enabled&amp;&amp;(this.files[t]=e)},get:function(t){if(!1!==this.enabled)return this.files[t]},remove:function(t){delete this.files[t]},clear:function(){this.files={}}};class sl{constructor(t,e,n){const i=this;let r,s=!1,a=0,o=0;const l=[];this.onStart=void 0,this.onLoad=t,this.onProgress=e,this.onError=n,this.itemStart=function(t){o++,!1===s&amp;&amp;void 0!==i.onStart&amp;&amp;i.onStart(t,a,o),s=!0},this.itemEnd=function(t){a++,void 0!==i.onProgress&amp;&amp;i.onProgress(t,a,o),a===o&amp;&amp;(s=!1,void 0!==i.onLoad&amp;&amp;i.onLoad())},this.itemError=function(t){void 0!==i.onError&amp;&amp;i.onError(t)},this.resolveURL=function(t){return r?r(t):t},this.setURLModifier=function(t){return r=t,this},this.addHandler=function(t,e){return l.push(t,e),this},this.removeHandler=function(t){const e=l.indexOf(t);return-1!==e&amp;&amp;l.splice(e,2),this},this.getHandler=function(t){for(let e=0,n=l.length;e&lt;n;e+=2){const n=l[e],i=l[e+1];if(n.global&amp;&amp;(n.lastIndex=0),n.test(t))return i}return null}}}const al=new sl;class ol{constructor(t){this.manager=void 0!==t?t:al,this.crossOrigin="anonymous",this.withCredentials=!1,this.path="",this.resourcePath="",this.requestHeader={}}load(){}loadAsync(t,e){const n=this;return new Promise((function(i,r){n.load(t,i,e,r)}))}parse(){}setCrossOrigin(t){return this.crossOrigin=t,this}setWithCredentials(t){return this.withCredentials=t,this}setPath(t){return this.path=t,this}setResourcePath(t){return this.resourcePath=t,this}setRequestHeader(t){return this.requestHeader=t,this}}const ll={};class cl extends ol{constructor(t){super(t)}load(t,e,n,i){void 0===t&amp;&amp;(t=""),void 0!==this.path&amp;&amp;(t=this.path+t),t=this.manager.resolveURL(t);const r=this,s=rl.get(t);if(void 0!==s)return r.manager.itemStart(t),setTimeout((function(){e&amp;&amp;e(s),r.manager.itemEnd(t)}),0),s;if(void 0!==ll[t])return void ll[t].push({onLoad:e,onProgress:n,onError:i});const a=t.match(/^data:(.*?)(;base64)?,(.*)$/);let o;if(a){const n=a[1],s=!!a[2];let o=a[3];o=decodeURIComponent(o),s&amp;&amp;(o=atob(o));try{let i;const s=(this.responseType||"").toLowerCase();switch(s){case"arraybuffer":case"blob":const t=new Uint8Array(o.length);for(let e=0;e&lt;o.length;e++)t[e]=o.charCodeAt(e);i="blob"===s?new Blob([t.buffer],{type:n}):t.buffer;break;case"document":const e=new DOMParser;i=e.parseFromString(o,n);break;case"json":i=JSON.parse(o);break;default:i=o}setTimeout((function(){e&amp;&amp;e(i),r.manager.itemEnd(t)}),0)}catch(e){setTimeout((function(){i&amp;&amp;i(e),r.manager.itemError(t),r.manager.itemEnd(t)}),0)}}else{ll[t]=[],ll[t].push({onLoad:e,onProgress:n,onError:i}),o=new XMLHttpRequest,o.open("GET",t,!0),o.addEventListener("load",(function(e){const n=this.response,i=ll[t];if(delete ll[t],200===this.status||0===this.status){0===this.status&amp;&amp;console.warn("THREE.FileLoader: HTTP Status 0 received."),rl.add(t,n);for(let t=0,e=i.length;t&lt;e;t++){const e=i[t];e.onLoad&amp;&amp;e.onLoad(n)}r.manager.itemEnd(t)}else{for(let t=0,n=i.length;t&lt;n;t++){const n=i[t];n.onError&amp;&amp;n.onError(e)}r.manager.itemError(t),r.manager.itemEnd(t)}}),!1),o.addEventListener("progress",(function(e){const n=ll[t];for(let t=0,i=n.length;t&lt;i;t++){const i=n[t];i.onProgress&amp;&amp;i.onProgress(e)}}),!1),o.addEventListener("error",(function(e){const n=ll[t];delete ll[t];for(let t=0,i=n.length;t&lt;i;t++){const i=n[t];i.onError&amp;&amp;i.onError(e)}r.manager.itemError(t),r.manager.itemEnd(t)}),!1),o.addEventListener("abort",(function(e){const n=ll[t];delete ll[t];for(let t=0,i=n.length;t&lt;i;t++){const i=n[t];i.onError&amp;&amp;i.onError(e)}r.manager.itemError(t),r.manager.itemEnd(t)}),!1),void 0!==this.responseType&amp;&amp;(o.responseType=this.responseType),void 0!==this.withCredentials&amp;&amp;(o.withCredentials=this.withCredentials),o.overrideMimeType&amp;&amp;o.overrideMimeType(void 0!==this.mimeType?this.mimeType:"text/plain");for(const t in this.requestHeader)o.setRequestHeader(t,this.requestHeader[t]);o.send(null)}return r.manager.itemStart(t),o}setResponseType(t){return this.responseType=t,this}setMimeType(t){return this.mimeType=t,this}}class hl extends ol{constructor(t){super(t)}load(t,e,n,i){void 0!==this.path&amp;&amp;(t=this.path+t),t=this.manager.resolveURL(t);const r=this,s=rl.get(t);if(void 0!==s)return r.manager.itemStart(t),setTimeout((function(){e&amp;&amp;e(s),r.manager.itemEnd(t)}),0),s;const a=document.createElementNS("http://www.w3.org/1999/xhtml","img");function o(){a.removeEventListener("load",o,!1),a.removeEventListener("error",l,!1),rl.add(t,this),e&amp;&amp;e(this),r.manager.itemEnd(t)}function l(e){a.removeEventListener("load",o,!1),a.removeEventListener("error",l,!1),i&amp;&amp;i(e),r.manager.itemError(t),r.manager.itemEnd(t)}return a.addEventListener("load",o,!1),a.addEventListener("error",l,!1),"data:"!==t.substr(0,5)&amp;&amp;void 0!==this.crossOrigin&amp;&amp;(a.crossOrigin=this.crossOrigin),r.manager.itemStart(t),a.src=t,a}}class ul extends ol{constructor(t){super(t)}load(t,e,n,i){const r=new ei,s=new hl(this.manager);s.setCrossOrigin(this.crossOrigin),s.setPath(this.path);let a=0;function o(n){s.load(t[n],(function(t){r.images[n]=t,a++,6===a&amp;&amp;(r.needsUpdate=!0,e&amp;&amp;e(r))}),void 0,i)}for(let e=0;e&lt;t.length;++e)o(e);return r}}class dl extends ol{constructor(t){super(t)}load(t,e,n,i){const r=this,s=new ii,a=new cl(this.manager);return a.setResponseType("arraybuffer"),a.setRequestHeader(this.requestHeader),a.setPath(this.path),a.setWithCredentials(r.withCredentials),a.load(t,(function(t){const n=r.parse(t);n&amp;&amp;(void 0!==n.image?s.image=n.image:void 0!==n.data&amp;&amp;(s.image.width=n.width,s.image.height=n.height,s.image.data=n.data),s.wrapS=void 0!==n.wrapS?n.wrapS:u,s.wrapT=void 0!==n.wrapT?n.wrapT:u,s.magFilter=void 0!==n.magFilter?n.magFilter:g,s.minFilter=void 0!==n.minFilter?n.minFilter:g,s.anisotropy=void 0!==n.anisotropy?n.anisotropy:1,void 0!==n.encoding&amp;&amp;(s.encoding=n.encoding),void 0!==n.flipY&amp;&amp;(s.flipY=n.flipY),void 0!==n.format&amp;&amp;(s.format=n.format),void 0!==n.type&amp;&amp;(s.type=n.type),void 0!==n.mipmaps&amp;&amp;(s.mipmaps=n.mipmaps,s.minFilter=y),1===n.mipmapCount&amp;&amp;(s.minFilter=g),void 0!==n.generateMipmaps&amp;&amp;(s.generateMipmaps=n.generateMipmaps),s.needsUpdate=!0,e&amp;&amp;e(s,n))}),n,i),s}}class pl extends ol{constructor(t){super(t)}load(t,e,n,i){const r=new bt,s=new hl(this.manager);return s.setCrossOrigin(this.crossOrigin),s.setPath(this.path),s.load(t,(function(n){r.image=n;const i=t.search(/\.jpe?g($|\?)/i)&gt;0||0===t.search(/^data\:image\/jpeg/);r.format=i?T:E,r.needsUpdate=!0,void 0!==e&amp;&amp;e(r)}),n,i),r}}class ml{constructor(){this.type="Curve",this.arcLengthDivisions=200}getPoint(){return console.warn("THREE.Curve: .getPoint() not implemented."),null}getPointAt(t,e){const n=this.getUtoTmapping(t);return this.getPoint(n,e)}getPoints(t=5){const e=[];for(let n=0;n&lt;=t;n++)e.push(this.getPoint(n/t));return e}getSpacedPoints(t=5){const e=[];for(let n=0;n&lt;=t;n++)e.push(this.getPointAt(n/t));return e}getLength(){const t=this.getLengths();return t[t.length-1]}getLengths(t=this.arcLengthDivisions){if(this.cacheArcLengths&amp;&amp;this.cacheArcLengths.length===t+1&amp;&amp;!this.needsUpdate)return this.cacheArcLengths;this.needsUpdate=!1;const e=[];let n,i=this.getPoint(0),r=0;e.push(0);for(let s=1;s&lt;=t;s++)n=this.getPoint(s/t),r+=n.distanceTo(i),e.push(r),i=n;return this.cacheArcLengths=e,e}updateArcLengths(){this.needsUpdate=!0,this.getLengths()}getUtoTmapping(t,e){const n=this.getLengths();let i=0;const r=n.length;let s;s=e||t*n[r-1];let a,o=0,l=r-1;for(;o&lt;=l;)if(i=Math.floor(o+(l-o)/2),a=n[i]-s,a&lt;0)o=i+1;else{if(!(a&gt;0)){l=i;break}l=i-1}if(i=l,n[i]===s)return i/(r-1);const c=n[i];return(i+(s-c)/(n[i+1]-c))/(r-1)}getTangent(t,e){const n=1e-4;let i=t-n,r=t+n;i&lt;0&amp;&amp;(i=0),r&gt;1&amp;&amp;(r=1);const s=this.getPoint(i),a=this.getPoint(r),o=e||(s.isVector2?new vt:new Lt);return o.copy(a).sub(s).normalize(),o}getTangentAt(t,e){const n=this.getUtoTmapping(t);return this.getTangent(n,e)}computeFrenetFrames(t,e){const n=new Lt,i=[],r=[],s=[],a=new Lt,o=new se;for(let e=0;e&lt;=t;e++){const n=e/t;i[e]=this.getTangentAt(n,new Lt),i[e].normalize()}r[0]=new Lt,s[0]=new Lt;let l=Number.MAX_VALUE;const c=Math.abs(i[0].x),h=Math.abs(i[0].y),u=Math.abs(i[0].z);c&lt;=l&amp;&amp;(l=c,n.set(1,0,0)),h&lt;=l&amp;&amp;(l=h,n.set(0,1,0)),u&lt;=l&amp;&amp;n.set(0,0,1),a.crossVectors(i[0],n).normalize(),r[0].crossVectors(i[0],a),s[0].crossVectors(i[0],r[0]);for(let e=1;e&lt;=t;e++){if(r[e]=r[e-1].clone(),s[e]=s[e-1].clone(),a.crossVectors(i[e-1],i[e]),a.length()&gt;Number.EPSILON){a.normalize();const t=Math.acos(ht(i[e-1].dot(i[e]),-1,1));r[e].applyMatrix4(o.makeRotationAxis(a,t))}s[e].crossVectors(i[e],r[e])}if(!0===e){let e=Math.acos(ht(r[0].dot(r[t]),-1,1));e/=t,i[0].dot(a.crossVectors(r[0],r[t]))&gt;0&amp;&amp;(e=-e);for(let n=1;n&lt;=t;n++)r[n].applyMatrix4(o.makeRotationAxis(i[n],e*n)),s[n].crossVectors(i[n],r[n])}return{tangents:i,normals:r,binormals:s}}clone(){return(new this.constructor).copy(this)}copy(t){return this.arcLengthDivisions=t.arcLengthDivisions,this}toJSON(){const t={metadata:{version:4.5,type:"Curve",generator:"Curve.toJSON"}};return t.arcLengthDivisions=this.arcLengthDivisions,t.type=this.type,t}fromJSON(t){return this.arcLengthDivisions=t.arcLengthDivisions,this}}class fl extends ml{constructor(t=0,e=0,n=1,i=1,r=0,s=2*Math.PI,a=!1,o=0){super(),this.type="EllipseCurve",this.aX=t,this.aY=e,this.xRadius=n,this.yRadius=i,this.aStartAngle=r,this.aEndAngle=s,this.aClockwise=a,this.aRotation=o}getPoint(t,e){const n=e||new vt,i=2*Math.PI;let r=this.aEndAngle-this.aStartAngle;const s=Math.abs(r)&lt;Number.EPSILON;for(;r&lt;0;)r+=i;for(;r&gt;i;)r-=i;r&lt;Number.EPSILON&amp;&amp;(r=s?0:i),!0!==this.aClockwise||s||(r===i?r=-i:r-=i);const a=this.aStartAngle+t*r;let o=this.aX+this.xRadius*Math.cos(a),l=this.aY+this.yRadius*Math.sin(a);if(0!==this.aRotation){const t=Math.cos(this.aRotation),e=Math.sin(this.aRotation),n=o-this.aX,i=l-this.aY;o=n*t-i*e+this.aX,l=n*e+i*t+this.aY}return n.set(o,l)}copy(t){return super.copy(t),this.aX=t.aX,this.aY=t.aY,this.xRadius=t.xRadius,this.yRadius=t.yRadius,this.aStartAngle=t.aStartAngle,this.aEndAngle=t.aEndAngle,this.aClockwise=t.aClockwise,this.aRotation=t.aRotation,this}toJSON(){const t=super.toJSON();return t.aX=this.aX,t.aY=this.aY,t.xRadius=this.xRadius,t.yRadius=this.yRadius,t.aStartAngle=this.aStartAngle,t.aEndAngle=this.aEndAngle,t.aClockwise=this.aClockwise,t.aRotation=this.aRotation,t}fromJSON(t){return super.fromJSON(t),this.aX=t.aX,this.aY=t.aY,this.xRadius=t.xRadius,this.yRadius=t.yRadius,this.aStartAngle=t.aStartAngle,this.aEndAngle=t.aEndAngle,this.aClockwise=t.aClockwise,this.aRotation=t.aRotation,this}}fl.prototype.isEllipseCurve=!0;class gl extends fl{constructor(t,e,n,i,r,s){super(t,e,n,n,i,r,s),this.type="ArcCurve"}}function vl(){let t=0,e=0,n=0,i=0;function r(r,s,a,o){t=r,e=a,n=-3*r+3*s-2*a-o,i=2*r-2*s+a+o}return{initCatmullRom:function(t,e,n,i,s){r(e,n,s*(n-t),s*(i-e))},initNonuniformCatmullRom:function(t,e,n,i,s,a,o){let l=(e-t)/s-(n-t)/(s+a)+(n-e)/a,c=(n-e)/a-(i-e)/(a+o)+(i-n)/o;l*=a,c*=a,r(e,n,l,c)},calc:function(r){const s=r*r;return t+e*r+n*s+i*(s*r)}}}gl.prototype.isArcCurve=!0;const yl=new Lt,xl=new vl,_l=new vl,wl=new vl;class bl extends ml{constructor(t=[],e=!1,n="centripetal",i=.5){super(),this.type="CatmullRomCurve3",this.points=t,this.closed=e,this.curveType=n,this.tension=i}getPoint(t,e=new Lt){const n=e,i=this.points,r=i.length,s=(r-(this.closed?0:1))*t;let a,o,l=Math.floor(s),c=s-l;this.closed?l+=l&gt;0?0:(Math.floor(Math.abs(l)/r)+1)*r:0===c&amp;&amp;l===r-1&amp;&amp;(l=r-2,c=1),this.closed||l&gt;0?a=i[(l-1)%r]:(yl.subVectors(i[0],i[1]).add(i[0]),a=yl);const h=i[l%r],u=i[(l+1)%r];if(this.closed||l+2&lt;r?o=i[(l+2)%r]:(yl.subVectors(i[r-1],i[r-2]).add(i[r-1]),o=yl),"centripetal"===this.curveType||"chordal"===this.curveType){const t="chordal"===this.curveType?.5:.25;let e=Math.pow(a.distanceToSquared(h),t),n=Math.pow(h.distanceToSquared(u),t),i=Math.pow(u.distanceToSquared(o),t);n&lt;1e-4&amp;&amp;(n=1),e&lt;1e-4&amp;&amp;(e=n),i&lt;1e-4&amp;&amp;(i=n),xl.initNonuniformCatmullRom(a.x,h.x,u.x,o.x,e,n,i),_l.initNonuniformCatmullRom(a.y,h.y,u.y,o.y,e,n,i),wl.initNonuniformCatmullRom(a.z,h.z,u.z,o.z,e,n,i)}else"catmullrom"===this.curveType&amp;&amp;(xl.initCatmullRom(a.x,h.x,u.x,o.x,this.tension),_l.initCatmullRom(a.y,h.y,u.y,o.y,this.tension),wl.initCatmullRom(a.z,h.z,u.z,o.z,this.tension));return n.set(xl.calc(c),_l.calc(c),wl.calc(c)),n}copy(t){super.copy(t),this.points=[];for(let e=0,n=t.points.length;e&lt;n;e++){const n=t.points[e];this.points.push(n.clone())}return this.closed=t.closed,this.curveType=t.curveType,this.tension=t.tension,this}toJSON(){const t=super.toJSON();t.points=[];for(let e=0,n=this.points.length;e&lt;n;e++){const n=this.points[e];t.points.push(n.toArray())}return t.closed=this.closed,t.curveType=this.curveType,t.tension=this.tension,t}fromJSON(t){super.fromJSON(t),this.points=[];for(let e=0,n=t.points.length;e&lt;n;e++){const n=t.points[e];this.points.push((new Lt).fromArray(n))}return this.closed=t.closed,this.curveType=t.curveType,this.tension=t.tension,this}}function Ml(t,e,n,i,r){const s=.5*(i-e),a=.5*(r-n),o=t*t;return(2*n-2*i+s+a)*(t*o)+(-3*n+3*i-2*s-a)*o+s*t+n}function Sl(t,e,n,i){return function(t,e){const n=1-t;return n*n*e}(t,e)+function(t,e){return 2*(1-t)*t*e}(t,n)+function(t,e){return t*t*e}(t,i)}function Tl(t,e,n,i,r){return function(t,e){const n=1-t;return n*n*n*e}(t,e)+function(t,e){const n=1-t;return 3*n*n*t*e}(t,n)+function(t,e){return 3*(1-t)*t*t*e}(t,i)+function(t,e){return t*t*t*e}(t,r)}bl.prototype.isCatmullRomCurve3=!0;class El extends ml{constructor(t=new vt,e=new vt,n=new vt,i=new vt){super(),this.type="CubicBezierCurve",this.v0=t,this.v1=e,this.v2=n,this.v3=i}getPoint(t,e=new vt){const n=e,i=this.v0,r=this.v1,s=this.v2,a=this.v3;return n.set(Tl(t,i.x,r.x,s.x,a.x),Tl(t,i.y,r.y,s.y,a.y)),n}copy(t){return super.copy(t),this.v0.copy(t.v0),this.v1.copy(t.v1),this.v2.copy(t.v2),this.v3.copy(t.v3),this}toJSON(){const t=super.toJSON();return t.v0=this.v0.toArray(),t.v1=this.v1.toArray(),t.v2=this.v2.toArray(),t.v3=this.v3.toArray(),t}fromJSON(t){return super.fromJSON(t),this.v0.fromArray(t.v0),this.v1.fromArray(t.v1),this.v2.fromArray(t.v2),this.v3.fromArray(t.v3),this}}El.prototype.isCubicBezierCurve=!0;class Al extends ml{constructor(t=new Lt,e=new Lt,n=new Lt,i=new Lt){super(),this.type="CubicBezierCurve3",this.v0=t,this.v1=e,this.v2=n,this.v3=i}getPoint(t,e=new Lt){const n=e,i=this.v0,r=this.v1,s=this.v2,a=this.v3;return n.set(Tl(t,i.x,r.x,s.x,a.x),Tl(t,i.y,r.y,s.y,a.y),Tl(t,i.z,r.z,s.z,a.z)),n}copy(t){return super.copy(t),this.v0.copy(t.v0),this.v1.copy(t.v1),this.v2.copy(t.v2),this.v3.copy(t.v3),this}toJSON(){const t=super.toJSON();return t.v0=this.v0.toArray(),t.v1=this.v1.toArray(),t.v2=this.v2.toArray(),t.v3=this.v3.toArray(),t}fromJSON(t){return super.fromJSON(t),this.v0.fromArray(t.v0),this.v1.fromArray(t.v1),this.v2.fromArray(t.v2),this.v3.fromArray(t.v3),this}}Al.prototype.isCubicBezierCurve3=!0;class Ll extends ml{constructor(t=new vt,e=new vt){super(),this.type="LineCurve",this.v1=t,this.v2=e}getPoint(t,e=new vt){const n=e;return 1===t?n.copy(this.v2):(n.copy(this.v2).sub(this.v1),n.multiplyScalar(t).add(this.v1)),n}getPointAt(t,e){return this.getPoint(t,e)}getTangent(t,e){const n=e||new vt;return n.copy(this.v2).sub(this.v1).normalize(),n}copy(t){return super.copy(t),this.v1.copy(t.v1),this.v2.copy(t.v2),this}toJSON(){const t=super.toJSON();return t.v1=this.v1.toArray(),t.v2=this.v2.toArray(),t}fromJSON(t){return super.fromJSON(t),this.v1.fromArray(t.v1),this.v2.fromArray(t.v2),this}}Ll.prototype.isLineCurve=!0;class Rl extends ml{constructor(t=new Lt,e=new Lt){super(),this.type="LineCurve3",this.isLineCurve3=!0,this.v1=t,this.v2=e}getPoint(t,e=new Lt){const n=e;return 1===t?n.copy(this.v2):(n.copy(this.v2).sub(this.v1),n.multiplyScalar(t).add(this.v1)),n}getPointAt(t,e){return this.getPoint(t,e)}copy(t){return super.copy(t),this.v1.copy(t.v1),this.v2.copy(t.v2),this}toJSON(){const t=super.toJSON();return t.v1=this.v1.toArray(),t.v2=this.v2.toArray(),t}fromJSON(t){return super.fromJSON(t),this.v1.fromArray(t.v1),this.v2.fromArray(t.v2),this}}class Cl extends ml{constructor(t=new vt,e=new vt,n=new vt){super(),this.type="QuadraticBezierCurve",this.v0=t,this.v1=e,this.v2=n}getPoint(t,e=new vt){const n=e,i=this.v0,r=this.v1,s=this.v2;return n.set(Sl(t,i.x,r.x,s.x),Sl(t,i.y,r.y,s.y)),n}copy(t){return super.copy(t),this.v0.copy(t.v0),this.v1.copy(t.v1),this.v2.copy(t.v2),this}toJSON(){const t=super.toJSON();return t.v0=this.v0.toArray(),t.v1=this.v1.toArray(),t.v2=this.v2.toArray(),t}fromJSON(t){return super.fromJSON(t),this.v0.fromArray(t.v0),this.v1.fromArray(t.v1),this.v2.fromArray(t.v2),this}}Cl.prototype.isQuadraticBezierCurve=!0;class Pl extends ml{constructor(t=new Lt,e=new Lt,n=new Lt){super(),this.type="QuadraticBezierCurve3",this.v0=t,this.v1=e,this.v2=n}getPoint(t,e=new Lt){const n=e,i=this.v0,r=this.v1,s=this.v2;return n.set(Sl(t,i.x,r.x,s.x),Sl(t,i.y,r.y,s.y),Sl(t,i.z,r.z,s.z)),n}copy(t){return super.copy(t),this.v0.copy(t.v0),this.v1.copy(t.v1),this.v2.copy(t.v2),this}toJSON(){const t=super.toJSON();return t.v0=this.v0.toArray(),t.v1=this.v1.toArray(),t.v2=this.v2.toArray(),t}fromJSON(t){return super.fromJSON(t),this.v0.fromArray(t.v0),this.v1.fromArray(t.v1),this.v2.fromArray(t.v2),this}}Pl.prototype.isQuadraticBezierCurve3=!0;class Dl extends ml{constructor(t=[]){super(),this.type="SplineCurve",this.points=t}getPoint(t,e=new vt){const n=e,i=this.points,r=(i.length-1)*t,s=Math.floor(r),a=r-s,o=i[0===s?s:s-1],l=i[s],c=i[s&gt;i.length-2?i.length-1:s+1],h=i[s&gt;i.length-3?i.length-1:s+2];return n.set(Ml(a,o.x,l.x,c.x,h.x),Ml(a,o.y,l.y,c.y,h.y)),n}copy(t){super.copy(t),this.points=[];for(let e=0,n=t.points.length;e&lt;n;e++){const n=t.points[e];this.points.push(n.clone())}return this}toJSON(){const t=super.toJSON();t.points=[];for(let e=0,n=this.points.length;e&lt;n;e++){const n=this.points[e];t.points.push(n.toArray())}return t}fromJSON(t){super.fromJSON(t),this.points=[];for(let e=0,n=t.points.length;e&lt;n;e++){const n=t.points[e];this.points.push((new vt).fromArray(n))}return this}}Dl.prototype.isSplineCurve=!0;var Il=Object.freeze({__proto__:null,ArcCurve:gl,CatmullRomCurve3:bl,CubicBezierCurve:El,CubicBezierCurve3:Al,EllipseCurve:fl,LineCurve:Ll,LineCurve3:Rl,QuadraticBezierCurve:Cl,QuadraticBezierCurve3:Pl,SplineCurve:Dl});class Nl extends ml{constructor(){super(),this.type="CurvePath",this.curves=[],this.autoClose=!1}add(t){this.curves.push(t)}closePath(){const t=this.curves[0].getPoint(0),e=this.curves[this.curves.length-1].getPoint(1);t.equals(e)||this.curves.push(new Ll(e,t))}getPoint(t){const e=t*this.getLength(),n=this.getCurveLengths();let i=0;for(;i&lt;n.length;){if(n[i]&gt;=e){const t=n[i]-e,r=this.curves[i],s=r.getLength(),a=0===s?0:1-t/s;return r.getPointAt(a)}i++}return null}getLength(){const t=this.getCurveLengths();return t[t.length-1]}updateArcLengths(){this.needsUpdate=!0,this.cacheLengths=null,this.getCurveLengths()}getCurveLengths(){if(this.cacheLengths&amp;&amp;this.cacheLengths.length===this.curves.length)return this.cacheLengths;const t=[];let e=0;for(let n=0,i=this.curves.length;n&lt;i;n++)e+=this.curves[n].getLength(),t.push(e);return this.cacheLengths=t,t}getSpacedPoints(t=40){const e=[];for(let n=0;n&lt;=t;n++)e.push(this.getPoint(n/t));return this.autoClose&amp;&amp;e.push(e[0]),e}getPoints(t=12){const e=[];let n;for(let i=0,r=this.curves;i&lt;r.length;i++){const s=r[i],a=s&amp;&amp;s.isEllipseCurve?2*t:s&amp;&amp;(s.isLineCurve||s.isLineCurve3)?1:s&amp;&amp;s.isSplineCurve?t*s.points.length:t,o=s.getPoints(a);for(let t=0;t&lt;o.length;t++){const i=o[t];n&amp;&amp;n.equals(i)||(e.push(i),n=i)}}return this.autoClose&amp;&amp;e.length&gt;1&amp;&amp;!e[e.length-1].equals(e[0])&amp;&amp;e.push(e[0]),e}copy(t){super.copy(t),this.curves=[];for(let e=0,n=t.curves.length;e&lt;n;e++){const n=t.curves[e];this.curves.push(n.clone())}return this.autoClose=t.autoClose,this}toJSON(){const t=super.toJSON();t.autoClose=this.autoClose,t.curves=[];for(let e=0,n=this.curves.length;e&lt;n;e++){const n=this.curves[e];t.curves.push(n.toJSON())}return t}fromJSON(t){super.fromJSON(t),this.autoClose=t.autoClose,this.curves=[];for(let e=0,n=t.curves.length;e&lt;n;e++){const n=t.curves[e];this.curves.push((new Il[n.type]).fromJSON(n))}return this}}class Bl extends Nl{constructor(t){super(),this.type="Path",this.currentPoint=new vt,t&amp;&amp;this.setFromPoints(t)}setFromPoints(t){this.moveTo(t[0].x,t[0].y);for(let e=1,n=t.length;e&lt;n;e++)this.lineTo(t[e].x,t[e].y);return this}moveTo(t,e){return this.currentPoint.set(t,e),this}lineTo(t,e){const n=new Ll(this.currentPoint.clone(),new vt(t,e));return this.curves.push(n),this.currentPoint.set(t,e),this}quadraticCurveTo(t,e,n,i){const r=new Cl(this.currentPoint.clone(),new vt(t,e),new vt(n,i));return this.curves.push(r),this.currentPoint.set(n,i),this}bezierCurveTo(t,e,n,i,r,s){const a=new El(this.currentPoint.clone(),new vt(t,e),new vt(n,i),new vt(r,s));return this.curves.push(a),this.currentPoint.set(r,s),this}splineThru(t){const e=[this.currentPoint.clone()].concat(t),n=new Dl(e);return this.curves.push(n),this.currentPoint.copy(t[t.length-1]),this}arc(t,e,n,i,r,s){const a=this.currentPoint.x,o=this.currentPoint.y;return this.absarc(t+a,e+o,n,i,r,s),this}absarc(t,e,n,i,r,s){return this.absellipse(t,e,n,n,i,r,s),this}ellipse(t,e,n,i,r,s,a,o){const l=this.currentPoint.x,c=this.currentPoint.y;return this.absellipse(t+l,e+c,n,i,r,s,a,o),this}absellipse(t,e,n,i,r,s,a,o){const l=new fl(t,e,n,i,r,s,a,o);if(this.curves.length&gt;0){const t=l.getPoint(0);t.equals(this.currentPoint)||this.lineTo(t.x,t.y)}this.curves.push(l);const c=l.getPoint(1);return this.currentPoint.copy(c),this}copy(t){return super.copy(t),this.currentPoint.copy(t.currentPoint),this}toJSON(){const t=super.toJSON();return t.currentPoint=this.currentPoint.toArray(),t}fromJSON(t){return super.fromJSON(t),this.currentPoint.fromArray(t.currentPoint),this}}class zl extends Bl{constructor(t){super(t),this.uuid=ct(),this.type="Shape",this.holes=[]}getPointsHoles(t){const e=[];for(let n=0,i=this.holes.length;n&lt;i;n++)e[n]=this.holes[n].getPoints(t);return e}extractPoints(t){return{shape:this.getPoints(t),holes:this.getPointsHoles(t)}}copy(t){super.copy(t),this.holes=[];for(let e=0,n=t.holes.length;e&lt;n;e++){const n=t.holes[e];this.holes.push(n.clone())}return this}toJSON(){const t=super.toJSON();t.uuid=this.uuid,t.holes=[];for(let e=0,n=this.holes.length;e&lt;n;e++){const n=this.holes[e];t.holes.push(n.toJSON())}return t}fromJSON(t){super.fromJSON(t),this.uuid=t.uuid,this.holes=[];for(let e=0,n=t.holes.length;e&lt;n;e++){const n=t.holes[e];this.holes.push((new Bl).fromJSON(n))}return this}}class Fl extends Ce{constructor(t,e=1){super(),this.type="Light",this.color=new tn(t),this.intensity=e}dispose(){}copy(t){return super.copy(t),this.color.copy(t.color),this.intensity=t.intensity,this}toJSON(t){const e=super.toJSON(t);return e.object.color=this.color.getHex(),e.object.intensity=this.intensity,void 0!==this.groundColor&amp;&amp;(e.object.groundColor=this.groundColor.getHex()),void 0!==this.distance&amp;&amp;(e.object.distance=this.distance),void 0!==this.angle&amp;&amp;(e.object.angle=this.angle),void 0!==this.decay&amp;&amp;(e.object.decay=this.decay),void 0!==this.penumbra&amp;&amp;(e.object.penumbra=this.penumbra),void 0!==this.shadow&amp;&amp;(e.object.shadow=this.shadow.toJSON()),e}}Fl.prototype.isLight=!0;class Ol extends Fl{constructor(t,e,n){super(t,n),this.type="HemisphereLight",this.position.copy(Ce.DefaultUp),this.updateMatrix(),this.groundColor=new tn(e)}copy(t){return Fl.prototype.copy.call(this,t),this.groundColor.copy(t.groundColor),this}}Ol.prototype.isHemisphereLight=!0;const Hl=new se,Gl=new Lt,Ul=new Lt;class kl{constructor(t){this.camera=t,this.bias=0,this.normalBias=0,this.radius=1,this.mapSize=new vt(512,512),this.map=null,this.mapPass=null,this.matrix=new se,this.autoUpdate=!0,this.needsUpdate=!1,this._frustum=new ai,this._frameExtents=new vt(1,1),this._viewportCount=1,this._viewports=[new St(0,0,1,1)]}getViewportCount(){return this._viewportCount}getFrustum(){return this._frustum}updateMatrices(t){const e=this.camera,n=this.matrix;Gl.setFromMatrixPosition(t.matrixWorld),e.position.copy(Gl),Ul.setFromMatrixPosition(t.target.matrixWorld),e.lookAt(Ul),e.updateMatrixWorld(),Hl.multiplyMatrices(e.projectionMatrix,e.matrixWorldInverse),this._frustum.setFromProjectionMatrix(Hl),n.set(.5,0,0,.5,0,.5,0,.5,0,0,.5,.5,0,0,0,1),n.multiply(e.projectionMatrix),n.multiply(e.matrixWorldInverse)}getViewport(t){return this._viewports[t]}getFrameExtents(){return this._frameExtents}dispose(){this.map&amp;&amp;this.map.dispose(),this.mapPass&amp;&amp;this.mapPass.dispose()}copy(t){return this.camera=t.camera.clone(),this.bias=t.bias,this.radius=t.radius,this.mapSize.copy(t.mapSize),this}clone(){return(new this.constructor).copy(this)}toJSON(){const t={};return 0!==this.bias&amp;&amp;(t.bias=this.bias),0!==this.normalBias&amp;&amp;(t.normalBias=this.normalBias),1!==this.radius&amp;&amp;(t.radius=this.radius),512===this.mapSize.x&amp;&amp;512===this.mapSize.y||(t.mapSize=this.mapSize.toArray()),t.camera=this.camera.toJSON(!1).object,delete t.camera.matrix,t}}class Vl extends kl{constructor(){super(new Kn(50,1,.5,500)),this.focus=1}updateMatrices(t){const e=this.camera,n=2*lt*t.angle*this.focus,i=this.mapSize.width/this.mapSize.height,r=t.distance||e.far;n===e.fov&amp;&amp;i===e.aspect&amp;&amp;r===e.far||(e.fov=n,e.aspect=i,e.far=r,e.updateProjectionMatrix()),super.updateMatrices(t)}copy(t){return super.copy(t),this.focus=t.focus,this}}Vl.prototype.isSpotLightShadow=!0;class Wl extends Fl{constructor(t,e,n=0,i=Math.PI/3,r=0,s=1){super(t,e),this.type="SpotLight",this.position.copy(Ce.DefaultUp),this.updateMatrix(),this.target=new Ce,this.distance=n,this.angle=i,this.penumbra=r,this.decay=s,this.shadow=new Vl}get power(){return this.intensity*Math.PI}set power(t){this.intensity=t/Math.PI}dispose(){this.shadow.dispose()}copy(t){return super.copy(t),this.distance=t.distance,this.angle=t.angle,this.penumbra=t.penumbra,this.decay=t.decay,this.target=t.target.clone(),this.shadow=t.shadow.clone(),this}}Wl.prototype.isSpotLight=!0;const jl=new se,ql=new Lt,Xl=new Lt;class Yl extends kl{constructor(){super(new Kn(90,1,.5,500)),this._frameExtents=new vt(4,2),this._viewportCount=6,this._viewports=[new St(2,1,1,1),new St(0,1,1,1),new St(3,1,1,1),new St(1,1,1,1),new St(3,0,1,1),new St(1,0,1,1)],this._cubeDirections=[new Lt(1,0,0),new Lt(-1,0,0),new Lt(0,0,1),new Lt(0,0,-1),new Lt(0,1,0),new Lt(0,-1,0)],this._cubeUps=[new Lt(0,1,0),new Lt(0,1,0),new Lt(0,1,0),new Lt(0,1,0),new Lt(0,0,1),new Lt(0,0,-1)]}updateMatrices(t,e=0){const n=this.camera,i=this.matrix,r=t.distance||n.far;r!==n.far&amp;&amp;(n.far=r,n.updateProjectionMatrix()),ql.setFromMatrixPosition(t.matrixWorld),n.position.copy(ql),Xl.copy(n.position),Xl.add(this._cubeDirections[e]),n.up.copy(this._cubeUps[e]),n.lookAt(Xl),n.updateMatrixWorld(),i.makeTranslation(-ql.x,-ql.y,-ql.z),jl.multiplyMatrices(n.projectionMatrix,n.matrixWorldInverse),this._frustum.setFromProjectionMatrix(jl)}}Yl.prototype.isPointLightShadow=!0;class Zl extends Fl{constructor(t,e,n=0,i=1){super(t,e),this.type="PointLight",this.distance=n,this.decay=i,this.shadow=new Yl}get power(){return 4*this.intensity*Math.PI}set power(t){this.intensity=t/(4*Math.PI)}dispose(){this.shadow.dispose()}copy(t){return super.copy(t),this.distance=t.distance,this.decay=t.decay,this.shadow=t.shadow.clone(),this}}Zl.prototype.isPointLight=!0;class Jl extends Qn{constructor(t=-1,e=1,n=1,i=-1,r=.1,s=2e3){super(),this.type="OrthographicCamera",this.zoom=1,this.view=null,this.left=t,this.right=e,this.top=n,this.bottom=i,this.near=r,this.far=s,this.updateProjectionMatrix()}copy(t,e){return super.copy(t,e),this.left=t.left,this.right=t.right,this.top=t.top,this.bottom=t.bottom,this.near=t.near,this.far=t.far,this.zoom=t.zoom,this.view=null===t.view?null:Object.assign({},t.view),this}setViewOffset(t,e,n,i,r,s){null===this.view&amp;&amp;(this.view={enabled:!0,fullWidth:1,fullHeight:1,offsetX:0,offsetY:0,width:1,height:1}),this.view.enabled=!0,this.view.fullWidth=t,this.view.fullHeight=e,this.view.offsetX=n,this.view.offsetY=i,this.view.width=r,this.view.height=s,this.updateProjectionMatrix()}clearViewOffset(){null!==this.view&amp;&amp;(this.view.enabled=!1),this.updateProjectionMatrix()}updateProjectionMatrix(){const t=(this.right-this.left)/(2*this.zoom),e=(this.top-this.bottom)/(2*this.zoom),n=(this.right+this.left)/2,i=(this.top+this.bottom)/2;let r=n-t,s=n+t,a=i+e,o=i-e;if(null!==this.view&amp;&amp;this.view.enabled){const t=(this.right-this.left)/this.view.fullWidth/this.zoom,e=(this.top-this.bottom)/this.view.fullHeight/this.zoom;r+=t*this.view.offsetX,s=r+t*this.view.width,a-=e*this.view.offsetY,o=a-e*this.view.height}this.projectionMatrix.makeOrthographic(r,s,a,o,this.near,this.far),this.projectionMatrixInverse.copy(this.projectionMatrix).invert()}toJSON(t){const e=super.toJSON(t);return e.object.zoom=this.zoom,e.object.left=this.left,e.object.right=this.right,e.object.top=this.top,e.object.bottom=this.bottom,e.object.near=this.near,e.object.far=this.far,null!==this.view&amp;&amp;(e.object.view=Object.assign({},this.view)),e}}Jl.prototype.isOrthographicCamera=!0;class Ql extends kl{constructor(){super(new Jl(-5,5,5,-5,.5,500))}}Ql.prototype.isDirectionalLightShadow=!0;class Kl extends Fl{constructor(t,e){super(t,e),this.type="DirectionalLight",this.position.copy(Ce.DefaultUp),this.updateMatrix(),this.target=new Ce,this.shadow=new Ql}dispose(){this.shadow.dispose()}copy(t){return super.copy(t),this.target=t.target.clone(),this.shadow=t.shadow.clone(),this}}Kl.prototype.isDirectionalLight=!0;class $l extends Fl{constructor(t,e){super(t,e),this.type="AmbientLight"}}$l.prototype.isAmbientLight=!0;class tc extends Fl{constructor(t,e,n=10,i=10){super(t,e),this.type="RectAreaLight",this.width=n,this.height=i}copy(t){return super.copy(t),this.width=t.width,this.height=t.height,this}toJSON(t){const e=super.toJSON(t);return e.object.width=this.width,e.object.height=this.height,e}}tc.prototype.isRectAreaLight=!0;class ec{constructor(){this.coefficients=[];for(let t=0;t&lt;9;t++)this.coefficients.push(new Lt)}set(t){for(let e=0;e&lt;9;e++)this.coefficients[e].copy(t[e]);return this}zero(){for(let t=0;t&lt;9;t++)this.coefficients[t].set(0,0,0);return this}getAt(t,e){const n=t.x,i=t.y,r=t.z,s=this.coefficients;return e.copy(s[0]).multiplyScalar(.282095),e.addScaledVector(s[1],.488603*i),e.addScaledVector(s[2],.488603*r),e.addScaledVector(s[3],.488603*n),e.addScaledVector(s[4],n*i*1.092548),e.addScaledVector(s[5],i*r*1.092548),e.addScaledVector(s[6],.315392*(3*r*r-1)),e.addScaledVector(s[7],n*r*1.092548),e.addScaledVector(s[8],.546274*(n*n-i*i)),e}getIrradianceAt(t,e){const n=t.x,i=t.y,r=t.z,s=this.coefficients;return e.copy(s[0]).multiplyScalar(.886227),e.addScaledVector(s[1],1.023328*i),e.addScaledVector(s[2],1.023328*r),e.addScaledVector(s[3],1.023328*n),e.addScaledVector(s[4],.858086*n*i),e.addScaledVector(s[5],.858086*i*r),e.addScaledVector(s[6],.743125*r*r-.247708),e.addScaledVector(s[7],.858086*n*r),e.addScaledVector(s[8],.429043*(n*n-i*i)),e}add(t){for(let e=0;e&lt;9;e++)this.coefficients[e].add(t.coefficients[e]);return this}addScaledSH(t,e){for(let n=0;n&lt;9;n++)this.coefficients[n].addScaledVector(t.coefficients[n],e);return this}scale(t){for(let e=0;e&lt;9;e++)this.coefficients[e].multiplyScalar(t);return this}lerp(t,e){for(let n=0;n&lt;9;n++)this.coefficients[n].lerp(t.coefficients[n],e);return this}equals(t){for(let e=0;e&lt;9;e++)if(!this.coefficients[e].equals(t.coefficients[e]))return!1;return!0}copy(t){return this.set(t.coefficients)}clone(){return(new this.constructor).copy(this)}fromArray(t,e=0){const n=this.coefficients;for(let i=0;i&lt;9;i++)n[i].fromArray(t,e+3*i);return this}toArray(t=[],e=0){const n=this.coefficients;for(let i=0;i&lt;9;i++)n[i].toArray(t,e+3*i);return t}static getBasisAt(t,e){const n=t.x,i=t.y,r=t.z;e[0]=.282095,e[1]=.488603*i,e[2]=.488603*r,e[3]=.488603*n,e[4]=1.092548*n*i,e[5]=1.092548*i*r,e[6]=.315392*(3*r*r-1),e[7]=1.092548*n*r,e[8]=.546274*(n*n-i*i)}}ec.prototype.isSphericalHarmonics3=!0;class nc extends Fl{constructor(t=new ec,e=1){super(void 0,e),this.sh=t}copy(t){return super.copy(t),this.sh.copy(t.sh),this}fromJSON(t){return this.intensity=t.intensity,this.sh.fromArray(t.sh),this}toJSON(t){const e=super.toJSON(t);return e.object.sh=this.sh.toArray(),e}}nc.prototype.isLightProbe=!0;class ic extends ol{constructor(t){super(t),this.textures={}}load(t,e,n,i){const r=this,s=new cl(r.manager);s.setPath(r.path),s.setRequestHeader(r.requestHeader),s.setWithCredentials(r.withCredentials),s.load(t,(function(n){try{e(r.parse(JSON.parse(n)))}catch(e){i?i(e):console.error(e),r.manager.itemError(t)}}),n,i)}parse(t){const e=this.textures;function n(t){return void 0===e[t]&amp;&amp;console.warn("THREE.MaterialLoader: Undefined texture",t),e[t]}const i=new ko[t.type];if(void 0!==t.uuid&amp;&amp;(i.uuid=t.uuid),void 0!==t.name&amp;&amp;(i.name=t.name),void 0!==t.color&amp;&amp;void 0!==i.color&amp;&amp;i.color.setHex(t.color),void 0!==t.roughness&amp;&amp;(i.roughness=t.roughness),void 0!==t.metalness&amp;&amp;(i.metalness=t.metalness),void 0!==t.sheen&amp;&amp;(i.sheen=(new tn).setHex(t.sheen)),void 0!==t.emissive&amp;&amp;void 0!==i.emissive&amp;&amp;i.emissive.setHex(t.emissive),void 0!==t.specular&amp;&amp;void 0!==i.specular&amp;&amp;i.specular.setHex(t.specular),void 0!==t.shininess&amp;&amp;(i.shininess=t.shininess),void 0!==t.clearcoat&amp;&amp;(i.clearcoat=t.clearcoat),void 0!==t.clearcoatRoughness&amp;&amp;(i.clearcoatRoughness=t.clearcoatRoughness),void 0!==t.fog&amp;&amp;(i.fog=t.fog),void 0!==t.flatShading&amp;&amp;(i.flatShading=t.flatShading),void 0!==t.blending&amp;&amp;(i.blending=t.blending),void 0!==t.combine&amp;&amp;(i.combine=t.combine),void 0!==t.side&amp;&amp;(i.side=t.side),void 0!==t.shadowSide&amp;&amp;(i.shadowSide=t.shadowSide),void 0!==t.opacity&amp;&amp;(i.opacity=t.opacity),void 0!==t.transparent&amp;&amp;(i.transparent=t.transparent),void 0!==t.alphaTest&amp;&amp;(i.alphaTest=t.alphaTest),void 0!==t.depthTest&amp;&amp;(i.depthTest=t.depthTest),void 0!==t.depthWrite&amp;&amp;(i.depthWrite=t.depthWrite),void 0!==t.colorWrite&amp;&amp;(i.colorWrite=t.colorWrite),void 0!==t.stencilWrite&amp;&amp;(i.stencilWrite=t.stencilWrite),void 0!==t.stencilWriteMask&amp;&amp;(i.stencilWriteMask=t.stencilWriteMask),void 0!==t.stencilFunc&amp;&amp;(i.stencilFunc=t.stencilFunc),void 0!==t.stencilRef&amp;&amp;(i.stencilRef=t.stencilRef),void 0!==t.stencilFuncMask&amp;&amp;(i.stencilFuncMask=t.stencilFuncMask),void 0!==t.stencilFail&amp;&amp;(i.stencilFail=t.stencilFail),void 0!==t.stencilZFail&amp;&amp;(i.stencilZFail=t.stencilZFail),void 0!==t.stencilZPass&amp;&amp;(i.stencilZPass=t.stencilZPass),void 0!==t.wireframe&amp;&amp;(i.wireframe=t.wireframe),void 0!==t.wireframeLinewidth&amp;&amp;(i.wireframeLinewidth=t.wireframeLinewidth),void 0!==t.wireframeLinecap&amp;&amp;(i.wireframeLinecap=t.wireframeLinecap),void 0!==t.wireframeLinejoin&amp;&amp;(i.wireframeLinejoin=t.wireframeLinejoin),void 0!==t.rotation&amp;&amp;(i.rotation=t.rotation),1!==t.linewidth&amp;&amp;(i.linewidth=t.linewidth),void 0!==t.dashSize&amp;&amp;(i.dashSize=t.dashSize),void 0!==t.gapSize&amp;&amp;(i.gapSize=t.gapSize),void 0!==t.scale&amp;&amp;(i.scale=t.scale),void 0!==t.polygonOffset&amp;&amp;(i.polygonOffset=t.polygonOffset),void 0!==t.polygonOffsetFactor&amp;&amp;(i.polygonOffsetFactor=t.polygonOffsetFactor),void 0!==t.polygonOffsetUnits&amp;&amp;(i.polygonOffsetUnits=t.polygonOffsetUnits),void 0!==t.skinning&amp;&amp;(i.skinning=t.skinning),void 0!==t.morphTargets&amp;&amp;(i.morphTargets=t.morphTargets),void 0!==t.morphNormals&amp;&amp;(i.morphNormals=t.morphNormals),void 0!==t.dithering&amp;&amp;(i.dithering=t.dithering),void 0!==t.alphaToCoverage&amp;&amp;(i.alphaToCoverage=t.alphaToCoverage),void 0!==t.premultipliedAlpha&amp;&amp;(i.premultipliedAlpha=t.premultipliedAlpha),void 0!==t.vertexTangents&amp;&amp;(i.vertexTangents=t.vertexTangents),void 0!==t.visible&amp;&amp;(i.visible=t.visible),void 0!==t.toneMapped&amp;&amp;(i.toneMapped=t.toneMapped),void 0!==t.userData&amp;&amp;(i.userData=t.userData),void 0!==t.vertexColors&amp;&amp;("number"==typeof t.vertexColors?i.vertexColors=t.vertexColors&gt;0:i.vertexColors=t.vertexColors),void 0!==t.uniforms)for(const e in t.uniforms){const r=t.uniforms[e];switch(i.uniforms[e]={},r.type){case"t":i.uniforms[e].value=n(r.value);break;case"c":i.uniforms[e].value=(new tn).setHex(r.value);break;case"v2":i.uniforms[e].value=(new vt).fromArray(r.value);break;case"v3":i.uniforms[e].value=(new Lt).fromArray(r.value);break;case"v4":i.uniforms[e].value=(new St).fromArray(r.value);break;case"m3":i.uniforms[e].value=(new yt).fromArray(r.value);break;case"m4":i.uniforms[e].value=(new se).fromArray(r.value);break;default:i.uniforms[e].value=r.value}}if(void 0!==t.defines&amp;&amp;(i.defines=t.defines),void 0!==t.vertexShader&amp;&amp;(i.vertexShader=t.vertexShader),void 0!==t.fragmentShader&amp;&amp;(i.fragmentShader=t.fragmentShader),void 0!==t.extensions)for(const e in t.extensions)i.extensions[e]=t.extensions[e];if(void 0!==t.shading&amp;&amp;(i.flatShading=1===t.shading),void 0!==t.size&amp;&amp;(i.size=t.size),void 0!==t.sizeAttenuation&amp;&amp;(i.sizeAttenuation=t.sizeAttenuation),void 0!==t.map&amp;&amp;(i.map=n(t.map)),void 0!==t.matcap&amp;&amp;(i.matcap=n(t.matcap)),void 0!==t.alphaMap&amp;&amp;(i.alphaMap=n(t.alphaMap)),void 0!==t.bumpMap&amp;&amp;(i.bumpMap=n(t.bumpMap)),void 0!==t.bumpScale&amp;&amp;(i.bumpScale=t.bumpScale),void 0!==t.normalMap&amp;&amp;(i.normalMap=n(t.normalMap)),void 0!==t.normalMapType&amp;&amp;(i.normalMapType=t.normalMapType),void 0!==t.normalScale){let e=t.normalScale;!1===Array.isArray(e)&amp;&amp;(e=[e,e]),i.normalScale=(new vt).fromArray(e)}return void 0!==t.displacementMap&amp;&amp;(i.displacementMap=n(t.displacementMap)),void 0!==t.displacementScale&amp;&amp;(i.displacementScale=t.displacementScale),void 0!==t.displacementBias&amp;&amp;(i.displacementBias=t.displacementBias),void 0!==t.roughnessMap&amp;&amp;(i.roughnessMap=n(t.roughnessMap)),void 0!==t.metalnessMap&amp;&amp;(i.metalnessMap=n(t.metalnessMap)),void 0!==t.emissiveMap&amp;&amp;(i.emissiveMap=n(t.emissiveMap)),void 0!==t.emissiveIntensity&amp;&amp;(i.emissiveIntensity=t.emissiveIntensity),void 0!==t.specularMap&amp;&amp;(i.specularMap=n(t.specularMap)),void 0!==t.envMap&amp;&amp;(i.envMap=n(t.envMap)),void 0!==t.envMapIntensity&amp;&amp;(i.envMapIntensity=t.envMapIntensity),void 0!==t.reflectivity&amp;&amp;(i.reflectivity=t.reflectivity),void 0!==t.refractionRatio&amp;&amp;(i.refractionRatio=t.refractionRatio),void 0!==t.lightMap&amp;&amp;(i.lightMap=n(t.lightMap)),void 0!==t.lightMapIntensity&amp;&amp;(i.lightMapIntensity=t.lightMapIntensity),void 0!==t.aoMap&amp;&amp;(i.aoMap=n(t.aoMap)),void 0!==t.aoMapIntensity&amp;&amp;(i.aoMapIntensity=t.aoMapIntensity),void 0!==t.gradientMap&amp;&amp;(i.gradientMap=n(t.gradientMap)),void 0!==t.clearcoatMap&amp;&amp;(i.clearcoatMap=n(t.clearcoatMap)),void 0!==t.clearcoatRoughnessMap&amp;&amp;(i.clearcoatRoughnessMap=n(t.clearcoatRoughnessMap)),void 0!==t.clearcoatNormalMap&amp;&amp;(i.clearcoatNormalMap=n(t.clearcoatNormalMap)),void 0!==t.clearcoatNormalScale&amp;&amp;(i.clearcoatNormalScale=(new vt).fromArray(t.clearcoatNormalScale)),void 0!==t.transmission&amp;&amp;(i.transmission=t.transmission),void 0!==t.transmissionMap&amp;&amp;(i.transmissionMap=n(t.transmissionMap)),i}setTextures(t){return this.textures=t,this}}class rc{static decodeText(t){if("undefined"!=typeof TextDecoder)return(new TextDecoder).decode(t);let e="";for(let n=0,i=t.length;n&lt;i;n++)e+=String.fromCharCode(t[n]);try{return decodeURIComponent(escape(e))}catch(t){return e}}static extractUrlBase(t){const e=t.lastIndexOf("/");return-1===e?"./":t.substr(0,e+1)}}class sc extends En{constructor(){super(),this.type="InstancedBufferGeometry",this.instanceCount=1/0}copy(t){return super.copy(t),this.instanceCount=t.instanceCount,this}clone(){return(new this.constructor).copy(this)}toJSON(){const t=super.toJSON(this);return t.instanceCount=this.instanceCount,t.isInstancedBufferGeometry=!0,t}}sc.prototype.isInstancedBufferGeometry=!0;class ac extends sn{constructor(t,e,n,i){"number"==typeof n&amp;&amp;(i=n,n=!1,console.error("THREE.InstancedBufferAttribute: The constructor now expects normalized as the third argument.")),super(t,e,n),this.meshPerAttribute=i||1}copy(t){return super.copy(t),this.meshPerAttribute=t.meshPerAttribute,this}toJSON(){const t=super.toJSON();return t.meshPerAttribute=this.meshPerAttribute,t.isInstancedBufferAttribute=!0,t}}ac.prototype.isInstancedBufferAttribute=!0;class oc extends ol{constructor(t){super(t)}load(t,e,n,i){const r=this,s=new cl(r.manager);s.setPath(r.path),s.setRequestHeader(r.requestHeader),s.setWithCredentials(r.withCredentials),s.load(t,(function(n){try{e(r.parse(JSON.parse(n)))}catch(e){i?i(e):console.error(e),r.manager.itemError(t)}}),n,i)}parse(t){const e={},n={};function i(t,i){if(void 0!==e[i])return e[i];const r=t.interleavedBuffers[i],s=function(t,e){if(void 0!==n[e])return n[e];const i=t.arrayBuffers[e],r=new Uint32Array(i).buffer;return n[e]=r,r}(t,r.buffer),a=yn(r.type,s),o=new Es(a,r.stride);return o.uuid=r.uuid,e[i]=o,o}const r=t.isInstancedBufferGeometry?new sc:new En,s=t.data.index;if(void 0!==s){const t=yn(s.type,s.array);r.setIndex(new sn(t,1))}const a=t.data.attributes;for(const e in a){const n=a[e];let s;if(n.isInterleavedBufferAttribute){const e=i(t.data,n.data);s=new Ls(e,n.itemSize,n.offset,n.normalized)}else{const t=yn(n.type,n.array);s=new(n.isInstancedBufferAttribute?ac:sn)(t,n.itemSize,n.normalized)}void 0!==n.name&amp;&amp;(s.name=n.name),void 0!==n.usage&amp;&amp;s.setUsage(n.usage),void 0!==n.updateRange&amp;&amp;(s.updateRange.offset=n.updateRange.offset,s.updateRange.count=n.updateRange.count),r.setAttribute(e,s)}const o=t.data.morphAttributes;if(o)for(const e in o){const n=o[e],s=[];for(let e=0,r=n.length;e&lt;r;e++){const r=n[e];let a;if(r.isInterleavedBufferAttribute){const e=i(t.data,r.data);a=new Ls(e,r.itemSize,r.offset,r.normalized)}else{const t=yn(r.type,r.array);a=new sn(t,r.itemSize,r.normalized)}void 0!==r.name&amp;&amp;(a.name=r.name),s.push(a)}r.morphAttributes[e]=s}t.data.morphTargetsRelative&amp;&amp;(r.morphTargetsRelative=!0);const l=t.data.groups||t.data.drawcalls||t.data.offsets;if(void 0!==l)for(let t=0,e=l.length;t!==e;++t){const e=l[t];r.addGroup(e.start,e.count,e.materialIndex)}const c=t.data.boundingSphere;if(void 0!==c){const t=new Lt;void 0!==c.center&amp;&amp;t.fromArray(c.center),r.boundingSphere=new Jt(t,c.radius)}return t.name&amp;&amp;(r.name=t.name),t.userData&amp;&amp;(r.userData=t.userData),r}}const lc={UVMapping:i,CubeReflectionMapping:r,CubeRefractionMapping:s,EquirectangularReflectionMapping:a,EquirectangularRefractionMapping:o,CubeUVReflectionMapping:l,CubeUVRefractionMapping:c},cc={RepeatWrapping:h,ClampToEdgeWrapping:u,MirroredRepeatWrapping:d},hc={NearestFilter:p,NearestMipmapNearestFilter:m,NearestMipmapLinearFilter:f,LinearFilter:g,LinearMipmapNearestFilter:v,LinearMipmapLinearFilter:y};class uc extends ol{constructor(t){super(t),"undefined"==typeof createImageBitmap&amp;&amp;console.warn("THREE.ImageBitmapLoader: createImageBitmap() not supported."),"undefined"==typeof fetch&amp;&amp;console.warn("THREE.ImageBitmapLoader: fetch() not supported."),this.options={premultiplyAlpha:"none"}}setOptions(t){return this.options=t,this}load(t,e,n,i){void 0===t&amp;&amp;(t=""),void 0!==this.path&amp;&amp;(t=this.path+t),t=this.manager.resolveURL(t);const r=this,s=rl.get(t);if(void 0!==s)return r.manager.itemStart(t),setTimeout((function(){e&amp;&amp;e(s),r.manager.itemEnd(t)}),0),s;const a={};a.credentials="anonymous"===this.crossOrigin?"same-origin":"include",a.headers=this.requestHeader,fetch(t,a).then((function(t){return t.blob()})).then((function(t){return createImageBitmap(t,Object.assign(r.options,{colorSpaceConversion:"none"}))})).then((function(n){rl.add(t,n),e&amp;&amp;e(n),r.manager.itemEnd(t)})).catch((function(e){i&amp;&amp;i(e),r.manager.itemError(t),r.manager.itemEnd(t)})),r.manager.itemStart(t)}}uc.prototype.isImageBitmapLoader=!0;class dc{constructor(){this.type="ShapePath",this.color=new tn,this.subPaths=[],this.currentPath=null}moveTo(t,e){return this.currentPath=new Bl,this.subPaths.push(this.currentPath),this.currentPath.moveTo(t,e),this}lineTo(t,e){return this.currentPath.lineTo(t,e),this}quadraticCurveTo(t,e,n,i){return this.currentPath.quadraticCurveTo(t,e,n,i),this}bezierCurveTo(t,e,n,i,r,s){return this.currentPath.bezierCurveTo(t,e,n,i,r,s),this}splineThru(t){return this.currentPath.splineThru(t),this}toShapes(t,e){function n(t){const e=[];for(let n=0,i=t.length;n&lt;i;n++){const i=t[n],r=new zl;r.curves=i.curves,e.push(r)}return e}function i(t,e){const n=e.length;let i=!1;for(let r=n-1,s=0;s&lt;n;r=s++){let n=e[r],a=e[s],o=a.x-n.x,l=a.y-n.y;if(Math.abs(l)&gt;Number.EPSILON){if(l&lt;0&amp;&amp;(n=e[s],o=-o,a=e[r],l=-l),t.y&lt;n.y||t.y&gt;a.y)continue;if(t.y===n.y){if(t.x===n.x)return!0}else{const e=l*(t.x-n.x)-o*(t.y-n.y);if(0===e)return!0;if(e&lt;0)continue;i=!i}}else{if(t.y!==n.y)continue;if(a.x&lt;=t.x&amp;&amp;t.x&lt;=n.x||n.x&lt;=t.x&amp;&amp;t.x&lt;=a.x)return!0}}return i}const r=po.isClockWise,s=this.subPaths;if(0===s.length)return[];if(!0===e)return n(s);let a,o,l;const c=[];if(1===s.length)return o=s[0],l=new zl,l.curves=o.curves,c.push(l),c;let h=!r(s[0].getPoints());h=t?!h:h;const u=[],d=[];let p,m,f=[],g=0;d[g]=void 0,f[g]=[];for(let e=0,n=s.length;e&lt;n;e++)o=s[e],p=o.getPoints(),a=r(p),a=t?!a:a,a?(!h&amp;&amp;d[g]&amp;&amp;g++,d[g]={s:new zl,p:p},d[g].s.curves=o.curves,h&amp;&amp;g++,f[g]=[]):f[g].push({h:o,p:p[0]});if(!d[0])return n(s);if(d.length&gt;1){let t=!1;const e=[];for(let t=0,e=d.length;t&lt;e;t++)u[t]=[];for(let n=0,r=d.length;n&lt;r;n++){const r=f[n];for(let s=0;s&lt;r.length;s++){const a=r[s];let o=!0;for(let r=0;r&lt;d.length;r++)i(a.p,d[r].p)&amp;&amp;(n!==r&amp;&amp;e.push({froms:n,tos:r,hole:s}),o?(o=!1,u[r].push(a)):t=!0);o&amp;&amp;u[n].push(a)}}e.length&gt;0&amp;&amp;(t||(f=u))}for(let t=0,e=d.length;t&lt;e;t++){l=d[t].s,c.push(l),m=f[t];for(let t=0,e=m.length;t&lt;e;t++)l.holes.push(m[t].h)}return c}}class pc{constructor(t){this.type="Font",this.data=t}generateShapes(t,e=100){const n=[],i=function(t,e,n){const i=Array.from(t),r=e/n.resolution,s=(n.boundingBox.yMax-n.boundingBox.yMin+n.underlineThickness)*r,a=[];let o=0,l=0;for(let t=0;t&lt;i.length;t++){const e=i[t];if("\n"===e)o=0,l-=s;else{const t=mc(e,r,o,l,n);o+=t.offsetX,a.push(t.path)}}return a}(t,e,this.data);for(let t=0,e=i.length;t&lt;e;t++)Array.prototype.push.apply(n,i[t].toShapes());return n}}function mc(t,e,n,i,r){const s=r.glyphs[t]||r.glyphs["?"];if(!s)return void console.error('THREE.Font: character "'+t+'" does not exists in font family '+r.familyName+".");const a=new dc;let o,l,c,h,u,d,p,m;if(s.o){const t=s._cachedOutline||(s._cachedOutline=s.o.split(" "));for(let r=0,s=t.length;r&lt;s;){switch(t[r++]){case"m":o=t[r++]*e+n,l=t[r++]*e+i,a.moveTo(o,l);break;case"l":o=t[r++]*e+n,l=t[r++]*e+i,a.lineTo(o,l);break;case"q":c=t[r++]*e+n,h=t[r++]*e+i,u=t[r++]*e+n,d=t[r++]*e+i,a.quadraticCurveTo(u,d,c,h);break;case"b":c=t[r++]*e+n,h=t[r++]*e+i,u=t[r++]*e+n,d=t[r++]*e+i,p=t[r++]*e+n,m=t[r++]*e+i,a.bezierCurveTo(u,d,p,m,c,h)}}}return{offsetX:s.ha*e,path:a}}pc.prototype.isFont=!0;let fc;const gc={getContext:function(){return void 0===fc&amp;&amp;(fc=new(window.AudioContext||window.webkitAudioContext)),fc},setContext:function(t){fc=t}};class vc extends ol{constructor(t){super(t)}load(t,e,n,i){const r=this,s=new cl(this.manager);s.setResponseType("arraybuffer"),s.setPath(this.path),s.setRequestHeader(this.requestHeader),s.setWithCredentials(this.withCredentials),s.load(t,(function(n){try{const t=n.slice(0);gc.getContext().decodeAudioData(t,(function(t){e(t)}))}catch(e){i?i(e):console.error(e),r.manager.itemError(t)}}),n,i)}}class yc extends nc{constructor(t,e,n=1){super(void 0,n);const i=(new tn).set(t),r=(new tn).set(e),s=new Lt(i.r,i.g,i.b),a=new Lt(r.r,r.g,r.b),o=Math.sqrt(Math.PI),l=o*Math.sqrt(.75);this.sh.coefficients[0].copy(s).add(a).multiplyScalar(o),this.sh.coefficients[1].copy(s).sub(a).multiplyScalar(l)}}yc.prototype.isHemisphereLightProbe=!0;class xc extends nc{constructor(t,e=1){super(void 0,e);const n=(new tn).set(t);this.sh.coefficients[0].set(n.r,n.g,n.b).multiplyScalar(2*Math.sqrt(Math.PI))}}xc.prototype.isAmbientLightProbe=!0;const _c=new se,wc=new se;class bc{constructor(t=!0){this.autoStart=t,this.startTime=0,this.oldTime=0,this.elapsedTime=0,this.running=!1}start(){this.startTime=Mc(),this.oldTime=this.startTime,this.elapsedTime=0,this.running=!0}stop(){this.getElapsedTime(),this.running=!1,this.autoStart=!1}getElapsedTime(){return this.getDelta(),this.elapsedTime}getDelta(){let t=0;if(this.autoStart&amp;&amp;!this.running)return this.start(),0;if(this.running){const e=Mc();t=(e-this.oldTime)/1e3,this.oldTime=e,this.elapsedTime+=t}return t}}function Mc(){return("undefined"==typeof performance?Date:performance).now()}const Sc=new Lt,Tc=new At,Ec=new Lt,Ac=new Lt;class Lc extends Ce{constructor(t){super(),this.type="Audio",this.listener=t,this.context=t.context,this.gain=this.context.createGain(),this.gain.connect(t.getInput()),this.autoplay=!1,this.buffer=null,this.detune=0,this.loop=!1,this.loopStart=0,this.loopEnd=0,this.offset=0,this.duration=void 0,this.playbackRate=1,this.isPlaying=!1,this.hasPlaybackControl=!0,this.source=null,this.sourceType="empty",this._startedAt=0,this._progress=0,this._connected=!1,this.filters=[]}getOutput(){return this.gain}setNodeSource(t){return this.hasPlaybackControl=!1,this.sourceType="audioNode",this.source=t,this.connect(),this}setMediaElementSource(t){return this.hasPlaybackControl=!1,this.sourceType="mediaNode",this.source=this.context.createMediaElementSource(t),this.connect(),this}setMediaStreamSource(t){return this.hasPlaybackControl=!1,this.sourceType="mediaStreamNode",this.source=this.context.createMediaStreamSource(t),this.connect(),this}setBuffer(t){return this.buffer=t,this.sourceType="buffer",this.autoplay&amp;&amp;this.play(),this}play(t=0){if(!0===this.isPlaying)return void console.warn("THREE.Audio: Audio is already playing.");if(!1===this.hasPlaybackControl)return void console.warn("THREE.Audio: this Audio has no playback control.");this._startedAt=this.context.currentTime+t;const e=this.context.createBufferSource();return e.buffer=this.buffer,e.loop=this.loop,e.loopStart=this.loopStart,e.loopEnd=this.loopEnd,e.onended=this.onEnded.bind(this),e.start(this._startedAt,this._progress+this.offset,this.duration),this.isPlaying=!0,this.source=e,this.setDetune(this.detune),this.setPlaybackRate(this.playbackRate),this.connect()}pause(){if(!1!==this.hasPlaybackControl)return!0===this.isPlaying&amp;&amp;(this._progress+=Math.max(this.context.currentTime-this._startedAt,0)*this.playbackRate,!0===this.loop&amp;&amp;(this._progress=this._progress%(this.duration||this.buffer.duration)),this.source.stop(),this.source.onended=null,this.isPlaying=!1),this;console.warn("THREE.Audio: this Audio has no playback control.")}stop(){if(!1!==this.hasPlaybackControl)return this._progress=0,this.source.stop(),this.source.onended=null,this.isPlaying=!1,this;console.warn("THREE.Audio: this Audio has no playback control.")}connect(){if(this.filters.length&gt;0){this.source.connect(this.filters[0]);for(let t=1,e=this.filters.length;t&lt;e;t++)this.filters[t-1].connect(this.filters[t]);this.filters[this.filters.length-1].connect(this.getOutput())}else this.source.connect(this.getOutput());return this._connected=!0,this}disconnect(){if(this.filters.length&gt;0){this.source.disconnect(this.filters[0]);for(let t=1,e=this.filters.length;t&lt;e;t++)this.filters[t-1].disconnect(this.filters[t]);this.filters[this.filters.length-1].disconnect(this.getOutput())}else this.source.disconnect(this.getOutput());return this._connected=!1,this}getFilters(){return this.filters}setFilters(t){return t||(t=[]),!0===this._connected?(this.disconnect(),this.filters=t.slice(),this.connect()):this.filters=t.slice(),this}setDetune(t){if(this.detune=t,void 0!==this.source.detune)return!0===this.isPlaying&amp;&amp;this.source.detune.setTargetAtTime(this.detune,this.context.currentTime,.01),this}getDetune(){return this.detune}getFilter(){return this.getFilters()[0]}setFilter(t){return this.setFilters(t?[t]:[])}setPlaybackRate(t){if(!1!==this.hasPlaybackControl)return this.playbackRate=t,!0===this.isPlaying&amp;&amp;this.source.playbackRate.setTargetAtTime(this.playbackRate,this.context.currentTime,.01),this;console.warn("THREE.Audio: this Audio has no playback control.")}getPlaybackRate(){return this.playbackRate}onEnded(){this.isPlaying=!1}getLoop(){return!1===this.hasPlaybackControl?(console.warn("THREE.Audio: this Audio has no playback control."),!1):this.loop}setLoop(t){if(!1!==this.hasPlaybackControl)return this.loop=t,!0===this.isPlaying&amp;&amp;(this.source.loop=this.loop),this;console.warn("THREE.Audio: this Audio has no playback control.")}setLoopStart(t){return this.loopStart=t,this}setLoopEnd(t){return this.loopEnd=t,this}getVolume(){return this.gain.gain.value}setVolume(t){return this.gain.gain.setTargetAtTime(t,this.context.currentTime,.01),this}}const Rc=new Lt,Cc=new At,Pc=new Lt,Dc=new Lt;class Ic{constructor(t,e=2048){this.analyser=t.context.createAnalyser(),this.analyser.fftSize=e,this.data=new Uint8Array(this.analyser.frequencyBinCount),t.getOutput().connect(this.analyser)}getFrequencyData(){return this.analyser.getByteFrequencyData(this.data),this.data}getAverageFrequency(){let t=0;const e=this.getFrequencyData();for(let n=0;n&lt;e.length;n++)t+=e[n];return t/e.length}}class Nc{constructor(t,e,n){let i,r,s;switch(this.binding=t,this.valueSize=n,e){case"quaternion":i=this._slerp,r=this._slerpAdditive,s=this._setAdditiveIdentityQuaternion,this.buffer=new Float64Array(6*n),this._workIndex=5;break;case"string":case"bool":i=this._select,r=this._select,s=this._setAdditiveIdentityOther,this.buffer=new Array(5*n);break;default:i=this._lerp,r=this._lerpAdditive,s=this._setAdditiveIdentityNumeric,this.buffer=new Float64Array(5*n)}this._mixBufferRegion=i,this._mixBufferRegionAdditive=r,this._setIdentity=s,this._origIndex=3,this._addIndex=4,this.cumulativeWeight=0,this.cumulativeWeightAdditive=0,this.useCount=0,this.referenceCount=0}accumulate(t,e){const n=this.buffer,i=this.valueSize,r=t*i+i;let s=this.cumulativeWeight;if(0===s){for(let t=0;t!==i;++t)n[r+t]=n[t];s=e}else{s+=e;const t=e/s;this._mixBufferRegion(n,r,0,t,i)}this.cumulativeWeight=s}accumulateAdditive(t){const e=this.buffer,n=this.valueSize,i=n*this._addIndex;0===this.cumulativeWeightAdditive&amp;&amp;this._setIdentity(),this._mixBufferRegionAdditive(e,i,0,t,n),this.cumulativeWeightAdditive+=t}apply(t){const e=this.valueSize,n=this.buffer,i=t*e+e,r=this.cumulativeWeight,s=this.cumulativeWeightAdditive,a=this.binding;if(this.cumulativeWeight=0,this.cumulativeWeightAdditive=0,r&lt;1){const t=e*this._origIndex;this._mixBufferRegion(n,i,t,1-r,e)}s&gt;0&amp;&amp;this._mixBufferRegionAdditive(n,i,this._addIndex*e,1,e);for(let t=e,r=e+e;t!==r;++t)if(n[t]!==n[t+e]){a.setValue(n,i);break}}saveOriginalState(){const t=this.binding,e=this.buffer,n=this.valueSize,i=n*this._origIndex;t.getValue(e,i);for(let t=n,r=i;t!==r;++t)e[t]=e[i+t%n];this._setIdentity(),this.cumulativeWeight=0,this.cumulativeWeightAdditive=0}restoreOriginalState(){const t=3*this.valueSize;this.binding.setValue(this.buffer,t)}_setAdditiveIdentityNumeric(){const t=this._addIndex*this.valueSize,e=t+this.valueSize;for(let n=t;n&lt;e;n++)this.buffer[n]=0}_setAdditiveIdentityQuaternion(){this._setAdditiveIdentityNumeric(),this.buffer[this._addIndex*this.valueSize+3]=1}_setAdditiveIdentityOther(){const t=this._origIndex*this.valueSize,e=this._addIndex*this.valueSize;for(let n=0;n&lt;this.valueSize;n++)this.buffer[e+n]=this.buffer[t+n]}_select(t,e,n,i,r){if(i&gt;=.5)for(let i=0;i!==r;++i)t[e+i]=t[n+i]}_slerp(t,e,n,i){At.slerpFlat(t,e,t,e,t,n,i)}_slerpAdditive(t,e,n,i,r){const s=this._workIndex*r;At.multiplyQuaternionsFlat(t,s,t,e,t,n),At.slerpFlat(t,e,t,e,t,s,i)}_lerp(t,e,n,i,r){const s=1-i;for(let a=0;a!==r;++a){const r=e+a;t[r]=t[r]*s+t[n+a]*i}}_lerpAdditive(t,e,n,i,r){for(let s=0;s!==r;++s){const r=e+s;t[r]=t[r]+t[n+s]*i}}}const Bc="\\[\\]\\.:\\/",zc=new RegExp("[\\[\\]\\.:\\/]","g"),Fc="[^\\[\\]\\.:\\/]",Oc="[^"+Bc.replace("\\.","")+"]",Hc=/((?:WC+[\/:])*)/.source.replace("WC",Fc),Gc=/(WCOD+)?/.source.replace("WCOD",Oc),Uc=/(?:\.(WC+)(?:\[(.+)\])?)?/.source.replace("WC",Fc),kc=/\.(WC+)(?:\[(.+)\])?/.source.replace("WC",Fc),Vc=new RegExp("^"+Hc+Gc+Uc+kc+"$"),Wc=["material","materials","bones"];class jc{constructor(t,e,n){this.path=e,this.parsedPath=n||jc.parseTrackName(e),this.node=jc.findNode(t,this.parsedPath.nodeName)||t,this.rootNode=t,this.getValue=this._getValue_unbound,this.setValue=this._setValue_unbound}static create(t,e,n){return t&amp;&amp;t.isAnimationObjectGroup?new jc.Composite(t,e,n):new jc(t,e,n)}static sanitizeNodeName(t){return t.replace(/\s/g,"_").replace(zc,"")}static parseTrackName(t){const e=Vc.exec(t);if(!e)throw new Error("PropertyBinding: Cannot parse trackName: "+t);const n={nodeName:e[2],objectName:e[3],objectIndex:e[4],propertyName:e[5],propertyIndex:e[6]},i=n.nodeName&amp;&amp;n.nodeName.lastIndexOf(".");if(void 0!==i&amp;&amp;-1!==i){const t=n.nodeName.substring(i+1);-1!==Wc.indexOf(t)&amp;&amp;(n.nodeName=n.nodeName.substring(0,i),n.objectName=t)}if(null===n.propertyName||0===n.propertyName.length)throw new Error("PropertyBinding: can not parse propertyName from trackName: "+t);return n}static findNode(t,e){if(!e||""===e||"."===e||-1===e||e===t.name||e===t.uuid)return t;if(t.skeleton){const n=t.skeleton.getBoneByName(e);if(void 0!==n)return n}if(t.children){const n=function(t){for(let i=0;i&lt;t.length;i++){const r=t[i];if(r.name===e||r.uuid===e)return r;const s=n(r.children);if(s)return s}return null},i=n(t.children);if(i)return i}return null}_getValue_unavailable(){}_setValue_unavailable(){}_getValue_direct(t,e){t[e]=this.node[this.propertyName]}_getValue_array(t,e){const n=this.resolvedProperty;for(let i=0,r=n.length;i!==r;++i)t[e++]=n[i]}_getValue_arrayElement(t,e){t[e]=this.resolvedProperty[this.propertyIndex]}_getValue_toArray(t,e){this.resolvedProperty.toArray(t,e)}_setValue_direct(t,e){this.targetObject[this.propertyName]=t[e]}_setValue_direct_setNeedsUpdate(t,e){this.targetObject[this.propertyName]=t[e],this.targetObject.needsUpdate=!0}_setValue_direct_setMatrixWorldNeedsUpdate(t,e){this.targetObject[this.propertyName]=t[e],this.targetObject.matrixWorldNeedsUpdate=!0}_setValue_array(t,e){const n=this.resolvedProperty;for(let i=0,r=n.length;i!==r;++i)n[i]=t[e++]}_setValue_array_setNeedsUpdate(t,e){const n=this.resolvedProperty;for(let i=0,r=n.length;i!==r;++i)n[i]=t[e++];this.targetObject.needsUpdate=!0}_setValue_array_setMatrixWorldNeedsUpdate(t,e){const n=this.resolvedProperty;for(let i=0,r=n.length;i!==r;++i)n[i]=t[e++];this.targetObject.matrixWorldNeedsUpdate=!0}_setValue_arrayElement(t,e){this.resolvedProperty[this.propertyIndex]=t[e]}_setValue_arrayElement_setNeedsUpdate(t,e){this.resolvedProperty[this.propertyIndex]=t[e],this.targetObject.needsUpdate=!0}_setValue_arrayElement_setMatrixWorldNeedsUpdate(t,e){this.resolvedProperty[this.propertyIndex]=t[e],this.targetObject.matrixWorldNeedsUpdate=!0}_setValue_fromArray(t,e){this.resolvedProperty.fromArray(t,e)}_setValue_fromArray_setNeedsUpdate(t,e){this.resolvedProperty.fromArray(t,e),this.targetObject.needsUpdate=!0}_setValue_fromArray_setMatrixWorldNeedsUpdate(t,e){this.resolvedProperty.fromArray(t,e),this.targetObject.matrixWorldNeedsUpdate=!0}_getValue_unbound(t,e){this.bind(),this.getValue(t,e)}_setValue_unbound(t,e){this.bind(),this.setValue(t,e)}bind(){let t=this.node;const e=this.parsedPath,n=e.objectName,i=e.propertyName;let r=e.propertyIndex;if(t||(t=jc.findNode(this.rootNode,e.nodeName)||this.rootNode,this.node=t),this.getValue=this._getValue_unavailable,this.setValue=this._setValue_unavailable,!t)return void console.error("THREE.PropertyBinding: Trying to update node for track: "+this.path+" but it wasn't found.");if(n){let i=e.objectIndex;switch(n){case"materials":if(!t.material)return void console.error("THREE.PropertyBinding: Can not bind to material as node does not have a material.",this);if(!t.material.materials)return void console.error("THREE.PropertyBinding: Can not bind to material.materials as node.material does not have a materials array.",this);t=t.material.materials;break;case"bones":if(!t.skeleton)return void console.error("THREE.PropertyBinding: Can not bind to bones as node does not have a skeleton.",this);t=t.skeleton.bones;for(let e=0;e&lt;t.length;e++)if(t[e].name===i){i=e;break}break;default:if(void 0===t[n])return void console.error("THREE.PropertyBinding: Can not bind to objectName of node undefined.",this);t=t[n]}if(void 0!==i){if(void 0===t[i])return void console.error("THREE.PropertyBinding: Trying to bind to objectIndex of objectName, but is undefined.",this,t);t=t[i]}}const s=t[i];if(void 0===s){const n=e.nodeName;return void console.error("THREE.PropertyBinding: Trying to update property for track: "+n+"."+i+" but it wasn't found.",t)}let a=this.Versioning.None;this.targetObject=t,void 0!==t.needsUpdate?a=this.Versioning.NeedsUpdate:void 0!==t.matrixWorldNeedsUpdate&amp;&amp;(a=this.Versioning.MatrixWorldNeedsUpdate);let o=this.BindingType.Direct;if(void 0!==r){if("morphTargetInfluences"===i){if(!t.geometry)return void console.error("THREE.PropertyBinding: Can not bind to morphTargetInfluences because node does not have a geometry.",this);if(!t.geometry.isBufferGeometry)return void console.error("THREE.PropertyBinding: Can not bind to morphTargetInfluences on THREE.Geometry. Use THREE.BufferGeometry instead.",this);if(!t.geometry.morphAttributes)return void console.error("THREE.PropertyBinding: Can not bind to morphTargetInfluences because node does not have a geometry.morphAttributes.",this);void 0!==t.morphTargetDictionary[r]&amp;&amp;(r=t.morphTargetDictionary[r])}o=this.BindingType.ArrayElement,this.resolvedProperty=s,this.propertyIndex=r}else void 0!==s.fromArray&amp;&amp;void 0!==s.toArray?(o=this.BindingType.HasFromToArray,this.resolvedProperty=s):Array.isArray(s)?(o=this.BindingType.EntireArray,this.resolvedProperty=s):this.propertyName=i;this.getValue=this.GetterByBindingType[o],this.setValue=this.SetterByBindingTypeAndVersioning[o][a]}unbind(){this.node=null,this.getValue=this._getValue_unbound,this.setValue=this._setValue_unbound}}jc.Composite=class{constructor(t,e,n){const i=n||jc.parseTrackName(e);this._targetGroup=t,this._bindings=t.subscribe_(e,i)}getValue(t,e){this.bind();const n=this._targetGroup.nCachedObjects_,i=this._bindings[n];void 0!==i&amp;&amp;i.getValue(t,e)}setValue(t,e){const n=this._bindings;for(let i=this._targetGroup.nCachedObjects_,r=n.length;i!==r;++i)n[i].setValue(t,e)}bind(){const t=this._bindings;for(let e=this._targetGroup.nCachedObjects_,n=t.length;e!==n;++e)t[e].bind()}unbind(){const t=this._bindings;for(let e=this._targetGroup.nCachedObjects_,n=t.length;e!==n;++e)t[e].unbind()}},jc.prototype.BindingType={Direct:0,EntireArray:1,ArrayElement:2,HasFromToArray:3},jc.prototype.Versioning={None:0,NeedsUpdate:1,MatrixWorldNeedsUpdate:2},jc.prototype.GetterByBindingType=[jc.prototype._getValue_direct,jc.prototype._getValue_array,jc.prototype._getValue_arrayElement,jc.prototype._getValue_toArray],jc.prototype.SetterByBindingTypeAndVersioning=[[jc.prototype._setValue_direct,jc.prototype._setValue_direct_setNeedsUpdate,jc.prototype._setValue_direct_setMatrixWorldNeedsUpdate],[jc.prototype._setValue_array,jc.prototype._setValue_array_setNeedsUpdate,jc.prototype._setValue_array_setMatrixWorldNeedsUpdate],[jc.prototype._setValue_arrayElement,jc.prototype._setValue_arrayElement_setNeedsUpdate,jc.prototype._setValue_arrayElement_setMatrixWorldNeedsUpdate],[jc.prototype._setValue_fromArray,jc.prototype._setValue_fromArray_setNeedsUpdate,jc.prototype._setValue_fromArray_setMatrixWorldNeedsUpdate]];class qc{constructor(){this.uuid=ct(),this._objects=Array.prototype.slice.call(arguments),this.nCachedObjects_=0;const t={};this._indicesByUUID=t;for(let e=0,n=arguments.length;e!==n;++e)t[arguments[e].uuid]=e;this._paths=[],this._parsedPaths=[],this._bindings=[],this._bindingsIndicesByPath={};const e=this;this.stats={objects:{get total(){return e._objects.length},get inUse(){return this.total-e.nCachedObjects_}},get bindingsPerObject(){return e._bindings.length}}}add(){const t=this._objects,e=this._indicesByUUID,n=this._paths,i=this._parsedPaths,r=this._bindings,s=r.length;let a,o=t.length,l=this.nCachedObjects_;for(let c=0,h=arguments.length;c!==h;++c){const h=arguments[c],u=h.uuid;let d=e[u];if(void 0===d){d=o++,e[u]=d,t.push(h);for(let t=0,e=s;t!==e;++t)r[t].push(new jc(h,n[t],i[t]))}else if(d&lt;l){a=t[d];const o=--l,c=t[o];e[c.uuid]=d,t[d]=c,e[u]=o,t[o]=h;for(let t=0,e=s;t!==e;++t){const e=r[t],s=e[o];let a=e[d];e[d]=s,void 0===a&amp;&amp;(a=new jc(h,n[t],i[t])),e[o]=a}}else t[d]!==a&amp;&amp;console.error("THREE.AnimationObjectGroup: Different objects with the same UUID detected. Clean the caches or recreate your infrastructure when reloading scenes.")}this.nCachedObjects_=l}remove(){const t=this._objects,e=this._indicesByUUID,n=this._bindings,i=n.length;let r=this.nCachedObjects_;for(let s=0,a=arguments.length;s!==a;++s){const a=arguments[s],o=a.uuid,l=e[o];if(void 0!==l&amp;&amp;l&gt;=r){const s=r++,c=t[s];e[c.uuid]=l,t[l]=c,e[o]=s,t[s]=a;for(let t=0,e=i;t!==e;++t){const e=n[t],i=e[s],r=e[l];e[l]=i,e[s]=r}}}this.nCachedObjects_=r}uncache(){const t=this._objects,e=this._indicesByUUID,n=this._bindings,i=n.length;let r=this.nCachedObjects_,s=t.length;for(let a=0,o=arguments.length;a!==o;++a){const o=arguments[a].uuid,l=e[o];if(void 0!==l)if(delete e[o],l&lt;r){const a=--r,o=t[a],c=--s,h=t[c];e[o.uuid]=l,t[l]=o,e[h.uuid]=a,t[a]=h,t.pop();for(let t=0,e=i;t!==e;++t){const e=n[t],i=e[a],r=e[c];e[l]=i,e[a]=r,e.pop()}}else{const r=--s,a=t[r];r&gt;0&amp;&amp;(e[a.uuid]=l),t[l]=a,t.pop();for(let t=0,e=i;t!==e;++t){const e=n[t];e[l]=e[r],e.pop()}}}this.nCachedObjects_=r}subscribe_(t,e){const n=this._bindingsIndicesByPath;let i=n[t];const r=this._bindings;if(void 0!==i)return r[i];const s=this._paths,a=this._parsedPaths,o=this._objects,l=o.length,c=this.nCachedObjects_,h=new Array(l);i=r.length,n[t]=i,s.push(t),a.push(e),r.push(h);for(let n=c,i=o.length;n!==i;++n){const i=o[n];h[n]=new jc(i,t,e)}return h}unsubscribe_(t){const e=this._bindingsIndicesByPath,n=e[t];if(void 0!==n){const i=this._paths,r=this._parsedPaths,s=this._bindings,a=s.length-1,o=s[a];e[t[a]]=n,s[n]=o,s.pop(),r[n]=r[a],r.pop(),i[n]=i[a],i.pop()}}}qc.prototype.isAnimationObjectGroup=!0;class Xc{constructor(t,e,n=null,i=e.blendMode){this._mixer=t,this._clip=e,this._localRoot=n,this.blendMode=i;const r=e.tracks,s=r.length,a=new Array(s),o={endingStart:k,endingEnd:k};for(let t=0;t!==s;++t){const e=r[t].createInterpolant(null);a[t]=e,e.settings=o}this._interpolantSettings=o,this._interpolants=a,this._propertyBindings=new Array(s),this._cacheIndex=null,this._byClipCacheIndex=null,this._timeScaleInterpolant=null,this._weightInterpolant=null,this.loop=2201,this._loopCount=-1,this._startTime=null,this.time=0,this.timeScale=1,this._effectiveTimeScale=1,this.weight=1,this._effectiveWeight=1,this.repetitions=1/0,this.paused=!1,this.enabled=!0,this.clampWhenFinished=!1,this.zeroSlopeAtStart=!0,this.zeroSlopeAtEnd=!0}play(){return this._mixer._activateAction(this),this}stop(){return this._mixer._deactivateAction(this),this.reset()}reset(){return this.paused=!1,this.enabled=!0,this.time=0,this._loopCount=-1,this._startTime=null,this.stopFading().stopWarping()}isRunning(){return this.enabled&amp;&amp;!this.paused&amp;&amp;0!==this.timeScale&amp;&amp;null===this._startTime&amp;&amp;this._mixer._isActiveAction(this)}isScheduled(){return this._mixer._isActiveAction(this)}startAt(t){return this._startTime=t,this}setLoop(t,e){return this.loop=t,this.repetitions=e,this}setEffectiveWeight(t){return this.weight=t,this._effectiveWeight=this.enabled?t:0,this.stopFading()}getEffectiveWeight(){return this._effectiveWeight}fadeIn(t){return this._scheduleFading(t,0,1)}fadeOut(t){return this._scheduleFading(t,1,0)}crossFadeFrom(t,e,n){if(t.fadeOut(e),this.fadeIn(e),n){const n=this._clip.duration,i=t._clip.duration,r=i/n,s=n/i;t.warp(1,r,e),this.warp(s,1,e)}return this}crossFadeTo(t,e,n){return t.crossFadeFrom(this,e,n)}stopFading(){const t=this._weightInterpolant;return null!==t&amp;&amp;(this._weightInterpolant=null,this._mixer._takeBackControlInterpolant(t)),this}setEffectiveTimeScale(t){return this.timeScale=t,this._effectiveTimeScale=this.paused?0:t,this.stopWarping()}getEffectiveTimeScale(){return this._effectiveTimeScale}setDuration(t){return this.timeScale=this._clip.duration/t,this.stopWarping()}syncWith(t){return this.time=t.time,this.timeScale=t.timeScale,this.stopWarping()}halt(t){return this.warp(this._effectiveTimeScale,0,t)}warp(t,e,n){const i=this._mixer,r=i.time,s=this.timeScale;let a=this._timeScaleInterpolant;null===a&amp;&amp;(a=i._lendControlInterpolant(),this._timeScaleInterpolant=a);const o=a.parameterPositions,l=a.sampleValues;return o[0]=r,o[1]=r+n,l[0]=t/s,l[1]=e/s,this}stopWarping(){const t=this._timeScaleInterpolant;return null!==t&amp;&amp;(this._timeScaleInterpolant=null,this._mixer._takeBackControlInterpolant(t)),this}getMixer(){return this._mixer}getClip(){return this._clip}getRoot(){return this._localRoot||this._mixer._root}_update(t,e,n,i){if(!this.enabled)return void this._updateWeight(t);const r=this._startTime;if(null!==r){const i=(t-r)*n;if(i&lt;0||0===n)return;this._startTime=null,e=n*i}e*=this._updateTimeScale(t);const s=this._updateTime(e),a=this._updateWeight(t);if(a&gt;0){const t=this._interpolants,e=this._propertyBindings;switch(this.blendMode){case q:for(let n=0,i=t.length;n!==i;++n)t[n].evaluate(s),e[n].accumulateAdditive(a);break;case j:default:for(let n=0,r=t.length;n!==r;++n)t[n].evaluate(s),e[n].accumulate(i,a)}}}_updateWeight(t){let e=0;if(this.enabled){e=this.weight;const n=this._weightInterpolant;if(null!==n){const i=n.evaluate(t)[0];e*=i,t&gt;n.parameterPositions[1]&amp;&amp;(this.stopFading(),0===i&amp;&amp;(this.enabled=!1))}}return this._effectiveWeight=e,e}_updateTimeScale(t){let e=0;if(!this.paused){e=this.timeScale;const n=this._timeScaleInterpolant;if(null!==n){e*=n.evaluate(t)[0],t&gt;n.parameterPositions[1]&amp;&amp;(this.stopWarping(),0===e?this.paused=!0:this.timeScale=e)}}return this._effectiveTimeScale=e,e}_updateTime(t){const e=this._clip.duration,n=this.loop;let i=this.time+t,r=this._loopCount;const s=2202===n;if(0===t)return-1===r?i:s&amp;&amp;1==(1&amp;r)?e-i:i;if(2200===n){-1===r&amp;&amp;(this._loopCount=0,this._setEndings(!0,!0,!1));t:{if(i&gt;=e)i=e;else{if(!(i&lt;0)){this.time=i;break t}i=0}this.clampWhenFinished?this.paused=!0:this.enabled=!1,this.time=i,this._mixer.dispatchEvent({type:"finished",action:this,direction:t&lt;0?-1:1})}}else{if(-1===r&amp;&amp;(t&gt;=0?(r=0,this._setEndings(!0,0===this.repetitions,s)):this._setEndings(0===this.repetitions,!0,s)),i&gt;=e||i&lt;0){const n=Math.floor(i/e);i-=e*n,r+=Math.abs(n);const a=this.repetitions-r;if(a&lt;=0)this.clampWhenFinished?this.paused=!0:this.enabled=!1,i=t&gt;0?e:0,this.time=i,this._mixer.dispatchEvent({type:"finished",action:this,direction:t&gt;0?1:-1});else{if(1===a){const e=t&lt;0;this._setEndings(e,!e,s)}else this._setEndings(!1,!1,s);this._loopCount=r,this.time=i,this._mixer.dispatchEvent({type:"loop",action:this,loopDelta:n})}}else this.time=i;if(s&amp;&amp;1==(1&amp;r))return e-i}return i}_setEndings(t,e,n){const i=this._interpolantSettings;n?(i.endingStart=V,i.endingEnd=V):(i.endingStart=t?this.zeroSlopeAtStart?V:k:W,i.endingEnd=e?this.zeroSlopeAtEnd?V:k:W)}_scheduleFading(t,e,n){const i=this._mixer,r=i.time;let s=this._weightInterpolant;null===s&amp;&amp;(s=i._lendControlInterpolant(),this._weightInterpolant=s);const a=s.parameterPositions,o=s.sampleValues;return a[0]=r,o[0]=e,a[1]=r+t,o[1]=n,this}}class Yc extends rt{constructor(t){super(),this._root=t,this._initMemoryManager(),this._accuIndex=0,this.time=0,this.timeScale=1}_bindAction(t,e){const n=t._localRoot||this._root,i=t._clip.tracks,r=i.length,s=t._propertyBindings,a=t._interpolants,o=n.uuid,l=this._bindingsByRootAndName;let c=l[o];void 0===c&amp;&amp;(c={},l[o]=c);for(let t=0;t!==r;++t){const r=i[t],l=r.name;let h=c[l];if(void 0!==h)s[t]=h;else{if(h=s[t],void 0!==h){null===h._cacheIndex&amp;&amp;(++h.referenceCount,this._addInactiveBinding(h,o,l));continue}const i=e&amp;&amp;e._propertyBindings[t].binding.parsedPath;h=new Nc(jc.create(n,l,i),r.ValueTypeName,r.getValueSize()),++h.referenceCount,this._addInactiveBinding(h,o,l),s[t]=h}a[t].resultBuffer=h.buffer}}_activateAction(t){if(!this._isActiveAction(t)){if(null===t._cacheIndex){const e=(t._localRoot||this._root).uuid,n=t._clip.uuid,i=this._actionsByClip[n];this._bindAction(t,i&amp;&amp;i.knownActions[0]),this._addInactiveAction(t,n,e)}const e=t._propertyBindings;for(let t=0,n=e.length;t!==n;++t){const n=e[t];0==n.useCount++&amp;&amp;(this._lendBinding(n),n.saveOriginalState())}this._lendAction(t)}}_deactivateAction(t){if(this._isActiveAction(t)){const e=t._propertyBindings;for(let t=0,n=e.length;t!==n;++t){const n=e[t];0==--n.useCount&amp;&amp;(n.restoreOriginalState(),this._takeBackBinding(n))}this._takeBackAction(t)}}_initMemoryManager(){this._actions=[],this._nActiveActions=0,this._actionsByClip={},this._bindings=[],this._nActiveBindings=0,this._bindingsByRootAndName={},this._controlInterpolants=[],this._nActiveControlInterpolants=0;const t=this;this.stats={actions:{get total(){return t._actions.length},get inUse(){return t._nActiveActions}},bindings:{get total(){return t._bindings.length},get inUse(){return t._nActiveBindings}},controlInterpolants:{get total(){return t._controlInterpolants.length},get inUse(){return t._nActiveControlInterpolants}}}}_isActiveAction(t){const e=t._cacheIndex;return null!==e&amp;&amp;e&lt;this._nActiveActions}_addInactiveAction(t,e,n){const i=this._actions,r=this._actionsByClip;let s=r[e];if(void 0===s)s={knownActions:[t],actionByRoot:{}},t._byClipCacheIndex=0,r[e]=s;else{const e=s.knownActions;t._byClipCacheIndex=e.length,e.push(t)}t._cacheIndex=i.length,i.push(t),s.actionByRoot[n]=t}_removeInactiveAction(t){const e=this._actions,n=e[e.length-1],i=t._cacheIndex;n._cacheIndex=i,e[i]=n,e.pop(),t._cacheIndex=null;const r=t._clip.uuid,s=this._actionsByClip,a=s[r],o=a.knownActions,l=o[o.length-1],c=t._byClipCacheIndex;l._byClipCacheIndex=c,o[c]=l,o.pop(),t._byClipCacheIndex=null;delete a.actionByRoot[(t._localRoot||this._root).uuid],0===o.length&amp;&amp;delete s[r],this._removeInactiveBindingsForAction(t)}_removeInactiveBindingsForAction(t){const e=t._propertyBindings;for(let t=0,n=e.length;t!==n;++t){const n=e[t];0==--n.referenceCount&amp;&amp;this._removeInactiveBinding(n)}}_lendAction(t){const e=this._actions,n=t._cacheIndex,i=this._nActiveActions++,r=e[i];t._cacheIndex=i,e[i]=t,r._cacheIndex=n,e[n]=r}_takeBackAction(t){const e=this._actions,n=t._cacheIndex,i=--this._nActiveActions,r=e[i];t._cacheIndex=i,e[i]=t,r._cacheIndex=n,e[n]=r}_addInactiveBinding(t,e,n){const i=this._bindingsByRootAndName,r=this._bindings;let s=i[e];void 0===s&amp;&amp;(s={},i[e]=s),s[n]=t,t._cacheIndex=r.length,r.push(t)}_removeInactiveBinding(t){const e=this._bindings,n=t.binding,i=n.rootNode.uuid,r=n.path,s=this._bindingsByRootAndName,a=s[i],o=e[e.length-1],l=t._cacheIndex;o._cacheIndex=l,e[l]=o,e.pop(),delete a[r],0===Object.keys(a).length&amp;&amp;delete s[i]}_lendBinding(t){const e=this._bindings,n=t._cacheIndex,i=this._nActiveBindings++,r=e[i];t._cacheIndex=i,e[i]=t,r._cacheIndex=n,e[n]=r}_takeBackBinding(t){const e=this._bindings,n=t._cacheIndex,i=--this._nActiveBindings,r=e[i];t._cacheIndex=i,e[i]=t,r._cacheIndex=n,e[n]=r}_lendControlInterpolant(){const t=this._controlInterpolants,e=this._nActiveControlInterpolants++;let n=t[e];return void 0===n&amp;&amp;(n=new qo(new Float32Array(2),new Float32Array(2),1,this._controlInterpolantsResultBuffer),n.__cacheIndex=e,t[e]=n),n}_takeBackControlInterpolant(t){const e=this._controlInterpolants,n=t.__cacheIndex,i=--this._nActiveControlInterpolants,r=e[i];t.__cacheIndex=i,e[i]=t,r.__cacheIndex=n,e[n]=r}clipAction(t,e,n){const i=e||this._root,r=i.uuid;let s="string"==typeof t?nl.findByName(i,t):t;const a=null!==s?s.uuid:t,o=this._actionsByClip[a];let l=null;if(void 0===n&amp;&amp;(n=null!==s?s.blendMode:j),void 0!==o){const t=o.actionByRoot[r];if(void 0!==t&amp;&amp;t.blendMode===n)return t;l=o.knownActions[0],null===s&amp;&amp;(s=l._clip)}if(null===s)return null;const c=new Xc(this,s,e,n);return this._bindAction(c,l),this._addInactiveAction(c,a,r),c}existingAction(t,e){const n=e||this._root,i=n.uuid,r="string"==typeof t?nl.findByName(n,t):t,s=r?r.uuid:t,a=this._actionsByClip[s];return void 0!==a&amp;&amp;a.actionByRoot[i]||null}stopAllAction(){const t=this._actions;for(let e=this._nActiveActions-1;e&gt;=0;--e)t[e].stop();return this}update(t){t*=this.timeScale;const e=this._actions,n=this._nActiveActions,i=this.time+=t,r=Math.sign(t),s=this._accuIndex^=1;for(let a=0;a!==n;++a){e[a]._update(i,t,r,s)}const a=this._bindings,o=this._nActiveBindings;for(let t=0;t!==o;++t)a[t].apply(s);return this}setTime(t){this.time=0;for(let t=0;t&lt;this._actions.length;t++)this._actions[t].time=0;return this.update(t)}getRoot(){return this._root}uncacheClip(t){const e=this._actions,n=t.uuid,i=this._actionsByClip,r=i[n];if(void 0!==r){const t=r.knownActions;for(let n=0,i=t.length;n!==i;++n){const i=t[n];this._deactivateAction(i);const r=i._cacheIndex,s=e[e.length-1];i._cacheIndex=null,i._byClipCacheIndex=null,s._cacheIndex=r,e[r]=s,e.pop(),this._removeInactiveBindingsForAction(i)}delete i[n]}}uncacheRoot(t){const e=t.uuid,n=this._actionsByClip;for(const t in n){const i=n[t].actionByRoot[e];void 0!==i&amp;&amp;(this._deactivateAction(i),this._removeInactiveAction(i))}const i=this._bindingsByRootAndName[e];if(void 0!==i)for(const t in i){const e=i[t];e.restoreOriginalState(),this._removeInactiveBinding(e)}}uncacheAction(t,e){const n=this.existingAction(t,e);null!==n&amp;&amp;(this._deactivateAction(n),this._removeInactiveAction(n))}}Yc.prototype._controlInterpolantsResultBuffer=new Float32Array(1);class Zc{constructor(t){"string"==typeof t&amp;&amp;(console.warn("THREE.Uniform: Type parameter is no longer needed."),t=arguments[1]),this.value=t}clone(){return new Zc(void 0===this.value.clone?this.value:this.value.clone())}}class Jc extends Es{constructor(t,e,n=1){super(t,e),this.meshPerAttribute=n||1}copy(t){return super.copy(t),this.meshPerAttribute=t.meshPerAttribute,this}clone(t){const e=super.clone(t);return e.meshPerAttribute=this.meshPerAttribute,e}toJSON(t){const e=super.toJSON(t);return e.isInstancedInterleavedBuffer=!0,e.meshPerAttribute=this.meshPerAttribute,e}}Jc.prototype.isInstancedInterleavedBuffer=!0;class Qc{constructor(t,e,n,i,r){this.buffer=t,this.type=e,this.itemSize=n,this.elementSize=i,this.count=r,this.version=0}set needsUpdate(t){!0===t&amp;&amp;this.version++}setBuffer(t){return this.buffer=t,this}setType(t,e){return this.type=t,this.elementSize=e,this}setItemSize(t){return this.itemSize=t,this}setCount(t){return this.count=t,this}}Qc.prototype.isGLBufferAttribute=!0;function Kc(t,e){return t.distance-e.distance}function $c(t,e,n,i){if(t.layers.test(e.layers)&amp;&amp;t.raycast(e,n),!0===i){const i=t.children;for(let t=0,r=i.length;t&lt;r;t++)$c(i[t],e,n,!0)}}const th=new vt;class eh{constructor(t=new vt(1/0,1/0),e=new vt(-1/0,-1/0)){this.min=t,this.max=e}set(t,e){return this.min.copy(t),this.max.copy(e),this}setFromPoints(t){this.makeEmpty();for(let e=0,n=t.length;e&lt;n;e++)this.expandByPoint(t[e]);return this}setFromCenterAndSize(t,e){const n=th.copy(e).multiplyScalar(.5);return this.min.copy(t).sub(n),this.max.copy(t).add(n),this}clone(){return(new this.constructor).copy(this)}copy(t){return this.min.copy(t.min),this.max.copy(t.max),this}makeEmpty(){return this.min.x=this.min.y=1/0,this.max.x=this.max.y=-1/0,this}isEmpty(){return this.max.x&lt;this.min.x||this.max.y&lt;this.min.y}getCenter(t){return void 0===t&amp;&amp;(console.warn("THREE.Box2: .getCenter() target is now required"),t=new vt),this.isEmpty()?t.set(0,0):t.addVectors(this.min,this.max).multiplyScalar(.5)}getSize(t){return void 0===t&amp;&amp;(console.warn("THREE.Box2: .getSize() target is now required"),t=new vt),this.isEmpty()?t.set(0,0):t.subVectors(this.max,this.min)}expandByPoint(t){return this.min.min(t),this.max.max(t),this}expandByVector(t){return this.min.sub(t),this.max.add(t),this}expandByScalar(t){return this.min.addScalar(-t),this.max.addScalar(t),this}containsPoint(t){return!(t.x&lt;this.min.x||t.x&gt;this.max.x||t.y&lt;this.min.y||t.y&gt;this.max.y)}containsBox(t){return this.min.x&lt;=t.min.x&amp;&amp;t.max.x&lt;=this.max.x&amp;&amp;this.min.y&lt;=t.min.y&amp;&amp;t.max.y&lt;=this.max.y}getParameter(t,e){return void 0===e&amp;&amp;(console.warn("THREE.Box2: .getParameter() target is now required"),e=new vt),e.set((t.x-this.min.x)/(this.max.x-this.min.x),(t.y-this.min.y)/(this.max.y-this.min.y))}intersectsBox(t){return!(t.max.x&lt;this.min.x||t.min.x&gt;this.max.x||t.max.y&lt;this.min.y||t.min.y&gt;this.max.y)}clampPoint(t,e){return void 0===e&amp;&amp;(console.warn("THREE.Box2: .clampPoint() target is now required"),e=new vt),e.copy(t).clamp(this.min,this.max)}distanceToPoint(t){return th.copy(t).clamp(this.min,this.max).sub(t).length()}intersect(t){return this.min.max(t.min),this.max.min(t.max),this}union(t){return this.min.min(t.min),this.max.max(t.max),this}translate(t){return this.min.add(t),this.max.add(t),this}equals(t){return t.min.equals(this.min)&amp;&amp;t.max.equals(this.max)}}eh.prototype.isBox2=!0;const nh=new Lt,ih=new Lt;class rh{constructor(t=new Lt,e=new Lt){this.start=t,this.end=e}set(t,e){return this.start.copy(t),this.end.copy(e),this}copy(t){return this.start.copy(t.start),this.end.copy(t.end),this}getCenter(t){return void 0===t&amp;&amp;(console.warn("THREE.Line3: .getCenter() target is now required"),t=new Lt),t.addVectors(this.start,this.end).multiplyScalar(.5)}delta(t){return void 0===t&amp;&amp;(console.warn("THREE.Line3: .delta() target is now required"),t=new Lt),t.subVectors(this.end,this.start)}distanceSq(){return this.start.distanceToSquared(this.end)}distance(){return this.start.distanceTo(this.end)}at(t,e){return void 0===e&amp;&amp;(console.warn("THREE.Line3: .at() target is now required"),e=new Lt),this.delta(e).multiplyScalar(t).add(this.start)}closestPointToPointParameter(t,e){nh.subVectors(t,this.start),ih.subVectors(this.end,this.start);const n=ih.dot(ih);let i=ih.dot(nh)/n;return e&amp;&amp;(i=ht(i,0,1)),i}closestPointToPoint(t,e,n){const i=this.closestPointToPointParameter(t,e);return void 0===n&amp;&amp;(console.warn("THREE.Line3: .closestPointToPoint() target is now required"),n=new Lt),this.delta(n).multiplyScalar(i).add(this.start)}applyMatrix4(t){return this.start.applyMatrix4(t),this.end.applyMatrix4(t),this}equals(t){return t.start.equals(this.start)&amp;&amp;t.end.equals(this.end)}clone(){return(new this.constructor).copy(this)}}class sh extends Ce{constructor(t){super(),this.material=t,this.render=function(){},this.hasPositions=!1,this.hasNormals=!1,this.hasColors=!1,this.hasUvs=!1,this.positionArray=null,this.normalArray=null,this.colorArray=null,this.uvArray=null,this.count=0}}sh.prototype.isImmediateRenderObject=!0;const ah=new Lt;const oh=new Lt,lh=new se,ch=new se;class hh extends ya{constructor(t){const e=uh(t),n=new En,i=[],r=[],s=new tn(0,0,1),a=new tn(0,1,0);for(let t=0;t&lt;e.length;t++){const n=e[t];n.parent&amp;&amp;n.parent.isBone&amp;&amp;(i.push(0,0,0),i.push(0,0,0),r.push(s.r,s.g,s.b),r.push(a.r,a.g,a.b))}n.setAttribute("position",new mn(i,3)),n.setAttribute("color",new mn(r,3));super(n,new ca({vertexColors:!0,depthTest:!1,depthWrite:!1,toneMapped:!1,transparent:!0})),this.type="SkeletonHelper",this.isSkeletonHelper=!0,this.root=t,this.bones=e,this.matrix=t.matrixWorld,this.matrixAutoUpdate=!1}updateMatrixWorld(t){const e=this.bones,n=this.geometry,i=n.getAttribute("position");ch.copy(this.root.matrixWorld).invert();for(let t=0,n=0;t&lt;e.length;t++){const r=e[t];r.parent&amp;&amp;r.parent.isBone&amp;&amp;(lh.multiplyMatrices(ch,r.matrixWorld),oh.setFromMatrixPosition(lh),i.setXYZ(n,oh.x,oh.y,oh.z),lh.multiplyMatrices(ch,r.parent.matrixWorld),oh.setFromMatrixPosition(lh),i.setXYZ(n+1,oh.x,oh.y,oh.z),n+=2)}n.getAttribute("position").needsUpdate=!0,super.updateMatrixWorld(t)}}function uh(t){const e=[];t&amp;&amp;t.isBone&amp;&amp;e.push(t);for(let n=0;n&lt;t.children.length;n++)e.push.apply(e,uh(t.children[n]));return e}const dh=new Lt,ph=new tn,mh=new tn;class fh extends ya{constructor(t=10,e=10,n=4473924,i=8947848){n=new tn(n),i=new tn(i);const r=e/2,s=t/e,a=t/2,o=[],l=[];for(let t=0,c=0,h=-a;t&lt;=e;t++,h+=s){o.push(-a,0,h,a,0,h),o.push(h,0,-a,h,0,a);const e=t===r?n:i;e.toArray(l,c),c+=3,e.toArray(l,c),c+=3,e.toArray(l,c),c+=3,e.toArray(l,c),c+=3}const c=new En;c.setAttribute("position",new mn(o,3)),c.setAttribute("color",new mn(l,3));super(c,new ca({vertexColors:!0,toneMapped:!1})),this.type="GridHelper"}}const gh=new Lt,vh=new Lt,yh=new Lt;const xh=new Lt,_h=new Qn;function wh(t,e,n,i,r,s,a){xh.set(r,s,a).unproject(i);const o=e[t];if(void 0!==o){const t=n.getAttribute("position");for(let e=0,n=o.length;e&lt;n;e++)t.setXYZ(o[e],xh.x,xh.y,xh.z)}}const bh=new Pt;class Mh extends ya{constructor(t,e=16776960){const n=new Uint16Array([0,1,1,2,2,3,3,0,4,5,5,6,6,7,7,4,0,4,1,5,2,6,3,7]),i=new Float32Array(24),r=new En;r.setIndex(new sn(n,1)),r.setAttribute("position",new sn(i,3)),super(r,new ca({color:e,toneMapped:!1})),this.object=t,this.type="BoxHelper",this.matrixAutoUpdate=!1,this.update()}update(t){if(void 0!==t&amp;&amp;console.warn("THREE.BoxHelper: .update() has no longer arguments."),void 0!==this.object&amp;&amp;bh.setFromObject(this.object),bh.isEmpty())return;const e=bh.min,n=bh.max,i=this.geometry.attributes.position,r=i.array;r[0]=n.x,r[1]=n.y,r[2]=n.z,r[3]=e.x,r[4]=n.y,r[5]=n.z,r[6]=e.x,r[7]=e.y,r[8]=n.z,r[9]=n.x,r[10]=e.y,r[11]=n.z,r[12]=n.x,r[13]=n.y,r[14]=e.z,r[15]=e.x,r[16]=n.y,r[17]=e.z,r[18]=e.x,r[19]=e.y,r[20]=e.z,r[21]=n.x,r[22]=e.y,r[23]=e.z,i.needsUpdate=!0,this.geometry.computeBoundingSphere()}setFromObject(t){return this.object=t,this.update(),this}copy(t){return ya.prototype.copy.call(this,t),this.object=t.object,this}}const Sh=new Lt;let Th,Eh;class Ah extends ya{constructor(t=1){const e=[0,0,0,t,0,0,0,0,0,0,t,0,0,0,0,0,0,t],n=new En;n.setAttribute("position",new mn(e,3)),n.setAttribute("color",new mn([1,0,0,1,.6,0,0,1,0,.6,1,0,0,0,1,0,.6,1],3));super(n,new ca({vertexColors:!0,toneMapped:!1})),this.type="AxesHelper"}dispose(){this.geometry.dispose(),this.material.dispose()}}const Lh=new Float32Array(1),Rh=new Int32Array(Lh.buffer);const Ch=Math.pow(2,8),Ph=[.125,.215,.35,.446,.526,.582],Dh=5+Ph.length,Ih=20,Nh={[X]:0,[Y]:1,[J]:2,[Q]:3,[K]:4,[$]:5,[Z]:6},Bh=new en({side:1,depthWrite:!1,depthTest:!1}),zh=new Wn(new qn,Bh),Fh=new Jl,{_lodPlanes:Oh,_sizeLods:Hh,_sigmas:Gh}=Yh(),Uh=new tn;let kh=null;const Vh=(1+Math.sqrt(5))/2,Wh=1/Vh,jh=[new Lt(1,1,1),new Lt(-1,1,1),new Lt(1,1,-1),new Lt(-1,1,-1),new Lt(0,Vh,Wh),new Lt(0,Vh,-Wh),new Lt(Wh,0,Vh),new Lt(-Wh,0,Vh),new Lt(Vh,Wh,0),new Lt(-Vh,Wh,0)];function qh(t){const e=Math.max(t.r,t.g,t.b),n=Math.min(Math.max(Math.ceil(Math.log2(e)),-128),127);t.multiplyScalar(Math.pow(2,-n));return(n+128)/255}function Xh(t){return void 0!==t&amp;&amp;t.type===x&amp;&amp;(t.encoding===X||t.encoding===Y||t.encoding===Z)}function Yh(){const t=[],e=[],n=[];let i=8;for(let r=0;r&lt;Dh;r++){const s=Math.pow(2,i);e.push(s);let a=1/s;r&gt;4?a=Ph[r-8+4-1]:0==r&amp;&amp;(a=0),n.push(a);const o=1/(s-1),l=-o/2,c=1+o/2,h=[l,l,c,l,c,c,l,l,c,c,l,c],u=6,d=6,p=3,m=2,f=1,g=new Float32Array(p*d*u),v=new Float32Array(m*d*u),y=new Float32Array(f*d*u);for(let t=0;t&lt;u;t++){const e=t%3*2/3-1,n=t&gt;2?0:-1,i=[e,n,0,e+2/3,n,0,e+2/3,n+1,0,e,n,0,e+2/3,n+1,0,e,n+1,0];g.set(i,p*d*t),v.set(h,m*d*t);const r=[t,t,t,t,t,t];y.set(r,f*d*t)}const x=new En;x.setAttribute("position",new sn(g,p)),x.setAttribute("uv",new sn(v,m)),x.setAttribute("faceIndex",new sn(y,f)),t.push(x),i&gt;4&amp;&amp;i--}return{_lodPlanes:t,_sizeLods:e,_sigmas:n}}function Zh(t){const e=new Tt(3*Ch,3*Ch,t);return e.texture.mapping=l,e.texture.name="PMREM.cubeUv",e.scissorTest=!0,e}function Jh(t,e,n,i,r){t.viewport.set(e,n,i,r),t.scissor.set(e,n,i,r)}function Qh(){const t=new vt(1,1);return new Io({name:"EquirectangularToCubeUV",uniforms:{envMap:{value:null},texelSize:{value:t},inputEncoding:{value:Nh[3e3]},outputEncoding:{value:Nh[3e3]}},vertexShader:$h(),fragmentShader:`\n\n\t\t\tprecision mediump float;\n\t\t\tprecision mediump int;\n\n\t\t\tvarying vec3 vOutputDirection;\n\n\t\t\tuniform sampler2D envMap;\n\t\t\tuniform vec2 texelSize;\n\n\t\t\t${tu()}\n\n\t\t\t#include &lt;common&gt;\n\n\t\t\tvoid main() {\n\n\t\t\t\tgl_FragColor = vec4( 0.0, 0.0, 0.0, 1.0 );\n\n\t\t\t\tvec3 outputDirection = normalize( vOutputDirection );\n\t\t\t\tvec2 uv = equirectUv( outputDirection );\n\n\t\t\t\tvec2 f = fract( uv / texelSize - 0.5 );\n\t\t\t\tuv -= f * texelSize;\n\t\t\t\tvec3 tl = envMapTexelToLinear( texture2D ( envMap, uv ) ).rgb;\n\t\t\t\tuv.x += texelSize.x;\n\t\t\t\tvec3 tr = envMapTexelToLinear( texture2D ( envMap, uv ) ).rgb;\n\t\t\t\tuv.y += texelSize.y;\n\t\t\t\tvec3 br = envMapTexelToLinear( texture2D ( envMap, uv ) ).rgb;\n\t\t\t\tuv.x -= texelSize.x;\n\t\t\t\tvec3 bl = envMapTexelToLinear( texture2D ( envMap, uv ) ).rgb;\n\n\t\t\t\tvec3 tm = mix( tl, tr, f.x );\n\t\t\t\tvec3 bm = mix( bl, br, f.x );\n\t\t\t\tgl_FragColor.rgb = mix( tm, bm, f.y );\n\n\t\t\t\tgl_FragColor = linearToOutputTexel( gl_FragColor );\n\n\t\t\t}\n\t\t`,blending:0,depthTest:!1,depthWrite:!1})}function Kh(){return new Io({name:"CubemapToCubeUV",uniforms:{envMap:{value:null},inputEncoding:{value:Nh[3e3]},outputEncoding:{value:Nh[3e3]}},vertexShader:$h(),fragmentShader:`\n\n\t\t\tprecision mediump float;\n\t\t\tprecision mediump int;\n\n\t\t\tvarying vec3 vOutputDirection;\n\n\t\t\tuniform samplerCube envMap;\n\n\t\t\t${tu()}\n\n\t\t\tvoid main() {\n\n\t\t\t\tgl_FragColor = vec4( 0.0, 0.0, 0.0, 1.0 );\n\t\t\t\tgl_FragColor.rgb = envMapTexelToLinear( textureCube( envMap, vec3( - vOutputDirection.x, vOutputDirection.yz ) ) ).rgb;\n\t\t\t\tgl_FragColor = linearToOutputTexel( gl_FragColor );\n\n\t\t\t}\n\t\t`,blending:0,depthTest:!1,depthWrite:!1})}function $h(){return"\n\n\t\tprecision mediump float;\n\t\tprecision mediump int;\n\n\t\tattribute vec3 position;\n\t\tattribute vec2 uv;\n\t\tattribute float faceIndex;\n\n\t\tvarying vec3 vOutputDirection;\n\n\t\t// RH coordinate system; PMREM face-indexing convention\n\t\tvec3 getDirection( vec2 uv, float face ) {\n\n\t\t\tuv = 2.0 * uv - 1.0;\n\n\t\t\tvec3 direction = vec3( uv, 1.0 );\n\n\t\t\tif ( face == 0.0 ) {\n\n\t\t\t\tdirection = direction.zyx; // ( 1, v, u ) pos x\n\n\t\t\t} else if ( face == 1.0 ) {\n\n\t\t\t\tdirection = direction.xzy;\n\t\t\t\tdirection.xz *= -1.0; // ( -u, 1, -v ) pos y\n\n\t\t\t} else if ( face == 2.0 ) {\n\n\t\t\t\tdirection.x *= -1.0; // ( -u, v, 1 ) pos z\n\n\t\t\t} else if ( face == 3.0 ) {\n\n\t\t\t\tdirection = direction.zyx;\n\t\t\t\tdirection.xz *= -1.0; // ( -1, v, -u ) neg x\n\n\t\t\t} else if ( face == 4.0 ) {\n\n\t\t\t\tdirection = direction.xzy;\n\t\t\t\tdirection.xy *= -1.0; // ( -u, -1, v ) neg y\n\n\t\t\t} else if ( face == 5.0 ) {\n\n\t\t\t\tdirection.z *= -1.0; // ( u, v, -1 ) neg z\n\n\t\t\t}\n\n\t\t\treturn direction;\n\n\t\t}\n\n\t\tvoid main() {\n\n\t\t\tvOutputDirection = getDirection( uv, faceIndex );\n\t\t\tgl_Position = vec4( position, 1.0 );\n\n\t\t}\n\t"}function tu(){return"\n\n\t\tuniform int inputEncoding;\n\t\tuniform int outputEncoding;\n\n\t\t#include &lt;encodings_pars_fragment&gt;\n\n\t\tvec4 inputTexelToLinear( vec4 value ) {\n\n\t\t\tif ( inputEncoding == 0 ) {\n\n\t\t\t\treturn value;\n\n\t\t\t} else if ( inputEncoding == 1 ) {\n\n\t\t\t\treturn sRGBToLinear( value );\n\n\t\t\t} else if ( inputEncoding == 2 ) {\n\n\t\t\t\treturn RGBEToLinear( value );\n\n\t\t\t} else if ( inputEncoding == 3 ) {\n\n\t\t\t\treturn RGBMToLinear( value, 7.0 );\n\n\t\t\t} else if ( inputEncoding == 4 ) {\n\n\t\t\t\treturn RGBMToLinear( value, 16.0 );\n\n\t\t\t} else if ( inputEncoding == 5 ) {\n\n\t\t\t\treturn RGBDToLinear( value, 256.0 );\n\n\t\t\t} else {\n\n\t\t\t\treturn GammaToLinear( value, 2.2 );\n\n\t\t\t}\n\n\t\t}\n\n\t\tvec4 linearToOutputTexel( vec4 value ) {\n\n\t\t\tif ( outputEncoding == 0 ) {\n\n\t\t\t\treturn value;\n\n\t\t\t} else if ( outputEncoding == 1 ) {\n\n\t\t\t\treturn LinearTosRGB( value );\n\n\t\t\t} else if ( outputEncoding == 2 ) {\n\n\t\t\t\treturn LinearToRGBE( value );\n\n\t\t\t} else if ( outputEncoding == 3 ) {\n\n\t\t\t\treturn LinearToRGBM( value, 7.0 );\n\n\t\t\t} else if ( outputEncoding == 4 ) {\n\n\t\t\t\treturn LinearToRGBM( value, 16.0 );\n\n\t\t\t} else if ( outputEncoding == 5 ) {\n\n\t\t\t\treturn LinearToRGBD( value, 256.0 );\n\n\t\t\t} else {\n\n\t\t\t\treturn LinearToGamma( value, 2.2 );\n\n\t\t\t}\n\n\t\t}\n\n\t\tvec4 envMapTexelToLinear( vec4 color ) {\n\n\t\t\treturn inputTexelToLinear( color );\n\n\t\t}\n\t"}ml.create=function(t,e){return console.log("THREE.Curve.create() has been deprecated"),t.prototype=Object.create(ml.prototype),t.prototype.constructor=t,t.prototype.getPoint=e,t},Bl.prototype.fromPoints=function(t){return console.warn("THREE.Path: .fromPoints() has been renamed to .setFromPoints()."),this.setFromPoints(t)},fh.prototype.setColors=function(){console.error("THREE.GridHelper: setColors() has been deprecated, pass them in the constructor instead.")},hh.prototype.update=function(){console.error("THREE.SkeletonHelper: update() no longer needs to be called.")},ol.prototype.extractUrlBase=function(t){return console.warn("THREE.Loader: .extractUrlBase() has been deprecated. Use THREE.LoaderUtils.extractUrlBase() instead."),rc.extractUrlBase(t)},ol.Handlers={add:function(){console.error("THREE.Loader: Handlers.add() has been removed. Use LoadingManager.addHandler() instead.")},get:function(){console.error("THREE.Loader: Handlers.get() has been removed. Use LoadingManager.getHandler() instead.")}},eh.prototype.center=function(t){return console.warn("THREE.Box2: .center() has been renamed to .getCenter()."),this.getCenter(t)},eh.prototype.empty=function(){return console.warn("THREE.Box2: .empty() has been renamed to .isEmpty()."),this.isEmpty()},eh.prototype.isIntersectionBox=function(t){return console.warn("THREE.Box2: .isIntersectionBox() has been renamed to .intersectsBox()."),this.intersectsBox(t)},eh.prototype.size=function(t){return console.warn("THREE.Box2: .size() has been renamed to .getSize()."),this.getSize(t)},Pt.prototype.center=function(t){return console.warn("THREE.Box3: .center() has been renamed to .getCenter()."),this.getCenter(t)},Pt.prototype.empty=function(){return console.warn("THREE.Box3: .empty() has been renamed to .isEmpty()."),this.isEmpty()},Pt.prototype.isIntersectionBox=function(t){return console.warn("THREE.Box3: .isIntersectionBox() has been renamed to .intersectsBox()."),this.intersectsBox(t)},Pt.prototype.isIntersectionSphere=function(t){return console.warn("THREE.Box3: .isIntersectionSphere() has been renamed to .intersectsSphere()."),this.intersectsSphere(t)},Pt.prototype.size=function(t){return console.warn("THREE.Box3: .size() has been renamed to .getSize()."),this.getSize(t)},Jt.prototype.empty=function(){return console.warn("THREE.Sphere: .empty() has been renamed to .isEmpty()."),this.isEmpty()},ai.prototype.setFromMatrix=function(t){return console.warn("THREE.Frustum: .setFromMatrix() has been renamed to .setFromProjectionMatrix()."),this.setFromProjectionMatrix(t)},rh.prototype.center=function(t){return console.warn("THREE.Line3: .center() has been renamed to .getCenter()."),this.getCenter(t)},yt.prototype.flattenToArrayOffset=function(t,e){return console.warn("THREE.Matrix3: .flattenToArrayOffset() has been deprecated. Use .toArray() instead."),this.toArray(t,e)},yt.prototype.multiplyVector3=function(t){return console.warn("THREE.Matrix3: .multiplyVector3() has been removed. Use vector.applyMatrix3( matrix ) instead."),t.applyMatrix3(this)},yt.prototype.multiplyVector3Array=function(){console.error("THREE.Matrix3: .multiplyVector3Array() has been removed.")},yt.prototype.applyToBufferAttribute=function(t){return console.warn("THREE.Matrix3: .applyToBufferAttribute() has been removed. Use attribute.applyMatrix3( matrix ) instead."),t.applyMatrix3(this)},yt.prototype.applyToVector3Array=function(){console.error("THREE.Matrix3: .applyToVector3Array() has been removed.")},yt.prototype.getInverse=function(t){return console.warn("THREE.Matrix3: .getInverse() has been removed. Use matrixInv.copy( matrix ).invert(); instead."),this.copy(t).invert()},se.prototype.extractPosition=function(t){return console.warn("THREE.Matrix4: .extractPosition() has been renamed to .copyPosition()."),this.copyPosition(t)},se.prototype.flattenToArrayOffset=function(t,e){return console.warn("THREE.Matrix4: .flattenToArrayOffset() has been deprecated. Use .toArray() instead."),this.toArray(t,e)},se.prototype.getPosition=function(){return console.warn("THREE.Matrix4: .getPosition() has been removed. Use Vector3.setFromMatrixPosition( matrix ) instead."),(new Lt).setFromMatrixColumn(this,3)},se.prototype.setRotationFromQuaternion=function(t){return console.warn("THREE.Matrix4: .setRotationFromQuaternion() has been renamed to .makeRotationFromQuaternion()."),this.makeRotationFromQuaternion(t)},se.prototype.multiplyToArray=function(){console.warn("THREE.Matrix4: .multiplyToArray() has been removed.")},se.prototype.multiplyVector3=function(t){return console.warn("THREE.Matrix4: .multiplyVector3() has been removed. Use vector.applyMatrix4( matrix ) instead."),t.applyMatrix4(this)},se.prototype.multiplyVector4=function(t){return console.warn("THREE.Matrix4: .multiplyVector4() has been removed. Use vector.applyMatrix4( matrix ) instead."),t.applyMatrix4(this)},se.prototype.multiplyVector3Array=function(){console.error("THREE.Matrix4: .multiplyVector3Array() has been removed.")},se.prototype.rotateAxis=function(t){console.warn("THREE.Matrix4: .rotateAxis() has been removed. Use Vector3.transformDirection( matrix ) instead."),t.transformDirection(this)},se.prototype.crossVector=function(t){return console.warn("THREE.Matrix4: .crossVector() has been removed. Use vector.applyMatrix4( matrix ) instead."),t.applyMatrix4(this)},se.prototype.translate=function(){console.error("THREE.Matrix4: .translate() has been removed.")},se.prototype.rotateX=function(){console.error("THREE.Matrix4: .rotateX() has been removed.")},se.prototype.rotateY=function(){console.error("THREE.Matrix4: .rotateY() has been removed.")},se.prototype.rotateZ=function(){console.error("THREE.Matrix4: .rotateZ() has been removed.")},se.prototype.rotateByAxis=function(){console.error("THREE.Matrix4: .rotateByAxis() has been removed.")},se.prototype.applyToBufferAttribute=function(t){return console.warn("THREE.Matrix4: .applyToBufferAttribute() has been removed. Use attribute.applyMatrix4( matrix ) instead."),t.applyMatrix4(this)},se.prototype.applyToVector3Array=function(){console.error("THREE.Matrix4: .applyToVector3Array() has been removed.")},se.prototype.makeFrustum=function(t,e,n,i,r,s){return console.warn("THREE.Matrix4: .makeFrustum() has been removed. Use .makePerspective( left, right, top, bottom, near, far ) instead."),this.makePerspective(t,e,i,n,r,s)},se.prototype.getInverse=function(t){return console.warn("THREE.Matrix4: .getInverse() has been removed. Use matrixInv.copy( matrix ).invert(); instead."),this.copy(t).invert()},Ne.prototype.isIntersectionLine=function(t){return console.warn("THREE.Plane: .isIntersectionLine() has been renamed to .intersectsLine()."),this.intersectsLine(t)},At.prototype.multiplyVector3=function(t){return console.warn("THREE.Quaternion: .multiplyVector3() has been removed. Use is now vector.applyQuaternion( quaternion ) instead."),t.applyQuaternion(this)},At.prototype.inverse=function(){return console.warn("THREE.Quaternion: .inverse() has been renamed to invert()."),this.invert()},re.prototype.isIntersectionBox=function(t){return console.warn("THREE.Ray: .isIntersectionBox() has been renamed to .intersectsBox()."),this.intersectsBox(t)},re.prototype.isIntersectionPlane=function(t){return console.warn("THREE.Ray: .isIntersectionPlane() has been renamed to .intersectsPlane()."),this.intersectsPlane(t)},re.prototype.isIntersectionSphere=function(t){return console.warn("THREE.Ray: .isIntersectionSphere() has been renamed to .intersectsSphere()."),this.intersectsSphere(t)},je.prototype.area=function(){return console.warn("THREE.Triangle: .area() has been renamed to .getArea()."),this.getArea()},je.prototype.barycoordFromPoint=function(t,e){return console.warn("THREE.Triangle: .barycoordFromPoint() has been renamed to .getBarycoord()."),this.getBarycoord(t,e)},je.prototype.midpoint=function(t){return console.warn("THREE.Triangle: .midpoint() has been renamed to .getMidpoint()."),this.getMidpoint(t)},je.prototypenormal=function(t){return console.warn("THREE.Triangle: .normal() has been renamed to .getNormal()."),this.getNormal(t)},je.prototype.plane=function(t){return console.warn("THREE.Triangle: .plane() has been renamed to .getPlane()."),this.getPlane(t)},je.barycoordFromPoint=function(t,e,n,i,r){return console.warn("THREE.Triangle: .barycoordFromPoint() has been renamed to .getBarycoord()."),je.getBarycoord(t,e,n,i,r)},je.normal=function(t,e,n,i){return console.warn("THREE.Triangle: .normal() has been renamed to .getNormal()."),je.getNormal(t,e,n,i)},zl.prototype.extractAllPoints=function(t){return console.warn("THREE.Shape: .extractAllPoints() has been removed. Use .extractPoints() instead."),this.extractPoints(t)},zl.prototype.extrude=function(t){return console.warn("THREE.Shape: .extrude() has been removed. Use ExtrudeGeometry() instead."),new go(this,t)},zl.prototype.makeGeometry=function(t){return console.warn("THREE.Shape: .makeGeometry() has been removed. Use ShapeGeometry() instead."),new Mo(this,t)},vt.prototype.fromAttribute=function(t,e,n){return console.warn("THREE.Vector2: .fromAttribute() has been renamed to .fromBufferAttribute()."),this.fromBufferAttribute(t,e,n)},vt.prototype.distanceToManhattan=function(t){return console.warn("THREE.Vector2: .distanceToManhattan() has been renamed to .manhattanDistanceTo()."),this.manhattanDistanceTo(t)},vt.prototype.lengthManhattan=function(){return console.warn("THREE.Vector2: .lengthManhattan() has been renamed to .manhattanLength()."),this.manhattanLength()},Lt.prototype.setEulerFromRotationMatrix=function(){console.error("THREE.Vector3: .setEulerFromRotationMatrix() has been removed. Use Euler.setFromRotationMatrix() instead.")},Lt.prototype.setEulerFromQuaternion=function(){console.error("THREE.Vector3: .setEulerFromQuaternion() has been removed. Use Euler.setFromQuaternion() instead.")},Lt.prototype.getPositionFromMatrix=function(t){return console.warn("THREE.Vector3: .getPositionFromMatrix() has been renamed to .setFromMatrixPosition()."),this.setFromMatrixPosition(t)},Lt.prototype.getScaleFromMatrix=function(t){return console.warn("THREE.Vector3: .getScaleFromMatrix() has been renamed to .setFromMatrixScale()."),this.setFromMatrixScale(t)},Lt.prototype.getColumnFromMatrix=function(t,e){return console.warn("THREE.Vector3: .getColumnFromMatrix() has been renamed to .setFromMatrixColumn()."),this.setFromMatrixColumn(e,t)},Lt.prototype.applyProjection=function(t){return console.warn("THREE.Vector3: .applyProjection() has been removed. Use .applyMatrix4( m ) instead."),this.applyMatrix4(t)},Lt.prototype.fromAttribute=function(t,e,n){return console.warn("THREE.Vector3: .fromAttribute() has been renamed to .fromBufferAttribute()."),this.fromBufferAttribute(t,e,n)},Lt.prototype.distanceToManhattan=function(t){return console.warn("THREE.Vector3: .distanceToManhattan() has been renamed to .manhattanDistanceTo()."),this.manhattanDistanceTo(t)},Lt.prototype.lengthManhattan=function(){return console.warn("THREE.Vector3: .lengthManhattan() has been renamed to .manhattanLength()."),this.manhattanLength()},St.prototype.fromAttribute=function(t,e,n){return console.warn("THREE.Vector4: .fromAttribute() has been renamed to .fromBufferAttribute()."),this.fromBufferAttribute(t,e,n)},St.prototype.lengthManhattan=function(){return console.warn("THREE.Vector4: .lengthManhattan() has been renamed to .manhattanLength()."),this.manhattanLength()},Ce.prototype.getChildByName=function(t){return console.warn("THREE.Object3D: .getChildByName() has been renamed to .getObjectByName()."),this.getObjectByName(t)},Ce.prototype.renderDepth=function(){console.warn("THREE.Object3D: .renderDepth has been removed. Use .renderOrder, instead.")},Ce.prototype.translate=function(t,e){return console.warn("THREE.Object3D: .translate() has been removed. Use .translateOnAxis( axis, distance ) instead."),this.translateOnAxis(e,t)},Ce.prototype.getWorldRotation=function(){console.error("THREE.Object3D: .getWorldRotation() has been removed. Use THREE.Object3D.getWorldQuaternion( target ) instead.")},Ce.prototype.applyMatrix=function(t){return console.warn("THREE.Object3D: .applyMatrix() has been renamed to .applyMatrix4()."),this.applyMatrix4(t)},Object.defineProperties(Ce.prototype,{eulerOrder:{get:function(){return console.warn("THREE.Object3D: .eulerOrder is now .rotation.order."),this.rotation.order},set:function(t){console.warn("THREE.Object3D: .eulerOrder is now .rotation.order."),this.rotation.order=t}},useQuaternion:{get:function(){console.warn("THREE.Object3D: .useQuaternion has been removed. The library now uses quaternions by default.")},set:function(){console.warn("THREE.Object3D: .useQuaternion has been removed. The library now uses quaternions by default.")}}}),Wn.prototype.setDrawMode=function(){console.error("THREE.Mesh: .setDrawMode() has been removed. The renderer now always assumes THREE.TrianglesDrawMode. Transform your geometry via BufferGeometryUtils.toTrianglesDrawMode() if necessary.")},Object.defineProperties(Wn.prototype,{drawMode:{get:function(){return console.error("THREE.Mesh: .drawMode has been removed. The renderer now always assumes THREE.TrianglesDrawMode."),0},set:function(){console.error("THREE.Mesh: .drawMode has been removed. The renderer now always assumes THREE.TrianglesDrawMode. Transform your geometry via BufferGeometryUtils.toTrianglesDrawMode() if necessary.")}}}),$s.prototype.initBones=function(){console.error("THREE.SkinnedMesh: initBones() has been removed.")},Kn.prototype.setLens=function(t,e){console.warn("THREE.PerspectiveCamera.setLens is deprecated. Use .setFocalLength and .filmGauge for a photographic setup."),void 0!==e&amp;&amp;(this.filmGauge=e),this.setFocalLength(t)},Object.defineProperties(Fl.prototype,{onlyShadow:{set:function(){console.warn("THREE.Light: .onlyShadow has been removed.")}},shadowCameraFov:{set:function(t){console.warn("THREE.Light: .shadowCameraFov is now .shadow.camera.fov."),this.shadow.camera.fov=t}},shadowCameraLeft:{set:function(t){console.warn("THREE.Light: .shadowCameraLeft is now .shadow.camera.left."),this.shadow.camera.left=t}},shadowCameraRight:{set:function(t){console.warn("THREE.Light: .shadowCameraRight is now .shadow.camera.right."),this.shadow.camera.right=t}},shadowCameraTop:{set:function(t){console.warn("THREE.Light: .shadowCameraTop is now .shadow.camera.top."),this.shadow.camera.top=t}},shadowCameraBottom:{set:function(t){console.warn("THREE.Light: .shadowCameraBottom is now .shadow.camera.bottom."),this.shadow.camera.bottom=t}},shadowCameraNear:{set:function(t){console.warn("THREE.Light: .shadowCameraNear is now .shadow.camera.near."),this.shadow.camera.near=t}},shadowCameraFar:{set:function(t){console.warn("THREE.Light: .shadowCameraFar is now .shadow.camera.far."),this.shadow.camera.far=t}},shadowCameraVisible:{set:function(){console.warn("THREE.Light: .shadowCameraVisible has been removed. Use new THREE.CameraHelper( light.shadow.camera ) instead.")}},shadowBias:{set:function(t){console.warn("THREE.Light: .shadowBias is now .shadow.bias."),this.shadow.bias=t}},shadowDarkness:{set:function(){console.warn("THREE.Light: .shadowDarkness has been removed.")}},shadowMapWidth:{set:function(t){console.warn("THREE.Light: .shadowMapWidth is now .shadow.mapSize.width."),this.shadow.mapSize.width=t}},shadowMapHeight:{set:function(t){console.warn("THREE.Light: .shadowMapHeight is now .shadow.mapSize.height."),this.shadow.mapSize.height=t}}}),Object.defineProperties(sn.prototype,{length:{get:function(){return console.warn("THREE.BufferAttribute: .length has been deprecated. Use .count instead."),this.array.length}},dynamic:{get:function(){return console.warn("THREE.BufferAttribute: .dynamic has been deprecated. Use .usage instead."),this.usage===nt},set:function(){console.warn("THREE.BufferAttribute: .dynamic has been deprecated. Use .usage instead."),this.setUsage(nt)}}}),sn.prototype.setDynamic=function(t){return console.warn("THREE.BufferAttribute: .setDynamic() has been deprecated. Use .setUsage() instead."),this.setUsage(!0===t?nt:et),this},sn.prototype.copyIndicesArray=function(){console.error("THREE.BufferAttribute: .copyIndicesArray() has been removed.")},sn.prototype.setArray=function(){console.error("THREE.BufferAttribute: .setArray has been removed. Use BufferGeometry .setAttribute to replace/resize attribute buffers")},En.prototype.addIndex=function(t){console.warn("THREE.BufferGeometry: .addIndex() has been renamed to .setIndex()."),this.setIndex(t)},En.prototype.addAttribute=function(t,e){return console.warn("THREE.BufferGeometry: .addAttribute() has been renamed to .setAttribute()."),e&amp;&amp;e.isBufferAttribute||e&amp;&amp;e.isInterleavedBufferAttribute?"index"===t?(console.warn("THREE.BufferGeometry.addAttribute: Use .setIndex() for index attribute."),this.setIndex(e),this):this.setAttribute(t,e):(console.warn("THREE.BufferGeometry: .addAttribute() now expects ( name, attribute )."),this.setAttribute(t,new sn(arguments[1],arguments[2])))},En.prototype.addDrawCall=function(t,e,n){void 0!==n&amp;&amp;console.warn("THREE.BufferGeometry: .addDrawCall() no longer supports indexOffset."),console.warn("THREE.BufferGeometry: .addDrawCall() is now .addGroup()."),this.addGroup(t,e)},En.prototype.clearDrawCalls=function(){console.warn("THREE.BufferGeometry: .clearDrawCalls() is now .clearGroups()."),this.clearGroups()},En.prototype.computeOffsets=function(){console.warn("THREE.BufferGeometry: .computeOffsets() has been removed.")},En.prototype.removeAttribute=function(t){return console.warn("THREE.BufferGeometry: .removeAttribute() has been renamed to .deleteAttribute()."),this.deleteAttribute(t)},En.prototype.applyMatrix=function(t){return console.warn("THREE.BufferGeometry: .applyMatrix() has been renamed to .applyMatrix4()."),this.applyMatrix4(t)},Object.defineProperties(En.prototype,{drawcalls:{get:function(){return console.error("THREE.BufferGeometry: .drawcalls has been renamed to .groups."),this.groups}},offsets:{get:function(){return console.warn("THREE.BufferGeometry: .offsets has been renamed to .groups."),this.groups}}}),Es.prototype.setDynamic=function(t){return console.warn("THREE.InterleavedBuffer: .setDynamic() has been deprecated. Use .setUsage() instead."),this.setUsage(!0===t?nt:et),this},Es.prototype.setArray=function(){console.error("THREE.InterleavedBuffer: .setArray has been removed. Use BufferGeometry .setAttribute to replace/resize attribute buffers")},go.prototype.getArrays=function(){console.error("THREE.ExtrudeGeometry: .getArrays() has been removed.")},go.prototype.addShapeList=function(){console.error("THREE.ExtrudeGeometry: .addShapeList() has been removed.")},go.prototype.addShape=function(){console.error("THREE.ExtrudeGeometry: .addShape() has been removed.")},Ts.prototype.dispose=function(){console.error("THREE.Scene: .dispose() has been removed.")},Zc.prototype.onUpdate=function(){return console.warn("THREE.Uniform: .onUpdate() has been removed. Use object.onBeforeRender() instead."),this},Object.defineProperties(Xe.prototype,{wrapAround:{get:function(){console.warn("THREE.Material: .wrapAround has been removed.")},set:function(){console.warn("THREE.Material: .wrapAround has been removed.")}},overdraw:{get:function(){console.warn("THREE.Material: .overdraw has been removed.")},set:function(){console.warn("THREE.Material: .overdraw has been removed.")}},wrapRGB:{get:function(){return console.warn("THREE.Material: .wrapRGB has been removed."),new tn}},shading:{get:function(){console.error("THREE."+this.type+": .shading has been removed. Use the boolean .flatShading instead.")},set:function(t){console.warn("THREE."+this.type+": .shading has been removed. Use the boolean .flatShading instead."),this.flatShading=1===t}},stencilMask:{get:function(){return console.warn("THREE."+this.type+": .stencilMask has been removed. Use .stencilFuncMask instead."),this.stencilFuncMask},set:function(t){console.warn("THREE."+this.type+": .stencilMask has been removed. Use .stencilFuncMask instead."),this.stencilFuncMask=t}}}),Object.defineProperties(Jn.prototype,{derivatives:{get:function(){return console.warn("THREE.ShaderMaterial: .derivatives has been moved to .extensions.derivatives."),this.extensions.derivatives},set:function(t){console.warn("THREE. ShaderMaterial: .derivatives has been moved to .extensions.derivatives."),this.extensions.derivatives=t}}}),ws.prototype.clearTarget=function(t,e,n,i){console.warn("THREE.WebGLRenderer: .clearTarget() has been deprecated. Use .setRenderTarget() and .clear() instead."),this.setRenderTarget(t),this.clear(e,n,i)},ws.prototype.animate=function(t){console.warn("THREE.WebGLRenderer: .animate() is now .setAnimationLoop()."),this.setAnimationLoop(t)},ws.prototype.getCurrentRenderTarget=function(){return console.warn("THREE.WebGLRenderer: .getCurrentRenderTarget() is now .getRenderTarget()."),this.getRenderTarget()},ws.prototype.getMaxAnisotropy=function(){return console.warn("THREE.WebGLRenderer: .getMaxAnisotropy() is now .capabilities.getMaxAnisotropy()."),this.capabilities.getMaxAnisotropy()},ws.prototype.getPrecision=function(){return console.warn("THREE.WebGLRenderer: .getPrecision() is now .capabilities.precision."),this.capabilities.precision},ws.prototype.resetGLState=function(){return console.warn("THREE.WebGLRenderer: .resetGLState() is now .state.reset()."),this.state.reset()},ws.prototype.supportsFloatTextures=function(){return console.warn("THREE.WebGLRenderer: .supportsFloatTextures() is now .extensions.get( 'OES_texture_float' )."),this.extensions.get("OES_texture_float")},ws.prototype.supportsHalfFloatTextures=function(){return console.warn("THREE.WebGLRenderer: .supportsHalfFloatTextures() is now .extensions.get( 'OES_texture_half_float' )."),this.extensions.get("OES_texture_half_float")},ws.prototype.supportsStandardDerivatives=function(){return console.warn("THREE.WebGLRenderer: .supportsStandardDerivatives() is now .extensions.get( 'OES_standard_derivatives' )."),this.extensions.get("OES_standard_derivatives")},ws.prototype.supportsCompressedTextureS3TC=function(){return console.warn("THREE.WebGLRenderer: .supportsCompressedTextureS3TC() is now .extensions.get( 'WEBGL_compressed_texture_s3tc' )."),this.extensions.get("WEBGL_compressed_texture_s3tc")},ws.prototype.supportsCompressedTexturePVRTC=function(){return console.warn("THREE.WebGLRenderer: .supportsCompressedTexturePVRTC() is now .extensions.get( 'WEBGL_compressed_texture_pvrtc' )."),this.extensions.get("WEBGL_compressed_texture_pvrtc")},ws.prototype.supportsBlendMinMax=function(){return console.warn("THREE.WebGLRenderer: .supportsBlendMinMax() is now .extensions.get( 'EXT_blend_minmax' )."),this.extensions.get("EXT_blend_minmax")},ws.prototype.supportsVertexTextures=function(){return console.warn("THREE.WebGLRenderer: .supportsVertexTextures() is now .capabilities.vertexTextures."),this.capabilities.vertexTextures},ws.prototype.supportsInstancedArrays=function(){return console.warn("THREE.WebGLRenderer: .supportsInstancedArrays() is now .extensions.get( 'ANGLE_instanced_arrays' )."),this.extensions.get("ANGLE_instanced_arrays")},ws.prototype.enableScissorTest=function(t){console.warn("THREE.WebGLRenderer: .enableScissorTest() is now .setScissorTest()."),this.setScissorTest(t)},ws.prototype.initMaterial=function(){console.warn("THREE.WebGLRenderer: .initMaterial() has been removed.")},ws.prototype.addPrePlugin=function(){console.warn("THREE.WebGLRenderer: .addPrePlugin() has been removed.")},ws.prototype.addPostPlugin=function(){console.warn("THREE.WebGLRenderer: .addPostPlugin() has been removed.")},ws.prototype.updateShadowMap=function(){console.warn("THREE.WebGLRenderer: .updateShadowMap() has been removed.")},ws.prototype.setFaceCulling=function(){console.warn("THREE.WebGLRenderer: .setFaceCulling() has been removed.")},ws.prototype.allocTextureUnit=function(){console.warn("THREE.WebGLRenderer: .allocTextureUnit() has been removed.")},ws.prototype.setTexture=function(){console.warn("THREE.WebGLRenderer: .setTexture() has been removed.")},ws.prototype.setTexture2D=function(){console.warn("THREE.WebGLRenderer: .setTexture2D() has been removed.")},ws.prototype.setTextureCube=function(){console.warn("THREE.WebGLRenderer: .setTextureCube() has been removed.")},ws.prototype.getActiveMipMapLevel=function(){return console.warn("THREE.WebGLRenderer: .getActiveMipMapLevel() is now .getActiveMipmapLevel()."),this.getActiveMipmapLevel()},Object.defineProperties(ws.prototype,{shadowMapEnabled:{get:function(){return this.shadowMap.enabled},set:function(t){console.warn("THREE.WebGLRenderer: .shadowMapEnabled is now .shadowMap.enabled."),this.shadowMap.enabled=t}},shadowMapType:{get:function(){return this.shadowMap.type},set:function(t){console.warn("THREE.WebGLRenderer: .shadowMapType is now .shadowMap.type."),this.shadowMap.type=t}},shadowMapCullFace:{get:function(){console.warn("THREE.WebGLRenderer: .shadowMapCullFace has been removed. Set Material.shadowSide instead.")},set:function(){console.warn("THREE.WebGLRenderer: .shadowMapCullFace has been removed. Set Material.shadowSide instead.")}},context:{get:function(){return console.warn("THREE.WebGLRenderer: .context has been removed. Use .getContext() instead."),this.getContext()}},vr:{get:function(){return console.warn("THREE.WebGLRenderer: .vr has been renamed to .xr"),this.xr}},gammaInput:{get:function(){return console.warn("THREE.WebGLRenderer: .gammaInput has been removed. Set the encoding for textures via Texture.encoding instead."),!1},set:function(){console.warn("THREE.WebGLRenderer: .gammaInput has been removed. Set the encoding for textures via Texture.encoding instead.")}},gammaOutput:{get:function(){return console.warn("THREE.WebGLRenderer: .gammaOutput has been removed. Set WebGLRenderer.outputEncoding instead."),!1},set:function(t){console.warn("THREE.WebGLRenderer: .gammaOutput has been removed. Set WebGLRenderer.outputEncoding instead."),this.outputEncoding=!0===t?Y:X}},toneMappingWhitePoint:{get:function(){return console.warn("THREE.WebGLRenderer: .toneMappingWhitePoint has been removed."),1},set:function(){console.warn("THREE.WebGLRenderer: .toneMappingWhitePoint has been removed.")}}}),Object.defineProperties(us.prototype,{cullFace:{get:function(){console.warn("THREE.WebGLRenderer: .shadowMap.cullFace has been removed. Set Material.shadowSide instead.")},set:function(){console.warn("THREE.WebGLRenderer: .shadowMap.cullFace has been removed. Set Material.shadowSide instead.")}},renderReverseSided:{get:function(){console.warn("THREE.WebGLRenderer: .shadowMap.renderReverseSided has been removed. Set Material.shadowSide instead.")},set:function(){console.warn("THREE.WebGLRenderer: .shadowMap.renderReverseSided has been removed. Set Material.shadowSide instead.")}},renderSingleSided:{get:function(){console.warn("THREE.WebGLRenderer: .shadowMap.renderSingleSided has been removed. Set Material.shadowSide instead.")},set:function(){console.warn("THREE.WebGLRenderer: .shadowMap.renderSingleSided has been removed. Set Material.shadowSide instead.")}}}),Object.defineProperties(Tt.prototype,{wrapS:{get:function(){return console.warn("THREE.WebGLRenderTarget: .wrapS is now .texture.wrapS."),this.texture.wrapS},set:function(t){console.warn("THREE.WebGLRenderTarget: .wrapS is now .texture.wrapS."),this.texture.wrapS=t}},wrapT:{get:function(){return console.warn("THREE.WebGLRenderTarget: .wrapT is now .texture.wrapT."),this.texture.wrapT},set:function(t){console.warn("THREE.WebGLRenderTarget: .wrapT is now .texture.wrapT."),this.texture.wrapT=t}},magFilter:{get:function(){return console.warn("THREE.WebGLRenderTarget: .magFilter is now .texture.magFilter."),this.texture.magFilter},set:function(t){console.warn("THREE.WebGLRenderTarget: .magFilter is now .texture.magFilter."),this.texture.magFilter=t}},minFilter:{get:function(){return console.warn("THREE.WebGLRenderTarget: .minFilter is now .texture.minFilter."),this.texture.minFilter},set:function(t){console.warn("THREE.WebGLRenderTarget: .minFilter is now .texture.minFilter."),this.texture.minFilter=t}},anisotropy:{get:function(){return console.warn("THREE.WebGLRenderTarget: .anisotropy is now .texture.anisotropy."),this.texture.anisotropy},set:function(t){console.warn("THREE.WebGLRenderTarget: .anisotropy is now .texture.anisotropy."),this.texture.anisotropy=t}},offset:{get:function(){return console.warn("THREE.WebGLRenderTarget: .offset is now .texture.offset."),this.texture.offset},set:function(t){console.warn("THREE.WebGLRenderTarget: .offset is now .texture.offset."),this.texture.offset=t}},repeat:{get:function(){return console.warn("THREE.WebGLRenderTarget: .repeat is now .texture.repeat."),this.texture.repeat},set:function(t){console.warn("THREE.WebGLRenderTarget: .repeat is now .texture.repeat."),this.texture.repeat=t}},format:{get:function(){return console.warn("THREE.WebGLRenderTarget: .format is now .texture.format."),this.texture.format},set:function(t){console.warn("THREE.WebGLRenderTarget: .format is now .texture.format."),this.texture.format=t}},type:{get:function(){return console.warn("THREE.WebGLRenderTarget: .type is now .texture.type."),this.texture.type},set:function(t){console.warn("THREE.WebGLRenderTarget: .type is now .texture.type."),this.texture.type=t}},generateMipmaps:{get:function(){return console.warn("THREE.WebGLRenderTarget: .generateMipmaps is now .texture.generateMipmaps."),this.texture.generateMipmaps},set:function(t){console.warn("THREE.WebGLRenderTarget: .generateMipmaps is now .texture.generateMipmaps."),this.texture.generateMipmaps=t}}}),Lc.prototype.load=function(t){console.warn("THREE.Audio: .load has been deprecated. Use THREE.AudioLoader instead.");const e=this;return(new vc).load(t,(function(t){e.setBuffer(t)})),this},Ic.prototype.getData=function(){return console.warn("THREE.AudioAnalyser: .getData() is now .getFrequencyData()."),this.getFrequencyData()},ti.prototype.updateCubeMap=function(t,e){return console.warn("THREE.CubeCamera: .updateCubeMap() is now .update()."),this.update(t,e)},ti.prototype.clear=function(t,e,n,i){return console.warn("THREE.CubeCamera: .clear() is now .renderTarget.clear()."),this.renderTarget.clear(t,e,n,i)},_t.crossOrigin=void 0,_t.loadTexture=function(t,e,n,i){console.warn("THREE.ImageUtils.loadTexture has been deprecated. Use THREE.TextureLoader() instead.");const r=new pl;r.setCrossOrigin(this.crossOrigin);const s=r.load(t,n,void 0,i);return e&amp;&amp;(s.mapping=e),s},_t.loadTextureCube=function(t,e,n,i){console.warn("THREE.ImageUtils.loadTextureCube has been deprecated. Use THREE.CubeTextureLoader() instead.");const r=new ul;r.setCrossOrigin(this.crossOrigin);const s=r.load(t,n,void 0,i);return e&amp;&amp;(s.mapping=e),s},_t.loadCompressedTexture=function(){console.error("THREE.ImageUtils.loadCompressedTexture has been removed. Use THREE.DDSLoader instead.")},_t.loadCompressedTextureCube=function(){console.error("THREE.ImageUtils.loadCompressedTextureCube has been removed. Use THREE.DDSLoader instead.")};const eu={createMultiMaterialObject:function(){console.error("THREE.SceneUtils has been moved to /examples/jsm/utils/SceneUtils.js")},detach:function(){console.error("THREE.SceneUtils has been moved to /examples/jsm/utils/SceneUtils.js")},attach:function(){console.error("THREE.SceneUtils has been moved to /examples/jsm/utils/SceneUtils.js")}};"undefined"!=typeof __THREE_DEVTOOLS__&amp;&amp;__THREE_DEVTOOLS__.dispatchEvent(new CustomEvent("register",{detail:{revision:e}})),"undefined"!=typeof window&amp;&amp;(window.__THREE__?console.warn("WARNING: Multiple instances of Three.js being imported."):window.__THREE__=e),t.ACESFilmicToneMapping=4,t.AddEquation=n,t.AddOperation=2,t.AdditiveAnimationBlendMode=q,t.AdditiveBlending=2,t.AlphaFormat=1021,t.AlwaysDepth=1,t.AlwaysStencilFunc=519,t.AmbientLight=$l,t.AmbientLightProbe=xc,t.AnimationClip=nl,t.AnimationLoader=class extends ol{constructor(t){super(t)}load(t,e,n,i){const r=this,s=new cl(this.manager);s.setPath(this.path),s.setRequestHeader(this.requestHeader),s.setWithCredentials(this.withCredentials),s.load(t,(function(n){try{e(r.parse(JSON.parse(n)))}catch(e){i?i(e):console.error(e),r.manager.itemError(t)}}),n,i)}parse(t){const e=[];for(let n=0;n&lt;t.length;n++){const i=nl.parse(t[n]);e.push(i)}return e}},t.AnimationMixer=Yc,t.AnimationObjectGroup=qc,t.AnimationUtils=Vo,t.ArcCurve=gl,t.ArrayCamera=fs,t.ArrowHelper=class extends Ce{constructor(t=new Lt(0,0,1),e=new Lt(0,0,0),n=1,i=16776960,r=.2*n,s=.2*r){super(),this.type="ArrowHelper",void 0===Th&amp;&amp;(Th=new En,Th.setAttribute("position",new mn([0,0,0,0,1,0],3)),Eh=new Da(0,.5,1,5,1),Eh.translate(0,-.5,0)),this.position.copy(e),this.line=new fa(Th,new ca({color:i,toneMapped:!1})),this.line.matrixAutoUpdate=!1,this.add(this.line),this.cone=new Wn(Eh,new en({color:i,toneMapped:!1})),this.cone.matrixAutoUpdate=!1,this.add(this.cone),this.setDirection(t),this.setLength(n,r,s)}setDirection(t){if(t.y&gt;.99999)this.quaternion.set(0,0,0,1);else if(t.y&lt;-.99999)this.quaternion.set(1,0,0,0);else{Sh.set(t.z,0,-t.x).normalize();const e=Math.acos(t.y);this.quaternion.setFromAxisAngle(Sh,e)}}setLength(t,e=.2*t,n=.2*e){this.line.scale.set(1,Math.max(1e-4,t-e),1),this.line.updateMatrix(),this.cone.scale.set(n,e,n),this.cone.position.y=t,this.cone.updateMatrix()}setColor(t){this.line.material.color.set(t),this.cone.material.color.set(t)}copy(t){return super.copy(t,!1),this.line.copy(t.line),this.cone.copy(t.cone),this}},t.Audio=Lc,t.AudioAnalyser=Ic,t.AudioContext=gc,t.AudioListener=class extends Ce{constructor(){super(),this.type="AudioListener",this.context=gc.getContext(),this.gain=this.context.createGain(),this.gain.connect(this.context.destination),this.filter=null,this.timeDelta=0,this._clock=new bc}getInput(){return this.gain}removeFilter(){return null!==this.filter&amp;&amp;(this.gain.disconnect(this.filter),this.filter.disconnect(this.context.destination),this.gain.connect(this.context.destination),this.filter=null),this}getFilter(){return this.filter}setFilter(t){return null!==this.filter?(this.gain.disconnect(this.filter),this.filter.disconnect(this.context.destination)):this.gain.disconnect(this.context.destination),this.filter=t,this.gain.connect(this.filter),this.filter.connect(this.context.destination),this}getMasterVolume(){return this.gain.gain.value}setMasterVolume(t){return this.gain.gain.setTargetAtTime(t,this.context.currentTime,.01),this}updateMatrixWorld(t){super.updateMatrixWorld(t);const e=this.context.listener,n=this.up;if(this.timeDelta=this._clock.getDelta(),this.matrixWorld.decompose(Sc,Tc,Ec),Ac.set(0,0,-1).applyQuaternion(Tc),e.positionX){const t=this.context.currentTime+this.timeDelta;e.positionX.linearRampToValueAtTime(Sc.x,t),e.positionY.linearRampToValueAtTime(Sc.y,t),e.positionZ.linearRampToValueAtTime(Sc.z,t),e.forwardX.linearRampToValueAtTime(Ac.x,t),e.forwardY.linearRampToValueAtTime(Ac.y,t),e.forwardZ.linearRampToValueAtTime(Ac.z,t),e.upX.linearRampToValueAtTime(n.x,t),e.upY.linearRampToValueAtTime(n.y,t),e.upZ.linearRampToValueAtTime(n.z,t)}else e.setPosition(Sc.x,Sc.y,Sc.z),e.setOrientation(Ac.x,Ac.y,Ac.z,n.x,n.y,n.z)}},t.AudioLoader=vc,t.AxesHelper=Ah,t.AxisHelper=function(t){return console.warn("THREE.AxisHelper has been renamed to THREE.AxesHelper."),new Ah(t)},t.BackSide=1,t.BasicDepthPacking=3200,t.BasicShadowMap=0,t.BinaryTextureLoader=function(t){return console.warn("THREE.BinaryTextureLoader has been renamed to THREE.DataTextureLoader."),new dl(t)},t.Bone=ta,t.BooleanKeyframeTrack=Zo,t.BoundingBoxHelper=function(t,e){return console.warn("THREE.BoundingBoxHelper has been deprecated. Creating a THREE.BoxHelper instead."),new Mh(t,e)},t.Box2=eh,t.Box3=Pt,t.Box3Helper=class extends ya{constructor(t,e=16776960){const n=new Uint16Array([0,1,1,2,2,3,3,0,4,5,5,6,6,7,7,4,0,4,1,5,2,6,3,7]),i=new En;i.setIndex(new sn(n,1)),i.setAttribute("position",new mn([1,1,1,-1,1,1,-1,-1,1,1,-1,1,1,1,-1,-1,1,-1,-1,-1,-1,1,-1,-1],3)),super(i,new ca({color:e,toneMapped:!1})),this.box=t,this.type="Box3Helper",this.geometry.computeBoundingSphere()}updateMatrixWorld(t){const e=this.box;e.isEmpty()||(e.getCenter(this.position),e.getSize(this.scale),this.scale.multiplyScalar(.5),super.updateMatrixWorld(t))}},t.BoxBufferGeometry=qn,t.BoxGeometry=qn,t.BoxHelper=Mh,t.BufferAttribute=sn,t.BufferGeometry=En,t.BufferGeometryLoader=oc,t.ByteType=1010,t.Cache=rl,t.Camera=Qn,t.CameraHelper=class extends ya{constructor(t){const e=new En,n=new ca({color:16777215,vertexColors:!0,toneMapped:!1}),i=[],r=[],s={},a=new tn(16755200),o=new tn(16711680),l=new tn(43775),c=new tn(16777215),h=new tn(3355443);function u(t,e,n){d(t,n),d(e,n)}function d(t,e){i.push(0,0,0),r.push(e.r,e.g,e.b),void 0===s[t]&amp;&amp;(s[t]=[]),s[t].push(i.length/3-1)}u("n1","n2",a),u("n2","n4",a),u("n4","n3",a),u("n3","n1",a),u("f1","f2",a),u("f2","f4",a),u("f4","f3",a),u("f3","f1",a),u("n1","f1",a),u("n2","f2",a),u("n3","f3",a),u("n4","f4",a),u("p","n1",o),u("p","n2",o),u("p","n3",o),u("p","n4",o),u("u1","u2",l),u("u2","u3",l),u("u3","u1",l),u("c","t",c),u("p","c",h),u("cn1","cn2",h),u("cn3","cn4",h),u("cf1","cf2",h),u("cf3","cf4",h),e.setAttribute("position",new mn(i,3)),e.setAttribute("color",new mn(r,3)),super(e,n),this.type="CameraHelper",this.camera=t,this.camera.updateProjectionMatrix&amp;&amp;this.camera.updateProjectionMatrix(),this.matrix=t.matrixWorld,this.matrixAutoUpdate=!1,this.pointMap=s,this.update()}update(){const t=this.geometry,e=this.pointMap;_h.projectionMatrixInverse.copy(this.camera.projectionMatrixInverse),wh("c",e,t,_h,0,0,-1),wh("t",e,t,_h,0,0,1),wh("n1",e,t,_h,-1,-1,-1),wh("n2",e,t,_h,1,-1,-1),wh("n3",e,t,_h,-1,1,-1),wh("n4",e,t,_h,1,1,-1),wh("f1",e,t,_h,-1,-1,1),wh("f2",e,t,_h,1,-1,1),wh("f3",e,t,_h,-1,1,1),wh("f4",e,t,_h,1,1,1),wh("u1",e,t,_h,.7,1.1,-1),wh("u2",e,t,_h,-.7,1.1,-1),wh("u3",e,t,_h,0,2,-1),wh("cf1",e,t,_h,-1,0,1),wh("cf2",e,t,_h,1,0,1),wh("cf3",e,t,_h,0,-1,1),wh("cf4",e,t,_h,0,1,1),wh("cn1",e,t,_h,-1,0,-1),wh("cn2",e,t,_h,1,0,-1),wh("cn3",e,t,_h,0,-1,-1),wh("cn4",e,t,_h,0,1,-1),t.getAttribute("position").needsUpdate=!0}dispose(){this.geometry.dispose(),this.material.dispose()}},t.CanvasRenderer=function(){console.error("THREE.CanvasRenderer has been removed")},t.CanvasTexture=Ra,t.CatmullRomCurve3=bl,t.CineonToneMapping=3,t.CircleBufferGeometry=Pa,t.CircleGeometry=Pa,t.ClampToEdgeWrapping=u,t.Clock=bc,t.Color=tn,t.ColorKeyframeTrack=Jo,t.CompressedTexture=La,t.CompressedTextureLoader=class extends ol{constructor(t){super(t)}load(t,e,n,i){const r=this,s=[],a=new La,o=new cl(this.manager);o.setPath(this.path),o.setResponseType("arraybuffer"),o.setRequestHeader(this.requestHeader),o.setWithCredentials(r.withCredentials);let l=0;function c(c){o.load(t[c],(function(t){const n=r.parse(t,!0);s[c]={width:n.width,height:n.height,format:n.format,mipmaps:n.mipmaps},l+=1,6===l&amp;&amp;(1===n.mipmapCount&amp;&amp;(a.minFilter=g),a.image=s,a.format=n.format,a.needsUpdate=!0,e&amp;&amp;e(a))}),n,i)}if(Array.isArray(t))for(let e=0,n=t.length;e&lt;n;++e)c(e);else o.load(t,(function(t){const n=r.parse(t,!0);if(n.isCubemap){const t=n.mipmaps.length/n.mipmapCount;for(let e=0;e&lt;t;e++){s[e]={mipmaps:[]};for(let t=0;t&lt;n.mipmapCount;t++)s[e].mipmaps.push(n.mipmaps[e*n.mipmapCount+t]),s[e].format=n.format,s[e].width=n.width,s[e].height=n.height}a.image=s}else a.image.width=n.width,a.image.height=n.height,a.mipmaps=n.mipmaps;1===n.mipmapCount&amp;&amp;(a.minFilter=g),a.format=n.format,a.needsUpdate=!0,e&amp;&amp;e(a)}),n,i);return a}},t.ConeBufferGeometry=Ia,t.ConeGeometry=Ia,t.CubeCamera=ti,t.CubeReflectionMapping=r,t.CubeRefractionMapping=s,t.CubeTexture=ei,t.CubeTextureLoader=ul,t.CubeUVReflectionMapping=l,t.CubeUVRefractionMapping=c,t.CubicBezierCurve=El,t.CubicBezierCurve3=Al,t.CubicInterpolant=jo,t.CullFaceBack=1,t.CullFaceFront=2,t.CullFaceFrontBack=3,t.CullFaceNone=0,t.Curve=ml,t.CurvePath=Nl,t.CustomBlending=5,t.CustomToneMapping=5,t.CylinderBufferGeometry=Da,t.CylinderGeometry=Da,t.Cylindrical=class{constructor(t=1,e=0,n=0){return this.radius=t,this.theta=e,this.y=n,this}set(t,e,n){return this.radius=t,this.theta=e,this.y=n,this}copy(t){return this.radius=t.radius,this.theta=t.theta,this.y=t.y,this}setFromVector3(t){return this.setFromCartesianCoords(t.x,t.y,t.z)}setFromCartesianCoords(t,e,n){return this.radius=Math.sqrt(t*t+n*n),this.theta=Math.atan2(t,n),this.y=e,this}clone(){return(new this.constructor).copy(this)}},t.DataTexture=ii,t.DataTexture2DArray=Ai,t.DataTexture3D=Li,t.DataTextureLoader=dl,t.DataUtils=class{static toHalfFloat(t){Lh[0]=t;const e=Rh[0];let n=e&gt;&gt;16&amp;32768,i=e&gt;&gt;12&amp;2047;const r=e&gt;&gt;23&amp;255;return r&lt;103?n:r&gt;142?(n|=31744,n|=(255==r?0:1)&amp;&amp;8388607&amp;e,n):r&lt;113?(i|=2048,n|=(i&gt;&gt;114-r)+(i&gt;&gt;113-r&amp;1),n):(n|=r-112&lt;&lt;10|i&gt;&gt;1,n+=1&amp;i,n)}},t.DecrementStencilOp=7683,t.DecrementWrapStencilOp=34056,t.DefaultLoadingManager=al,t.DepthFormat=A,t.DepthStencilFormat=L,t.DepthTexture=Ca,t.DirectionalLight=Kl,t.DirectionalLightHelper=class extends Ce{constructor(t,e,n){super(),this.light=t,this.light.updateMatrixWorld(),this.matrix=t.matrixWorld,this.matrixAutoUpdate=!1,this.color=n,void 0===e&amp;&amp;(e=1);let i=new En;i.setAttribute("position",new mn([-e,e,0,e,e,0,e,-e,0,-e,-e,0,-e,e,0],3));const r=new ca({fog:!1,toneMapped:!1});this.lightPlane=new fa(i,r),this.add(this.lightPlane),i=new En,i.setAttribute("position",new mn([0,0,0,0,0,1],3)),this.targetLine=new fa(i,r),this.add(this.targetLine),this.update()}dispose(){this.lightPlane.geometry.dispose(),this.lightPlane.material.dispose(),this.targetLine.geometry.dispose(),this.targetLine.material.dispose()}update(){gh.setFromMatrixPosition(this.light.matrixWorld),vh.setFromMatrixPosition(this.light.target.matrixWorld),yh.subVectors(vh,gh),this.lightPlane.lookAt(vh),void 0!==this.color?(this.lightPlane.material.color.set(this.color),this.targetLine.material.color.set(this.color)):(this.lightPlane.material.color.copy(this.light.color),this.targetLine.material.color.copy(this.light.color)),this.targetLine.lookAt(vh),this.targetLine.scale.z=yh.length()}},t.DiscreteInterpolant=Xo,t.DodecahedronBufferGeometry=Ba,t.DodecahedronGeometry=Ba,t.DoubleSide=2,t.DstAlphaFactor=206,t.DstColorFactor=208,t.DynamicBufferAttribute=function(t,e){return console.warn("THREE.DynamicBufferAttribute has been removed. Use new THREE.BufferAttribute().setUsage( THREE.DynamicDrawUsage ) instead."),new sn(t,e).setUsage(nt)},t.DynamicCopyUsage=35050,t.DynamicDrawUsage=nt,t.DynamicReadUsage=35049,t.EdgesGeometry=Ga,t.EdgesHelper=function(t,e){return console.warn("THREE.EdgesHelper has been removed. Use THREE.EdgesGeometry instead."),new ya(new Ga(t.geometry),new ca({color:void 0!==e?e:16777215}))},t.EllipseCurve=fl,t.EqualDepth=4,t.EqualStencilFunc=514,t.EquirectangularReflectionMapping=a,t.EquirectangularRefractionMapping=o,t.Euler=fe,t.EventDispatcher=rt,t.ExtrudeBufferGeometry=go,t.ExtrudeGeometry=go,t.FaceColors=1,t.FileLoader=cl,t.FlatShading=1,t.Float16BufferAttribute=pn,t.Float32Attribute=function(t,e){return console.warn("THREE.Float32Attribute has been removed. Use new THREE.Float32BufferAttribute() instead."),new mn(t,e)},t.Float32BufferAttribute=mn,t.Float64Attribute=function(t,e){return console.warn("THREE.Float64Attribute has been removed. Use new THREE.Float64BufferAttribute() instead."),new fn(t,e)},t.Float64BufferAttribute=fn,t.FloatType=b,t.Fog=Ss,t.FogExp2=Ms,t.Font=pc,t.FontLoader=class extends ol{constructor(t){super(t)}load(t,e,n,i){const r=this,s=new cl(this.manager);s.setPath(this.path),s.setRequestHeader(this.requestHeader),s.setWithCredentials(r.withCredentials),s.load(t,(function(t){let n;try{n=JSON.parse(t)}catch(e){console.warn("THREE.FontLoader: typeface.js support is being deprecated. Use typeface.json instead."),n=JSON.parse(t.substring(65,t.length-2))}const i=r.parse(n);e&amp;&amp;e(i)}),n,i)}parse(t){return new pc(t)}},t.FrontSide=0,t.Frustum=ai,t.GLBufferAttribute=Qc,t.GLSL1="100",t.GLSL3=it,t.GammaEncoding=Z,t.GreaterDepth=6,t.GreaterEqualDepth=5,t.GreaterEqualStencilFunc=518,t.GreaterStencilFunc=516,t.GridHelper=fh,t.Group=gs,t.HalfFloatType=M,t.HemisphereLight=Ol,t.HemisphereLightHelper=class extends Ce{constructor(t,e,n){super(),this.light=t,this.light.updateMatrixWorld(),this.matrix=t.matrixWorld,this.matrixAutoUpdate=!1,this.color=n;const i=new _o(e);i.rotateY(.5*Math.PI),this.material=new en({wireframe:!0,fog:!1,toneMapped:!1}),void 0===this.color&amp;&amp;(this.material.vertexColors=!0);const r=i.getAttribute("position"),s=new Float32Array(3*r.count);i.setAttribute("color",new sn(s,3)),this.add(new Wn(i,this.material)),this.update()}dispose(){this.children[0].geometry.dispose(),this.children[0].material.dispose()}update(){const t=this.children[0];if(void 0!==this.color)this.material.color.set(this.color);else{const e=t.geometry.getAttribute("color");ph.copy(this.light.color),mh.copy(this.light.groundColor);for(let t=0,n=e.count;t&lt;n;t++){const i=t&lt;n/2?ph:mh;e.setXYZ(t,i.r,i.g,i.b)}e.needsUpdate=!0}t.lookAt(dh.setFromMatrixPosition(this.light.matrixWorld).negate())}},t.HemisphereLightProbe=yc,t.IcosahedronBufferGeometry=yo,t.IcosahedronGeometry=yo,t.ImageBitmapLoader=uc,t.ImageLoader=hl,t.ImageUtils=_t,t.ImmediateRenderObject=sh,t.IncrementStencilOp=7682,t.IncrementWrapStencilOp=34055,t.InstancedBufferAttribute=ac,t.InstancedBufferGeometry=sc,t.InstancedInterleavedBuffer=Jc,t.InstancedMesh=la,t.Int16Attribute=function(t,e){return console.warn("THREE.Int16Attribute has been removed. Use new THREE.Int16BufferAttribute() instead."),new cn(t,e)},t.Int16BufferAttribute=cn,t.Int32Attribute=function(t,e){return console.warn("THREE.Int32Attribute has been removed. Use new THREE.Int32BufferAttribute() instead."),new un(t,e)},t.Int32BufferAttribute=un,t.Int8Attribute=function(t,e){return console.warn("THREE.Int8Attribute has been removed. Use new THREE.Int8BufferAttribute() instead."),new an(t,e)},t.Int8BufferAttribute=an,t.IntType=1013,t.InterleavedBuffer=Es,t.InterleavedBufferAttribute=Ls,t.Interpolant=Wo,t.InterpolateDiscrete=H,t.InterpolateLinear=G,t.InterpolateSmooth=U,t.InvertStencilOp=5386,t.JSONLoader=function(){console.error("THREE.JSONLoader has been removed.")},t.KeepStencilOp=tt,t.KeyframeTrack=Yo,t.LOD=Xs,t.LatheBufferGeometry=xo,t.LatheGeometry=xo,t.Layers=ge,t.LensFlare=function(){console.error("THREE.LensFlare has been moved to /examples/jsm/objects/Lensflare.js")},t.LessDepth=2,t.LessEqualDepth=3,t.LessEqualStencilFunc=515,t.LessStencilFunc=513,t.Light=Fl,t.LightProbe=nc,t.Line=fa,t.Line3=rh,t.LineBasicMaterial=ca,t.LineCurve=Ll,t.LineCurve3=Rl,t.LineDashedMaterial=Uo,t.LineLoop=xa,t.LinePieces=1,t.LineSegments=ya,t.LineStrip=0,t.LinearEncoding=X,t.LinearFilter=g,t.LinearInterpolant=qo,t.LinearMipMapLinearFilter=1008,t.LinearMipMapNearestFilter=1007,t.LinearMipmapLinearFilter=y,t.LinearMipmapNearestFilter=v,t.LinearToneMapping=1,t.Loader=ol,t.LoaderUtils=rc,t.LoadingManager=sl,t.LogLuvEncoding=3003,t.LoopOnce=2200,t.LoopPingPong=2202,t.LoopRepeat=2201,t.LuminanceAlphaFormat=1025,t.LuminanceFormat=1024,t.MOUSE={LEFT:0,MIDDLE:1,RIGHT:2,ROTATE:0,DOLLY:1,PAN:2},t.Material=Xe,t.MaterialLoader=ic,t.Math=gt,t.MathUtils=gt,t.Matrix3=yt,t.Matrix4=se,t.MaxEquation=104,t.Mesh=Wn,t.MeshBasicMaterial=en,t.MeshDepthMaterial=cs,t.MeshDistanceMaterial=hs,t.MeshFaceMaterial=function(t){return console.warn("THREE.MeshFaceMaterial has been removed. Use an Array instead."),t},t.MeshLambertMaterial=Ho,t.MeshMatcapMaterial=Go,t.MeshNormalMaterial=Oo,t.MeshPhongMaterial=zo,t.MeshPhysicalMaterial=Bo,t.MeshStandardMaterial=No,t.MeshToonMaterial=Fo,t.MinEquation=103,t.MirroredRepeatWrapping=d,t.MixOperation=1,t.MultiMaterial=function(t=[]){return console.warn("THREE.MultiMaterial has been removed. Use an Array instead."),t.isMultiMaterial=!0,t.materials=t,t.clone=function(){return t.slice()},t},t.MultiplyBlending=4,t.MultiplyOperation=0,t.NearestFilter=p,t.NearestMipMapLinearFilter=1005,t.NearestMipMapNearestFilter=1004,t.NearestMipmapLinearFilter=f,t.NearestMipmapNearestFilter=m,t.NeverDepth=0,t.NeverStencilFunc=512,t.NoBlending=0,t.NoColors=0,t.NoToneMapping=0,t.NormalAnimationBlendMode=j,t.NormalBlending=1,t.NotEqualDepth=7,t.NotEqualStencilFunc=517,t.NumberKeyframeTrack=Qo,t.Object3D=Ce,t.ObjectLoader=class extends ol{constructor(t){super(t)}load(t,e,n,i){const r=this,s=""===this.path?rc.extractUrlBase(t):this.path;this.resourcePath=this.resourcePath||s;const a=new cl(this.manager);a.setPath(this.path),a.setRequestHeader(this.requestHeader),a.setWithCredentials(this.withCredentials),a.load(t,(function(n){let s=null;try{s=JSON.parse(n)}catch(e){return void 0!==i&amp;&amp;i(e),void console.error("THREE:ObjectLoader: Can't parse "+t+".",e.message)}const a=s.metadata;void 0!==a&amp;&amp;void 0!==a.type&amp;&amp;"geometry"!==a.type.toLowerCase()?r.parse(s,e):console.error("THREE.ObjectLoader: Can't load "+t)}),n,i)}parse(t,e){const n=this.parseAnimations(t.animations),i=this.parseShapes(t.shapes),r=this.parseGeometries(t.geometries,i),s=this.parseImages(t.images,(function(){void 0!==e&amp;&amp;e(l)})),a=this.parseTextures(t.textures,s),o=this.parseMaterials(t.materials,a),l=this.parseObject(t.object,r,o,n),c=this.parseSkeletons(t.skeletons,l);if(this.bindSkeletons(l,c),void 0!==e){let t=!1;for(const e in s)if(s[e]instanceof HTMLImageElement){t=!0;break}!1===t&amp;&amp;e(l)}return l}parseShapes(t){const e={};if(void 0!==t)for(let n=0,i=t.length;n&lt;i;n++){const i=(new zl).fromJSON(t[n]);e[i.uuid]=i}return e}parseSkeletons(t,e){const n={},i={};if(e.traverse((function(t){t.isBone&amp;&amp;(i[t.uuid]=t)})),void 0!==t)for(let e=0,r=t.length;e&lt;r;e++){const r=(new ia).fromJSON(t[e],i);n[r.uuid]=r}return n}parseGeometries(t,e){const n={};let i;if(void 0!==t){const r=new oc;for(let s=0,a=t.length;s&lt;a;s++){let a;const o=t[s];switch(o.type){case"PlaneGeometry":case"PlaneBufferGeometry":a=new Po[o.type](o.width,o.height,o.widthSegments,o.heightSegments);break;case"BoxGeometry":case"BoxBufferGeometry":a=new Po[o.type](o.width,o.height,o.depth,o.widthSegments,o.heightSegments,o.depthSegments);break;case"CircleGeometry":case"CircleBufferGeometry":a=new Po[o.type](o.radius,o.segments,o.thetaStart,o.thetaLength);break;case"CylinderGeometry":case"CylinderBufferGeometry":a=new Po[o.type](o.radiusTop,o.radiusBottom,o.height,o.radialSegments,o.heightSegments,o.openEnded,o.thetaStart,o.thetaLength);break;case"ConeGeometry":case"ConeBufferGeometry":a=new Po[o.type](o.radius,o.height,o.radialSegments,o.heightSegments,o.openEnded,o.thetaStart,o.thetaLength);break;case"SphereGeometry":case"SphereBufferGeometry":a=new Po[o.type](o.radius,o.widthSegments,o.heightSegments,o.phiStart,o.phiLength,o.thetaStart,o.thetaLength);break;case"DodecahedronGeometry":case"DodecahedronBufferGeometry":case"IcosahedronGeometry":case"IcosahedronBufferGeometry":case"OctahedronGeometry":case"OctahedronBufferGeometry":case"TetrahedronGeometry":case"TetrahedronBufferGeometry":a=new Po[o.type](o.radius,o.detail);break;case"RingGeometry":case"RingBufferGeometry":a=new Po[o.type](o.innerRadius,o.outerRadius,o.thetaSegments,o.phiSegments,o.thetaStart,o.thetaLength);break;case"TorusGeometry":case"TorusBufferGeometry":a=new Po[o.type](o.radius,o.tube,o.radialSegments,o.tubularSegments,o.arc);break;case"TorusKnotGeometry":case"TorusKnotBufferGeometry":a=new Po[o.type](o.radius,o.tube,o.tubularSegments,o.radialSegments,o.p,o.q);break;case"TubeGeometry":case"TubeBufferGeometry":a=new Po[o.type]((new Il[o.path.type]).fromJSON(o.path),o.tubularSegments,o.radius,o.radialSegments,o.closed);break;case"LatheGeometry":case"LatheBufferGeometry":a=new Po[o.type](o.points,o.segments,o.phiStart,o.phiLength);break;case"PolyhedronGeometry":case"PolyhedronBufferGeometry":a=new Po[o.type](o.vertices,o.indices,o.radius,o.details);break;case"ShapeGeometry":case"ShapeBufferGeometry":i=[];for(let t=0,n=o.shapes.length;t&lt;n;t++){const n=e[o.shapes[t]];i.push(n)}a=new Po[o.type](i,o.curveSegments);break;case"ExtrudeGeometry":case"ExtrudeBufferGeometry":i=[];for(let t=0,n=o.shapes.length;t&lt;n;t++){const n=e[o.shapes[t]];i.push(n)}const t=o.options.extrudePath;void 0!==t&amp;&amp;(o.options.extrudePath=(new Il[t.type]).fromJSON(t)),a=new Po[o.type](i,o.options);break;case"BufferGeometry":case"InstancedBufferGeometry":a=r.parse(o);break;case"Geometry":console.error('THREE.ObjectLoader: Loading "Geometry" is not supported anymore.');break;default:console.warn('THREE.ObjectLoader: Unsupported geometry type "'+o.type+'"');continue}a.uuid=o.uuid,void 0!==o.name&amp;&amp;(a.name=o.name),!0===a.isBufferGeometry&amp;&amp;void 0!==o.userData&amp;&amp;(a.userData=o.userData),n[o.uuid]=a}}return n}parseMaterials(t,e){const n={},i={};if(void 0!==t){const r=new ic;r.setTextures(e);for(let e=0,s=t.length;e&lt;s;e++){const s=t[e];if("MultiMaterial"===s.type){const t=[];for(let e=0;e&lt;s.materials.length;e++){const i=s.materials[e];void 0===n[i.uuid]&amp;&amp;(n[i.uuid]=r.parse(i)),t.push(n[i.uuid])}i[s.uuid]=t}else void 0===n[s.uuid]&amp;&amp;(n[s.uuid]=r.parse(s)),i[s.uuid]=n[s.uuid]}}return i}parseAnimations(t){const e={};if(void 0!==t)for(let n=0;n&lt;t.length;n++){const i=t[n],r=nl.parse(i);e[r.uuid]=r}return e}parseImages(t,e){const n=this,i={};let r;function s(t){if("string"==typeof t){const e=t;return function(t){return n.manager.itemStart(t),r.load(t,(function(){n.manager.itemEnd(t)}),void 0,(function(){n.manager.itemError(t),n.manager.itemEnd(t)}))}(/^(\/\/)|([a-z]+:(\/\/)?)/i.test(e)?e:n.resourcePath+e)}return t.data?{data:yn(t.type,t.data),width:t.width,height:t.height}:null}if(void 0!==t&amp;&amp;t.length&gt;0){const n=new sl(e);r=new hl(n),r.setCrossOrigin(this.crossOrigin);for(let e=0,n=t.length;e&lt;n;e++){const n=t[e],r=n.url;if(Array.isArray(r)){i[n.uuid]=[];for(let t=0,e=r.length;t&lt;e;t++){const e=s(r[t]);null!==e&amp;&amp;(e instanceof HTMLImageElement?i[n.uuid].push(e):i[n.uuid].push(new ii(e.data,e.width,e.height)))}}else{const t=s(n.url);null!==t&amp;&amp;(i[n.uuid]=t)}}}return i}parseTextures(t,e){function n(t,e){return"number"==typeof t?t:(console.warn("THREE.ObjectLoader.parseTexture: Constant should be in numeric form.",t),e[t])}const i={};if(void 0!==t)for(let r=0,s=t.length;r&lt;s;r++){const s=t[r];let a;void 0===s.image&amp;&amp;console.warn('THREE.ObjectLoader: No "image" specified for',s.uuid),void 0===e[s.image]&amp;&amp;console.warn("THREE.ObjectLoader: Undefined image",s.image);const o=e[s.image];Array.isArray(o)?(a=new ei(o),6===o.length&amp;&amp;(a.needsUpdate=!0)):(a=o&amp;&amp;o.data?new ii(o.data,o.width,o.height):new bt(o),o&amp;&amp;(a.needsUpdate=!0)),a.uuid=s.uuid,void 0!==s.name&amp;&amp;(a.name=s.name),void 0!==s.mapping&amp;&amp;(a.mapping=n(s.mapping,lc)),void 0!==s.offset&amp;&amp;a.offset.fromArray(s.offset),void 0!==s.repeat&amp;&amp;a.repeat.fromArray(s.repeat),void 0!==s.center&amp;&amp;a.center.fromArray(s.center),void 0!==s.rotation&amp;&amp;(a.rotation=s.rotation),void 0!==s.wrap&amp;&amp;(a.wrapS=n(s.wrap[0],cc),a.wrapT=n(s.wrap[1],cc)),void 0!==s.format&amp;&amp;(a.format=s.format),void 0!==s.type&amp;&amp;(a.type=s.type),void 0!==s.encoding&amp;&amp;(a.encoding=s.encoding),void 0!==s.minFilter&amp;&amp;(a.minFilter=n(s.minFilter,hc)),void 0!==s.magFilter&amp;&amp;(a.magFilter=n(s.magFilter,hc)),void 0!==s.anisotropy&amp;&amp;(a.anisotropy=s.anisotropy),void 0!==s.flipY&amp;&amp;(a.flipY=s.flipY),void 0!==s.premultiplyAlpha&amp;&amp;(a.premultiplyAlpha=s.premultiplyAlpha),void 0!==s.unpackAlignment&amp;&amp;(a.unpackAlignment=s.unpackAlignment),i[s.uuid]=a}return i}parseObject(t,e,n,i){let r,s,a;function o(t){return void 0===e[t]&amp;&amp;console.warn("THREE.ObjectLoader: Undefined geometry",t),e[t]}function l(t){if(void 0!==t){if(Array.isArray(t)){const e=[];for(let i=0,r=t.length;i&lt;r;i++){const r=t[i];void 0===n[r]&amp;&amp;console.warn("THREE.ObjectLoader: Undefined material",r),e.push(n[r])}return e}return void 0===n[t]&amp;&amp;console.warn("THREE.ObjectLoader: Undefined material",t),n[t]}}switch(t.type){case"Scene":r=new Ts,void 0!==t.background&amp;&amp;Number.isInteger(t.background)&amp;&amp;(r.background=new tn(t.background)),void 0!==t.fog&amp;&amp;("Fog"===t.fog.type?r.fog=new Ss(t.fog.color,t.fog.near,t.fog.far):"FogExp2"===t.fog.type&amp;&amp;(r.fog=new Ms(t.fog.color,t.fog.density)));break;case"PerspectiveCamera":r=new Kn(t.fov,t.aspect,t.near,t.far),void 0!==t.focus&amp;&amp;(r.focus=t.focus),void 0!==t.zoom&amp;&amp;(r.zoom=t.zoom),void 0!==t.filmGauge&amp;&amp;(r.filmGauge=t.filmGauge),void 0!==t.filmOffset&amp;&amp;(r.filmOffset=t.filmOffset),void 0!==t.view&amp;&amp;(r.view=Object.assign({},t.view));break;case"OrthographicCamera":r=new Jl(t.left,t.right,t.top,t.bottom,t.near,t.far),void 0!==t.zoom&amp;&amp;(r.zoom=t.zoom),void 0!==t.view&amp;&amp;(r.view=Object.assign({},t.view));break;case"AmbientLight":r=new $l(t.color,t.intensity);break;case"DirectionalLight":r=new Kl(t.color,t.intensity);break;case"PointLight":r=new Zl(t.color,t.intensity,t.distance,t.decay);break;case"RectAreaLight":r=new tc(t.color,t.intensity,t.width,t.height);break;case"SpotLight":r=new Wl(t.color,t.intensity,t.distance,t.angle,t.penumbra,t.decay);break;case"HemisphereLight":r=new Ol(t.color,t.groundColor,t.intensity);break;case"LightProbe":r=(new nc).fromJSON(t);break;case"SkinnedMesh":s=o(t.geometry),a=l(t.material),r=new $s(s,a),void 0!==t.bindMode&amp;&amp;(r.bindMode=t.bindMode),void 0!==t.bindMatrix&amp;&amp;r.bindMatrix.fromArray(t.bindMatrix),void 0!==t.skeleton&amp;&amp;(r.skeleton=t.skeleton);break;case"Mesh":s=o(t.geometry),a=l(t.material),r=new Wn(s,a);break;case"InstancedMesh":s=o(t.geometry),a=l(t.material);const e=t.count,n=t.instanceMatrix,i=t.instanceColor;r=new la(s,a,e),r.instanceMatrix=new sn(new Float32Array(n.array),16),void 0!==i&amp;&amp;(r.instanceColor=new sn(new Float32Array(i.array),i.itemSize));break;case"LOD":r=new Xs;break;case"Line":r=new fa(o(t.geometry),l(t.material));break;case"LineLoop":r=new xa(o(t.geometry),l(t.material));break;case"LineSegments":r=new ya(o(t.geometry),l(t.material));break;case"PointCloud":case"Points":r=new Ta(o(t.geometry),l(t.material));break;case"Sprite":r=new Vs(l(t.material));break;case"Group":r=new gs;break;case"Bone":r=new ta;break;default:r=new Ce}if(r.uuid=t.uuid,void 0!==t.name&amp;&amp;(r.name=t.name),void 0!==t.matrix?(r.matrix.fromArray(t.matrix),void 0!==t.matrixAutoUpdate&amp;&amp;(r.matrixAutoUpdate=t.matrixAutoUpdate),r.matrixAutoUpdate&amp;&amp;r.matrix.decompose(r.position,r.quaternion,r.scale)):(void 0!==t.position&amp;&amp;r.position.fromArray(t.position),void 0!==t.rotation&amp;&amp;r.rotation.fromArray(t.rotation),void 0!==t.quaternion&amp;&amp;r.quaternion.fromArray(t.quaternion),void 0!==t.scale&amp;&amp;r.scale.fromArray(t.scale)),void 0!==t.castShadow&amp;&amp;(r.castShadow=t.castShadow),void 0!==t.receiveShadow&amp;&amp;(r.receiveShadow=t.receiveShadow),t.shadow&amp;&amp;(void 0!==t.shadow.bias&amp;&amp;(r.shadow.bias=t.shadow.bias),void 0!==t.shadow.normalBias&amp;&amp;(r.shadow.normalBias=t.shadow.normalBias),void 0!==t.shadow.radius&amp;&amp;(r.shadow.radius=t.shadow.radius),void 0!==t.shadow.mapSize&amp;&amp;r.shadow.mapSize.fromArray(t.shadow.mapSize),void 0!==t.shadow.camera&amp;&amp;(r.shadow.camera=this.parseObject(t.shadow.camera))),void 0!==t.visible&amp;&amp;(r.visible=t.visible),void 0!==t.frustumCulled&amp;&amp;(r.frustumCulled=t.frustumCulled),void 0!==t.renderOrder&amp;&amp;(r.renderOrder=t.renderOrder),void 0!==t.userData&amp;&amp;(r.userData=t.userData),void 0!==t.layers&amp;&amp;(r.layers.mask=t.layers),void 0!==t.children){const s=t.children;for(let t=0;t&lt;s.length;t++)r.add(this.parseObject(s[t],e,n,i))}if(void 0!==t.animations){const e=t.animations;for(let t=0;t&lt;e.length;t++){const n=e[t];r.animations.push(i[n])}}if("LOD"===t.type){void 0!==t.autoUpdate&amp;&amp;(r.autoUpdate=t.autoUpdate);const e=t.levels;for(let t=0;t&lt;e.length;t++){const n=e[t],i=r.getObjectByProperty("uuid",n.object);void 0!==i&amp;&amp;r.addLevel(i,n.distance)}}return r}bindSkeletons(t,e){0!==Object.keys(e).length&amp;&amp;t.traverse((function(t){if(!0===t.isSkinnedMesh&amp;&amp;void 0!==t.skeleton){const n=e[t.skeleton];void 0===n?console.warn("THREE.ObjectLoader: No skeleton found with UUID:",t.skeleton):t.bind(n,t.bindMatrix)}}))}setTexturePath(t){return console.warn("THREE.ObjectLoader: .setTexturePath() has been renamed to .setResourcePath()."),this.setResourcePath(t)}},t.ObjectSpaceNormalMap=1,t.OctahedronBufferGeometry=_o,t.OctahedronGeometry=_o,t.OneFactor=201,t.OneMinusDstAlphaFactor=207,t.OneMinusDstColorFactor=209,t.OneMinusSrcAlphaFactor=205,t.OneMinusSrcColorFactor=203,t.OrthographicCamera=Jl,t.PCFShadowMap=1,t.PCFSoftShadowMap=2,t.PMREMGenerator=class{constructor(t){this._renderer=t,this._pingPongRenderTarget=null,this._blurMaterial=function(t){const e=new Float32Array(t),n=new Lt(0,1,0);return new Io({name:"SphericalGaussianBlur",defines:{n:t},uniforms:{envMap:{value:null},samples:{value:1},weights:{value:e},latitudinal:{value:!1},dTheta:{value:0},mipInt:{value:0},poleAxis:{value:n},inputEncoding:{value:Nh[3e3]},outputEncoding:{value:Nh[3e3]}},vertexShader:$h(),fragmentShader:`\n\n\t\t\tprecision mediump float;\n\t\t\tprecision mediump int;\n\n\t\t\tvarying vec3 vOutputDirection;\n\n\t\t\tuniform sampler2D envMap;\n\t\t\tuniform int samples;\n\t\t\tuniform float weights[ n ];\n\t\t\tuniform bool latitudinal;\n\t\t\tuniform float dTheta;\n\t\t\tuniform float mipInt;\n\t\t\tuniform vec3 poleAxis;\n\n\t\t\t${tu()}\n\n\t\t\t#define ENVMAP_TYPE_CUBE_UV\n\t\t\t#include &lt;cube_uv_reflection_fragment&gt;\n\n\t\t\tvec3 getSample( float theta, vec3 axis ) {\n\n\t\t\t\tfloat cosTheta = cos( theta );\n\t\t\t\t// Rodrigues' axis-angle rotation\n\t\t\t\tvec3 sampleDirection = vOutputDirection * cosTheta\n\t\t\t\t\t+ cross( axis, vOutputDirection ) * sin( theta )\n\t\t\t\t\t+ axis * dot( axis, vOutputDirection ) * ( 1.0 - cosTheta );\n\n\t\t\t\treturn bilinearCubeUV( envMap, sampleDirection, mipInt );\n\n\t\t\t}\n\n\t\t\tvoid main() {\n\n\t\t\t\tvec3 axis = latitudinal ? poleAxis : cross( poleAxis, vOutputDirection );\n\n\t\t\t\tif ( all( equal( axis, vec3( 0.0 ) ) ) ) {\n\n\t\t\t\t\taxis = vec3( vOutputDirection.z, 0.0, - vOutputDirection.x );\n\n\t\t\t\t}\n\n\t\t\t\taxis = normalize( axis );\n\n\t\t\t\tgl_FragColor = vec4( 0.0, 0.0, 0.0, 1.0 );\n\t\t\t\tgl_FragColor.rgb += weights[ 0 ] * getSample( 0.0, axis );\n\n\t\t\t\tfor ( int i = 1; i &lt; n; i++ ) {\n\n\t\t\t\t\tif ( i &gt;= samples ) {\n\n\t\t\t\t\t\tbreak;\n\n\t\t\t\t\t}\n\n\t\t\t\t\tfloat theta = dTheta * float( i );\n\t\t\t\t\tgl_FragColor.rgb += weights[ i ] * getSample( -1.0 * theta, axis );\n\t\t\t\t\tgl_FragColor.rgb += weights[ i ] * getSample( theta, axis );\n\n\t\t\t\t}\n\n\t\t\t\tgl_FragColor = linearToOutputTexel( gl_FragColor );\n\n\t\t\t}\n\t\t`,blending:0,depthTest:!1,depthWrite:!1})}(Ih),this._equirectShader=null,this._cubemapShader=null,this._compileMaterial(this._blurMaterial)}fromScene(t,e=0,n=.1,i=100){kh=this._renderer.getRenderTarget();const r=this._allocateTargets();return this._sceneToCubeUV(t,n,i,r),e&gt;0&amp;&amp;this._blur(r,0,0,e),this._applyPMREM(r),this._cleanup(r),r}fromEquirectangular(t){return this._fromTexture(t)}fromCubemap(t){return this._fromTexture(t)}compileCubemapShader(){null===this._cubemapShader&amp;&amp;(this._cubemapShader=Kh(),this._compileMaterial(this._cubemapShader))}compileEquirectangularShader(){null===this._equirectShader&amp;&amp;(this._equirectShader=Qh(),this._compileMaterial(this._equirectShader))}dispose(){this._blurMaterial.dispose(),null!==this._cubemapShader&amp;&amp;this._cubemapShader.dispose(),null!==this._equirectShader&amp;&amp;this._equirectShader.dispose();for(let t=0;t&lt;Oh.length;t++)Oh[t].dispose()}_cleanup(t){this._pingPongRenderTarget.dispose(),this._renderer.setRenderTarget(kh),t.scissorTest=!1,Jh(t,0,0,t.width,t.height)}_fromTexture(t){kh=this._renderer.getRenderTarget();const e=this._allocateTargets(t);return this._textureToCubeUV(t,e),this._applyPMREM(e),this._cleanup(e),e}_allocateTargets(t){const e={magFilter:p,minFilter:p,generateMipmaps:!1,type:x,format:1023,encoding:Xh(t)?t.encoding:J,depthBuffer:!1},n=Zh(e);return n.depthBuffer=!t,this._pingPongRenderTarget=Zh(e),n}_compileMaterial(t){const e=new Wn(Oh[0],t);this._renderer.compile(e,Fh)}_sceneToCubeUV(t,e,n,i){const r=new Kn(90,1,e,n),s=[1,-1,1,1,1,1],a=[1,1,1,-1,-1,-1],o=this._renderer,l=o.autoClear,c=o.outputEncoding,h=o.toneMapping;o.getClearColor(Uh),o.toneMapping=0,o.outputEncoding=X,o.autoClear=!1;let u=!1;const d=t.background;if(d){if(d.isColor){Bh.color.copy(d).convertSRGBToLinear(),t.background=null;const e=qh(Bh.color);Bh.opacity=e,u=!0}}else{Bh.color.copy(Uh).convertSRGBToLinear();const t=qh(Bh.color);Bh.opacity=t,u=!0}for(let e=0;e&lt;6;e++){const n=e%3;0==n?(r.up.set(0,s[e],0),r.lookAt(a[e],0,0)):1==n?(r.up.set(0,0,s[e]),r.lookAt(0,a[e],0)):(r.up.set(0,s[e],0),r.lookAt(0,0,a[e])),Jh(i,n*Ch,e&gt;2?Ch:0,Ch,Ch),o.setRenderTarget(i),u&amp;&amp;o.render(zh,r),o.render(t,r)}o.toneMapping=h,o.outputEncoding=c,o.autoClear=l}_textureToCubeUV(t,e){const n=this._renderer;t.isCubeTexture?null==this._cubemapShader&amp;&amp;(this._cubemapShader=Kh()):null==this._equirectShader&amp;&amp;(this._equirectShader=Qh());const i=t.isCubeTexture?this._cubemapShader:this._equirectShader,r=new Wn(Oh[0],i),s=i.uniforms;s.envMap.value=t,t.isCubeTexture||s.texelSize.value.set(1/t.image.width,1/t.image.height),s.inputEncoding.value=Nh[t.encoding],s.outputEncoding.value=Nh[e.texture.encoding],Jh(e,0,0,3*Ch,2*Ch),n.setRenderTarget(e),n.render(r,Fh)}_applyPMREM(t){const e=this._renderer,n=e.autoClear;e.autoClear=!1;for(let e=1;e&lt;Dh;e++){const n=Math.sqrt(Gh[e]*Gh[e]-Gh[e-1]*Gh[e-1]),i=jh[(e-1)%jh.length];this._blur(t,e-1,e,n,i)}e.autoClear=n}_blur(t,e,n,i,r){const s=this._pingPongRenderTarget;this._halfBlur(t,s,e,n,i,"latitudinal",r),this._halfBlur(s,t,n,n,i,"longitudinal",r)}_halfBlur(t,e,n,i,r,s,a){const o=this._renderer,l=this._blurMaterial;"latitudinal"!==s&amp;&amp;"longitudinal"!==s&amp;&amp;console.error("blur direction must be either latitudinal or longitudinal!");const c=new Wn(Oh[i],l),h=l.uniforms,u=Hh[n]-1,d=isFinite(r)?Math.PI/(2*u):2*Math.PI/39,p=r/d,m=isFinite(r)?1+Math.floor(3*p):Ih;m&gt;Ih&amp;&amp;console.warn(`sigmaRadians, ${r}, is too large and will clip, as it requested ${m} samples when the maximum is set to 20`);const f=[];let g=0;for(let t=0;t&lt;Ih;++t){const e=t/p,n=Math.exp(-e*e/2);f.push(n),0==t?g+=n:t&lt;m&amp;&amp;(g+=2*n)}for(let t=0;t&lt;f.length;t++)f[t]=f[t]/g;h.envMap.value=t.texture,h.samples.value=m,h.weights.value=f,h.latitudinal.value="latitudinal"===s,a&amp;&amp;(h.poleAxis.value=a),h.dTheta.value=d,h.mipInt.value=8-n,h.inputEncoding.value=Nh[t.texture.encoding],h.outputEncoding.value=Nh[t.texture.encoding];const v=Hh[i];Jh(e,3*Math.max(0,Ch-2*v),(0===i?0:2*Ch)+2*v*(i&gt;4?i-8+4:0),3*v,2*v),o.setRenderTarget(e),o.render(c,Fh)}},t.ParametricBufferGeometry=wo,t.ParametricGeometry=wo,t.Particle=function(t){return console.warn("THREE.Particle has been renamed to THREE.Sprite."),new Vs(t)},t.ParticleBasicMaterial=function(t){return console.warn("THREE.ParticleBasicMaterial has been renamed to THREE.PointsMaterial."),new _a(t)},t.ParticleSystem=function(t,e){return console.warn("THREE.ParticleSystem has been renamed to THREE.Points."),new Ta(t,e)},t.ParticleSystemMaterial=function(t){return console.warn("THREE.ParticleSystemMaterial has been renamed to THREE.PointsMaterial."),new _a(t)},t.Path=Bl,t.PerspectiveCamera=Kn,t.Plane=Ne,t.PlaneBufferGeometry=ci,t.PlaneGeometry=ci,t.PlaneHelper=class extends fa{constructor(t,e=1,n=16776960){const i=n,r=new En;r.setAttribute("position",new mn([1,-1,1,-1,1,1,-1,-1,1,1,1,1,-1,1,1,-1,-1,1,1,-1,1,1,1,1,0,0,1,0,0,0],3)),r.computeBoundingSphere(),super(r,new ca({color:i,toneMapped:!1})),this.type="PlaneHelper",this.plane=t,this.size=e;const s=new En;s.setAttribute("position",new mn([1,1,1,-1,1,1,-1,-1,1,1,1,1,-1,-1,1,1,-1,1],3)),s.computeBoundingSphere(),this.add(new Wn(s,new en({color:i,opacity:.2,transparent:!0,depthWrite:!1,toneMapped:!1})))}updateMatrixWorld(t){let e=-this.plane.constant;Math.abs(e)&lt;1e-8&amp;&amp;(e=1e-8),this.scale.set(.5*this.size,.5*this.size,e),this.children[0].material.side=e&lt;0?1:0,this.lookAt(this.plane.normal),super.updateMatrixWorld(t)}},t.PointCloud=function(t,e){return console.warn("THREE.PointCloud has been renamed to THREE.Points."),new Ta(t,e)},t.PointCloudMaterial=function(t){return console.warn("THREE.PointCloudMaterial has been renamed to THREE.PointsMaterial."),new _a(t)},t.PointLight=Zl,t.PointLightHelper=class extends Wn{constructor(t,e,n){super(new So(e,4,2),new en({wireframe:!0,fog:!1,toneMapped:!1})),this.light=t,this.light.updateMatrixWorld(),this.color=n,this.type="PointLightHelper",this.matrix=this.light.matrixWorld,this.matrixAutoUpdate=!1,this.update()}dispose(){this.geometry.dispose(),this.material.dispose()}update(){void 0!==this.color?this.material.color.set(this.color):this.material.color.copy(this.light.color)}},t.Points=Ta,t.PointsMaterial=_a,t.PolarGridHelper=class extends ya{constructor(t=10,e=16,n=8,i=64,r=4473924,s=8947848){r=new tn(r),s=new tn(s);const a=[],o=[];for(let n=0;n&lt;=e;n++){const i=n/e*(2*Math.PI),l=Math.sin(i)*t,c=Math.cos(i)*t;a.push(0,0,0),a.push(l,0,c);const h=1&amp;n?r:s;o.push(h.r,h.g,h.b),o.push(h.r,h.g,h.b)}for(let e=0;e&lt;=n;e++){const l=1&amp;e?r:s,c=t-t/n*e;for(let t=0;t&lt;i;t++){let e=t/i*(2*Math.PI),n=Math.sin(e)*c,r=Math.cos(e)*c;a.push(n,0,r),o.push(l.r,l.g,l.b),e=(t+1)/i*(2*Math.PI),n=Math.sin(e)*c,r=Math.cos(e)*c,a.push(n,0,r),o.push(l.r,l.g,l.b)}}const l=new En;l.setAttribute("position",new mn(a,3)),l.setAttribute("color",new mn(o,3));super(l,new ca({vertexColors:!0,toneMapped:!1})),this.type="PolarGridHelper"}},t.PolyhedronBufferGeometry=Na,t.PolyhedronGeometry=Na,t.PositionalAudio=class extends Lc{constructor(t){super(t),this.panner=this.context.createPanner(),this.panner.panningModel="HRTF",this.panner.connect(this.gain)}getOutput(){return this.panner}getRefDistance(){return this.panner.refDistance}setRefDistance(t){return this.panner.refDistance=t,this}getRolloffFactor(){return this.panner.rolloffFactor}setRolloffFactor(t){return this.panner.rolloffFactor=t,this}getDistanceModel(){return this.panner.distanceModel}setDistanceModel(t){return this.panner.distanceModel=t,this}getMaxDistance(){return this.panner.maxDistance}setMaxDistance(t){return this.panner.maxDistance=t,this}setDirectionalCone(t,e,n){return this.panner.coneInnerAngle=t,this.panner.coneOuterAngle=e,this.panner.coneOuterGain=n,this}updateMatrixWorld(t){if(super.updateMatrixWorld(t),!0===this.hasPlaybackControl&amp;&amp;!1===this.isPlaying)return;this.matrixWorld.decompose(Rc,Cc,Pc),Dc.set(0,0,1).applyQuaternion(Cc);const e=this.panner;if(e.positionX){const t=this.context.currentTime+this.listener.timeDelta;e.positionX.linearRampToValueAtTime(Rc.x,t),e.positionY.linearRampToValueAtTime(Rc.y,t),e.positionZ.linearRampToValueAtTime(Rc.z,t),e.orientationX.linearRampToValueAtTime(Dc.x,t),e.orientationY.linearRampToValueAtTime(Dc.y,t),e.orientationZ.linearRampToValueAtTime(Dc.z,t)}else e.setPosition(Rc.x,Rc.y,Rc.z),e.setOrientation(Dc.x,Dc.y,Dc.z)}},t.PropertyBinding=jc,t.PropertyMixer=Nc,t.QuadraticBezierCurve=Cl,t.QuadraticBezierCurve3=Pl,t.Quaternion=At,t.QuaternionKeyframeTrack=$o,t.QuaternionLinearInterpolant=Ko,t.REVISION=e,t.RGBADepthPacking=3201,t.RGBAFormat=E,t.RGBAIntegerFormat=1033,t.RGBA_ASTC_10x10_Format=37819,t.RGBA_ASTC_10x5_Format=37816,t.RGBA_ASTC_10x6_Format=37817,t.RGBA_ASTC_10x8_Format=37818,t.RGBA_ASTC_12x10_Format=37820,t.RGBA_ASTC_12x12_Format=37821,t.RGBA_ASTC_4x4_Format=37808,t.RGBA_ASTC_5x4_Format=37809,t.RGBA_ASTC_5x5_Format=37810,t.RGBA_ASTC_6x5_Format=37811,t.RGBA_ASTC_6x6_Format=37812,t.RGBA_ASTC_8x5_Format=37813,t.RGBA_ASTC_8x6_Format=37814,t.RGBA_ASTC_8x8_Format=37815,t.RGBA_BPTC_Format=36492,t.RGBA_ETC2_EAC_Format=O,t.RGBA_PVRTC_2BPPV1_Format=z,t.RGBA_PVRTC_4BPPV1_Format=B,t.RGBA_S3TC_DXT1_Format=C,t.RGBA_S3TC_DXT3_Format=P,t.RGBA_S3TC_DXT5_Format=D,t.RGBDEncoding=$,t.RGBEEncoding=J,t.RGBEFormat=1023,t.RGBFormat=T,t.RGBIntegerFormat=1032,t.RGBM16Encoding=K,t.RGBM7Encoding=Q,t.RGB_ETC1_Format=36196,t.RGB_ETC2_Format=F,t.RGB_PVRTC_2BPPV1_Format=N,t.RGB_PVRTC_4BPPV1_Format=I,t.RGB_S3TC_DXT1_Format=R,t.RGFormat=1030,t.RGIntegerFormat=1031,t.RawShaderMaterial=Io,t.Ray=re,t.Raycaster=class{constructor(t,e,n=0,i=1/0){this.ray=new re(t,e),this.near=n,this.far=i,this.camera=null,this.layers=new ge,this.params={Mesh:{},Line:{threshold:1},LOD:{},Points:{threshold:1},Sprite:{}}}set(t,e){this.ray.set(t,e)}setFromCamera(t,e){e&amp;&amp;e.isPerspectiveCamera?(this.ray.origin.setFromMatrixPosition(e.matrixWorld),this.ray.direction.set(t.x,t.y,.5).unproject(e).sub(this.ray.origin).normalize(),this.camera=e):e&amp;&amp;e.isOrthographicCamera?(this.ray.origin.set(t.x,t.y,(e.near+e.far)/(e.near-e.far)).unproject(e),this.ray.direction.set(0,0,-1).transformDirection(e.matrixWorld),this.camera=e):console.error("THREE.Raycaster: Unsupported camera type: "+e.type)}intersectObject(t,e=!1,n=[]){return $c(t,this,n,e),n.sort(Kc),n}intersectObjects(t,e=!1,n=[]){for(let i=0,r=t.length;i&lt;r;i++)$c(t[i],this,n,e);return n.sort(Kc),n}},t.RectAreaLight=tc,t.RedFormat=1028,t.RedIntegerFormat=1029,t.ReinhardToneMapping=2,t.RepeatWrapping=h,t.ReplaceStencilOp=7681,t.ReverseSubtractEquation=102,t.RingBufferGeometry=bo,t.RingGeometry=bo,t.SRGB8_ALPHA8_ASTC_10x10_Format=37851,t.SRGB8_ALPHA8_ASTC_10x5_Format=37848,t.SRGB8_ALPHA8_ASTC_10x6_Format=37849,t.SRGB8_ALPHA8_ASTC_10x8_Format=37850,t.SRGB8_ALPHA8_ASTC_12x10_Format=37852,t.SRGB8_ALPHA8_ASTC_12x12_Format=37853,t.SRGB8_ALPHA8_ASTC_4x4_Format=37840,t.SRGB8_ALPHA8_ASTC_5x4_Format=37841,t.SRGB8_ALPHA8_ASTC_5x5_Format=37842,t.SRGB8_ALPHA8_ASTC_6x5_Format=37843,t.SRGB8_ALPHA8_ASTC_6x6_Format=37844,t.SRGB8_ALPHA8_ASTC_8x5_Format=37845,t.SRGB8_ALPHA8_ASTC_8x6_Format=37846,t.SRGB8_ALPHA8_ASTC_8x8_Format=37847,t.Scene=Ts,t.SceneUtils=eu,t.ShaderChunk=hi,t.ShaderLib=di,t.ShaderMaterial=Jn,t.ShadowMaterial=Do,t.Shape=zl,t.ShapeBufferGeometry=Mo,t.ShapeGeometry=Mo,t.ShapePath=dc,t.ShapeUtils=po,t.ShortType=1011,t.Skeleton=ia,t.SkeletonHelper=hh,t.SkinnedMesh=$s,t.SmoothShading=2,t.Sphere=Jt,t.SphereBufferGeometry=So,t.SphereGeometry=So,t.Spherical=class{constructor(t=1,e=0,n=0){return this.radius=t,this.phi=e,this.theta=n,this}set(t,e,n){return this.radius=t,this.phi=e,this.theta=n,this}copy(t){return this.radius=t.radius,this.phi=t.phi,this.theta=t.theta,this}makeSafe(){const t=1e-6;return this.phi=Math.max(t,Math.min(Math.PI-t,this.phi)),this}setFromVector3(t){return this.setFromCartesianCoords(t.x,t.y,t.z)}setFromCartesianCoords(t,e,n){return this.radius=Math.sqrt(t*t+e*e+n*n),0===this.radius?(this.theta=0,this.phi=0):(this.theta=Math.atan2(t,n),this.phi=Math.acos(ht(e/this.radius,-1,1))),this}clone(){return(new this.constructor).copy(this)}},t.SphericalHarmonics3=ec,t.SplineCurve=Dl,t.SpotLight=Wl,t.SpotLightHelper=class extends Ce{constructor(t,e){super(),this.light=t,this.light.updateMatrixWorld(),this.matrix=t.matrixWorld,this.matrixAutoUpdate=!1,this.color=e;const n=new En,i=[0,0,0,0,0,1,0,0,0,1,0,1,0,0,0,-1,0,1,0,0,0,0,1,1,0,0,0,0,-1,1];for(let t=0,e=1,n=32;t&lt;n;t++,e++){const r=t/n*Math.PI*2,s=e/n*Math.PI*2;i.push(Math.cos(r),Math.sin(r),1,Math.cos(s),Math.sin(s),1)}n.setAttribute("position",new mn(i,3));const r=new ca({fog:!1,toneMapped:!1});this.cone=new ya(n,r),this.add(this.cone),this.update()}dispose(){this.cone.geometry.dispose(),this.cone.material.dispose()}update(){this.light.updateMatrixWorld();const t=this.light.distance?this.light.distance:1e3,e=t*Math.tan(this.light.angle);this.cone.scale.set(e,e,t),ah.setFromMatrixPosition(this.light.target.matrixWorld),this.cone.lookAt(ah),void 0!==this.color?this.cone.material.color.set(this.color):this.cone.material.color.copy(this.light.color)}},t.Sprite=Vs,t.SpriteMaterial=Rs,t.SrcAlphaFactor=204,t.SrcAlphaSaturateFactor=210,t.SrcColorFactor=202,t.StaticCopyUsage=35046,t.StaticDrawUsage=et,t.StaticReadUsage=35045,t.StereoCamera=class{constructor(){this.type="StereoCamera",this.aspect=1,this.eyeSep=.064,this.cameraL=new Kn,this.cameraL.layers.enable(1),this.cameraL.matrixAutoUpdate=!1,this.cameraR=new Kn,this.cameraR.layers.enable(2),this.cameraR.matrixAutoUpdate=!1,this._cache={focus:null,fov:null,aspect:null,near:null,far:null,zoom:null,eyeSep:null}}update(t){const e=this._cache;if(e.focus!==t.focus||e.fov!==t.fov||e.aspect!==t.aspect*this.aspect||e.near!==t.near||e.far!==t.far||e.zoom!==t.zoom||e.eyeSep!==this.eyeSep){e.focus=t.focus,e.fov=t.fov,e.aspect=t.aspect*this.aspect,e.near=t.near,e.far=t.far,e.zoom=t.zoom,e.eyeSep=this.eyeSep;const n=t.projectionMatrix.clone(),i=e.eyeSep/2,r=i*e.near/e.focus,s=e.near*Math.tan(ot*e.fov*.5)/e.zoom;let a,o;wc.elements[12]=-i,_c.elements[12]=i,a=-s*e.aspect+r,o=s*e.aspect+r,n.elements[0]=2*e.near/(o-a),n.elements[8]=(o+a)/(o-a),this.cameraL.projectionMatrix.copy(n),a=-s*e.aspect-r,o=s*e.aspect-r,n.elements[0]=2*e.near/(o-a),n.elements[8]=(o+a)/(o-a),this.cameraR.projectionMatrix.copy(n)}this.cameraL.matrixWorld.copy(t.matrixWorld).multiply(wc),this.cameraR.matrixWorld.copy(t.matrixWorld).multiply(_c)}},t.StreamCopyUsage=35042,t.StreamDrawUsage=35040,t.StreamReadUsage=35041,t.StringKeyframeTrack=tl,t.SubtractEquation=101,t.SubtractiveBlending=3,t.TOUCH={ROTATE:0,PAN:1,DOLLY_PAN:2,DOLLY_ROTATE:3},t.TangentSpaceNormalMap=0,t.TetrahedronBufferGeometry=To,t.TetrahedronGeometry=To,t.TextBufferGeometry=Eo,t.TextGeometry=Eo,t.Texture=bt,t.TextureLoader=pl,t.TorusBufferGeometry=Ao,t.TorusGeometry=Ao,t.TorusKnotBufferGeometry=Lo,t.TorusKnotGeometry=Lo,t.Triangle=je,t.TriangleFanDrawMode=2,t.TriangleStripDrawMode=1,t.TrianglesDrawMode=0,t.TubeBufferGeometry=Ro,t.TubeGeometry=Ro,t.UVMapping=i,t.Uint16Attribute=function(t,e){return console.warn("THREE.Uint16Attribute has been removed. Use new THREE.Uint16BufferAttribute() instead."),new hn(t,e)},t.Uint16BufferAttribute=hn,t.Uint32Attribute=function(t,e){return console.warn("THREE.Uint32Attribute has been removed. Use new THREE.Uint32BufferAttribute() instead."),new dn(t,e)},t.Uint32BufferAttribute=dn,t.Uint8Attribute=function(t,e){return console.warn("THREE.Uint8Attribute has been removed. Use new THREE.Uint8BufferAttribute() instead."),new on(t,e)},t.Uint8BufferAttribute=on,t.Uint8ClampedAttribute=function(t,e){return console.warn("THREE.Uint8ClampedAttribute has been removed. Use new THREE.Uint8ClampedBufferAttribute() instead."),new ln(t,e)},t.Uint8ClampedBufferAttribute=ln,t.Uniform=Zc,t.UniformsLib=ui,t.UniformsUtils=Zn,t.UnsignedByteType=x,t.UnsignedInt248Type=S,t.UnsignedIntType=w,t.UnsignedShort4444Type=1017,t.UnsignedShort5551Type=1018,t.UnsignedShort565Type=1019,t.UnsignedShortType=_,t.VSMShadowMap=3,t.Vector2=vt,t.Vector3=Lt,t.Vector4=St,t.VectorKeyframeTrack=el,t.Vertex=function(t,e,n){return console.warn("THREE.Vertex has been removed. Use THREE.Vector3 instead."),new Lt(t,e,n)},t.VertexColors=2,t.VideoTexture=Aa,t.WebGL1Renderer=bs,t.WebGLCubeRenderTarget=ni,t.WebGLMultisampleRenderTarget=Et,t.WebGLRenderTarget=Tt,t.WebGLRenderTargetCube=function(t,e,n){return console.warn("THREE.WebGLRenderTargetCube( width, height, options ) is now WebGLCubeRenderTarget( size, options )."),new ni(t,n)},t.WebGLRenderer=ws,t.WebGLUtils=ms,t.WireframeGeometry=Co,t.WireframeHelper=function(t,e){return console.warn("THREE.WireframeHelper has been removed. Use THREE.WireframeGeometry instead."),new ya(new Co(t.geometry),new ca({color:void 0!==e?e:16777215}))},t.WrapAroundEnding=W,t.XHRLoader=function(t){return console.warn("THREE.XHRLoader has been renamed to THREE.FileLoader."),new cl(t)},t.ZeroCurvatureEnding=k,t.ZeroFactor=200,t.ZeroSlopeEnding=V,t.ZeroStencilOp=0,t.sRGBEncoding=Y,Object.defineProperty(t,"__esModule",{value:!0})}));!function(i){"use strict";"function"==typeof define&amp;&amp;define.amd?define(["jquery"],i):"undefined"!=typeof exports?module.exports=i(require("jquery")):i(jQuery)}(function(i){"use strict";var e=window.Slick||{};(e=function(){var e=0;return function(t,o){var s,n=this;n.defaults={accessibility:!0,adaptiveHeight:!1,appendArrows:i(t),appendDots:i(t),arrows:!0,asNavFor:null,prevArrow:'&lt;button class="slick-prev" aria-label="Previous" type="button"&gt;Previous&lt;/button&gt;',nextArrow:'&lt;button class="slick-next" aria-label="Next" type="button"&gt;Next&lt;/button&gt;',autoplay:!1,autoplaySpeed:3e3,centerMode:!1,centerPadding:"50px",cssEase:"ease",customPaging:function(e,t){return i('&lt;button type="button" /&gt;').text(t+1)},dots:!1,dotsClass:"slick-dots",draggable:!0,easing:"linear",edgeFriction:.35,fade:!1,focusOnSelect:!1,focusOnChange:!1,infinite:!0,initialSlide:0,lazyLoad:"ondemand",mobileFirst:!1,pauseOnHover:!0,pauseOnFocus:!0,pauseOnDotsHover:!1,respondTo:"window",responsive:null,rows:1,rtl:!1,slide:"",slidesPerRow:1,slidesToShow:1,slidesToScroll:1,speed:500,swipe:!0,swipeToSlide:!1,touchMove:!0,touchThreshold:5,useCSS:!0,useTransform:!0,variableWidth:!1,vertical:!1,verticalSwiping:!1,waitForAnimate:!0,zIndex:1e3},n.initials={animating:!1,dragging:!1,autoPlayTimer:null,currentDirection:0,currentLeft:null,currentSlide:0,direction:1,$dots:null,listWidth:null,listHeight:null,loadIndex:0,$nextArrow:null,$prevArrow:null,scrolling:!1,slideCount:null,slideWidth:null,$slideTrack:null,$slides:null,sliding:!1,slideOffset:0,swipeLeft:null,swiping:!1,$list:null,touchObject:{},transformsEnabled:!1,unslicked:!1},i.extend(n,n.initials),n.activeBreakpoint=null,n.animType=null,n.animProp=null,n.breakpoints=[],n.breakpointSettings=[],n.cssTransitions=!1,n.focussed=!1,n.interrupted=!1,n.hidden="hidden",n.paused=!0,n.positionProp=null,n.respondTo=null,n.rowCount=1,n.shouldClick=!0,n.$slider=i(t),n.$slidesCache=null,n.transformType=null,n.transitionType=null,n.visibilityChange="visibilitychange",n.windowWidth=0,n.windowTimer=null,s=i(t).data("slick")||{},n.options=i.extend({},n.defaults,o,s),n.currentSlide=n.options.initialSlide,n.originalSettings=n.options,void 0!==document.mozHidden?(n.hidden="mozHidden",n.visibilityChange="mozvisibilitychange"):void 0!==document.webkitHidden&amp;&amp;(n.hidden="webkitHidden",n.visibilityChange="webkitvisibilitychange"),n.autoPlay=i.proxy(n.autoPlay,n),n.autoPlayClear=i.proxy(n.autoPlayClear,n),n.autoPlayIterator=i.proxy(n.autoPlayIterator,n),n.changeSlide=i.proxy(n.changeSlide,n),n.clickHandler=i.proxy(n.clickHandler,n),n.selectHandler=i.proxy(n.selectHandler,n),n.setPosition=i.proxy(n.setPosition,n),n.swipeHandler=i.proxy(n.swipeHandler,n),n.dragHandler=i.proxy(n.dragHandler,n),n.keyHandler=i.proxy(n.keyHandler,n),n.instanceUid=e++,n.htmlExpr=/^(?:\s*(&lt;[\w\W]+&gt;)[^&gt;]*)$/,n.registerBreakpoints(),n.init(!0)}}()).prototype.activateADA=function(){this.$slideTrack.find(".slick-active").attr({"aria-hidden":"false"}).find("a, input, button, select").attr({tabindex:"0"})},e.prototype.addSlide=e.prototype.slickAdd=function(e,t,o){var s=this;if("boolean"==typeof t)o=t,t=null;else if(t&lt;0||t&gt;=s.slideCount)return!1;s.unload(),"number"==typeof t?0===t&amp;&amp;0===s.$slides.length?i(e).appendTo(s.$slideTrack):o?i(e).insertBefore(s.$slides.eq(t)):i(e).insertAfter(s.$slides.eq(t)):!0===o?i(e).prependTo(s.$slideTrack):i(e).appendTo(s.$slideTrack),s.$slides=s.$slideTrack.children(this.options.slide),s.$slideTrack.children(this.options.slide).detach(),s.$slideTrack.append(s.$slides),s.$slides.each(function(e,t){i(t).attr("data-slick-index",e)}),s.$slidesCache=s.$slides,s.reinit()},e.prototype.animateHeight=function(){var i=this;if(1===i.options.slidesToShow&amp;&amp;!0===i.options.adaptiveHeight&amp;&amp;!1===i.options.vertical){var e=i.$slides.eq(i.currentSlide).outerHeight(!0);i.$list.animate({height:e},i.options.speed)}},e.prototype.animateSlide=function(e,t){var o={},s=this;s.animateHeight(),!0===s.options.rtl&amp;&amp;!1===s.options.vertical&amp;&amp;(e=-e),!1===s.transformsEnabled?!1===s.options.vertical?s.$slideTrack.animate({left:e},s.options.speed,s.options.easing,t):s.$slideTrack.animate({top:e},s.options.speed,s.options.easing,t):!1===s.cssTransitions?(!0===s.options.rtl&amp;&amp;(s.currentLeft=-s.currentLeft),i({animStart:s.currentLeft}).animate({animStart:e},{duration:s.options.speed,easing:s.options.easing,step:function(i){i=Math.ceil(i),!1===s.options.vertical?(o[s.animType]="translate("+i+"px, 0px)",s.$slideTrack.css(o)):(o[s.animType]="translate(0px,"+i+"px)",s.$slideTrack.css(o))},complete:function(){t&amp;&amp;t.call()}})):(s.applyTransition(),e=Math.ceil(e),!1===s.options.vertical?o[s.animType]="translate3d("+e+"px, 0px, 0px)":o[s.animType]="translate3d(0px,"+e+"px, 0px)",s.$slideTrack.css(o),t&amp;&amp;setTimeout(function(){s.disableTransition(),t.call()},s.options.speed))},e.prototype.getNavTarget=function(){var e=this,t=e.options.asNavFor;return t&amp;&amp;null!==t&amp;&amp;(t=i(t).not(e.$slider)),t},e.prototype.asNavFor=function(e){var t=this.getNavTarget();null!==t&amp;&amp;"object"==typeof t&amp;&amp;t.each(function(){var t=i(this).slick("getSlick");t.unslicked||t.slideHandler(e,!0)})},e.prototype.applyTransition=function(i){var e=this,t={};!1===e.options.fade?t[e.transitionType]=e.transformType+" "+e.options.speed+"ms "+e.options.cssEase:t[e.transitionType]="opacity "+e.options.speed+"ms "+e.options.cssEase,!1===e.options.fade?e.$slideTrack.css(t):e.$slides.eq(i).css(t)},e.prototype.autoPlay=function(){var i=this;i.autoPlayClear(),i.slideCount&gt;i.options.slidesToShow&amp;&amp;(i.autoPlayTimer=setInterval(i.autoPlayIterator,i.options.autoplaySpeed))},e.prototype.autoPlayClear=function(){var i=this;i.autoPlayTimer&amp;&amp;clearInterval(i.autoPlayTimer)},e.prototype.autoPlayIterator=function(){var i=this,e=i.currentSlide+i.options.slidesToScroll;i.paused||i.interrupted||i.focussed||(!1===i.options.infinite&amp;&amp;(1===i.direction&amp;&amp;i.currentSlide+1===i.slideCount-1?i.direction=0:0===i.direction&amp;&amp;(e=i.currentSlide-i.options.slidesToScroll,i.currentSlide-1==0&amp;&amp;(i.direction=1))),i.slideHandler(e))},e.prototype.buildArrows=function(){var e=this;!0===e.options.arrows&amp;&amp;(e.$prevArrow=i(e.options.prevArrow).addClass("slick-arrow"),e.$nextArrow=i(e.options.nextArrow).addClass("slick-arrow"),e.slideCount&gt;e.options.slidesToShow?(e.$prevArrow.removeClass("slick-hidden").removeAttr("aria-hidden tabindex"),e.$nextArrow.removeClass("slick-hidden").removeAttr("aria-hidden tabindex"),e.htmlExpr.test(e.options.prevArrow)&amp;&amp;e.$prevArrow.prependTo(e.options.appendArrows),e.htmlExpr.test(e.options.nextArrow)&amp;&amp;e.$nextArrow.appendTo(e.options.appendArrows),!0!==e.options.infinite&amp;&amp;e.$prevArrow.addClass("slick-disabled").attr("aria-disabled","true")):e.$prevArrow.add(e.$nextArrow).addClass("slick-hidden").attr({"aria-disabled":"true",tabindex:"-1"}))},e.prototype.buildDots=function(){var e,t,o=this;if(!0===o.options.dots){for(o.$slider.addClass("slick-dotted"),t=i("&lt;ul /&gt;").addClass(o.options.dotsClass),e=0;e&lt;=o.getDotCount();e+=1)t.append(i("&lt;li /&gt;").append(o.options.customPaging.call(this,o,e)));o.$dots=t.appendTo(o.options.appendDots),o.$dots.find("li").first().addClass("slick-active")}},e.prototype.buildOut=function(){var e=this;e.$slides=e.$slider.children(e.options.slide+":not(.slick-cloned)").addClass("slick-slide"),e.slideCount=e.$slides.length,e.$slides.each(function(e,t){i(t).attr("data-slick-index",e).data("originalStyling",i(t).attr("style")||"")}),e.$slider.addClass("slick-slider"),e.$slideTrack=0===e.slideCount?i('&lt;div class="slick-track"/&gt;').appendTo(e.$slider):e.$slides.wrapAll('&lt;div class="slick-track"/&gt;').parent(),e.$list=e.$slideTrack.wrap('&lt;div class="slick-list"/&gt;').parent(),e.$slideTrack.css("opacity",0),!0!==e.options.centerMode&amp;&amp;!0!==e.options.swipeToSlide||(e.options.slidesToScroll=1),i("img[data-lazy]",e.$slider).not("[src]").addClass("slick-loading"),e.setupInfinite(),e.buildArrows(),e.buildDots(),e.updateDots(),e.setSlideClasses("number"==typeof e.currentSlide?e.currentSlide:0),!0===e.options.draggable&amp;&amp;e.$list.addClass("draggable")},e.prototype.buildRows=function(){var i,e,t,o,s,n,r,l=this;if(o=document.createDocumentFragment(),n=l.$slider.children(),l.options.rows&gt;1){for(r=l.options.slidesPerRow*l.options.rows,s=Math.ceil(n.length/r),i=0;i&lt;s;i++){var d=document.createElement("div");for(e=0;e&lt;l.options.rows;e++){var a=document.createElement("div");for(t=0;t&lt;l.options.slidesPerRow;t++){var c=i*r+(e*l.options.slidesPerRow+t);n.get(c)&amp;&amp;a.appendChild(n.get(c))}d.appendChild(a)}o.appendChild(d)}l.$slider.empty().append(o),l.$slider.children().children().children().css({width:100/l.options.slidesPerRow+"%",display:"inline-block"})}},e.prototype.checkResponsive=function(e,t){var o,s,n,r=this,l=!1,d=r.$slider.width(),a=window.innerWidth||i(window).width();if("window"===r.respondTo?n=a:"slider"===r.respondTo?n=d:"min"===r.respondTo&amp;&amp;(n=Math.min(a,d)),r.options.responsive&amp;&amp;r.options.responsive.length&amp;&amp;null!==r.options.responsive){s=null;for(o in r.breakpoints)r.breakpoints.hasOwnProperty(o)&amp;&amp;(!1===r.originalSettings.mobileFirst?n&lt;r.breakpoints[o]&amp;&amp;(s=r.breakpoints[o]):n&gt;r.breakpoints[o]&amp;&amp;(s=r.breakpoints[o]));null!==s?null!==r.activeBreakpoint?(s!==r.activeBreakpoint||t)&amp;&amp;(r.activeBreakpoint=s,"unslick"===r.breakpointSettings[s]?r.unslick(s):(r.options=i.extend({},r.originalSettings,r.breakpointSettings[s]),!0===e&amp;&amp;(r.currentSlide=r.options.initialSlide),r.refresh(e)),l=s):(r.activeBreakpoint=s,"unslick"===r.breakpointSettings[s]?r.unslick(s):(r.options=i.extend({},r.originalSettings,r.breakpointSettings[s]),!0===e&amp;&amp;(r.currentSlide=r.options.initialSlide),r.refresh(e)),l=s):null!==r.activeBreakpoint&amp;&amp;(r.activeBreakpoint=null,r.options=r.originalSettings,!0===e&amp;&amp;(r.currentSlide=r.options.initialSlide),r.refresh(e),l=s),e||!1===l||r.$slider.trigger("breakpoint",[r,l])}},e.prototype.changeSlide=function(e,t){var o,s,n,r=this,l=i(e.currentTarget);switch(l.is("a")&amp;&amp;e.preventDefault(),l.is("li")||(l=l.closest("li")),n=r.slideCount%r.options.slidesToScroll!=0,o=n?0:(r.slideCount-r.currentSlide)%r.options.slidesToScroll,e.data.message){case"previous":s=0===o?r.options.slidesToScroll:r.options.slidesToShow-o,r.slideCount&gt;r.options.slidesToShow&amp;&amp;r.slideHandler(r.currentSlide-s,!1,t);break;case"next":s=0===o?r.options.slidesToScroll:o,r.slideCount&gt;r.options.slidesToShow&amp;&amp;r.slideHandler(r.currentSlide+s,!1,t);break;case"index":var d=0===e.data.index?0:e.data.index||l.index()*r.options.slidesToScroll;r.slideHandler(r.checkNavigable(d),!1,t),l.children().trigger("focus");break;default:return}},e.prototype.checkNavigable=function(i){var e,t;if(e=this.getNavigableIndexes(),t=0,i&gt;e[e.length-1])i=e[e.length-1];else for(var o in e){if(i&lt;e[o]){i=t;break}t=e[o]}return i},e.prototype.cleanUpEvents=function(){var e=this;e.options.dots&amp;&amp;null!==e.$dots&amp;&amp;(i("li",e.$dots).off("click.slick",e.changeSlide).off("mouseenter.slick",i.proxy(e.interrupt,e,!0)).off("mouseleave.slick",i.proxy(e.interrupt,e,!1)),!0===e.options.accessibility&amp;&amp;e.$dots.off("keydown.slick",e.keyHandler)),e.$slider.off("focus.slick blur.slick"),!0===e.options.arrows&amp;&amp;e.slideCount&gt;e.options.slidesToShow&amp;&amp;(e.$prevArrow&amp;&amp;e.$prevArrow.off("click.slick",e.changeSlide),e.$nextArrow&amp;&amp;e.$nextArrow.off("click.slick",e.changeSlide),!0===e.options.accessibility&amp;&amp;(e.$prevArrow&amp;&amp;e.$prevArrow.off("keydown.slick",e.keyHandler),e.$nextArrow&amp;&amp;e.$nextArrow.off("keydown.slick",e.keyHandler))),e.$list.off("touchstart.slick mousedown.slick",e.swipeHandler),e.$list.off("touchmove.slick mousemove.slick",e.swipeHandler),e.$list.off("touchend.slick mouseup.slick",e.swipeHandler),e.$list.off("touchcancel.slick mouseleave.slick",e.swipeHandler),e.$list.off("click.slick",e.clickHandler),i(document).off(e.visibilityChange,e.visibility),e.cleanUpSlideEvents(),!0===e.options.accessibility&amp;&amp;e.$list.off("keydown.slick",e.keyHandler),!0===e.options.focusOnSelect&amp;&amp;i(e.$slideTrack).children().off("click.slick",e.selectHandler),i(window).off("orientationchange.slick.slick-"+e.instanceUid,e.orientationChange),i(window).off("resize.slick.slick-"+e.instanceUid,e.resize),i("[draggable!=true]",e.$slideTrack).off("dragstart",e.preventDefault),i(window).off("load.slick.slick-"+e.instanceUid,e.setPosition)},e.prototype.cleanUpSlideEvents=function(){var e=this;e.$list.off("mouseenter.slick",i.proxy(e.interrupt,e,!0)),e.$list.off("mouseleave.slick",i.proxy(e.interrupt,e,!1))},e.prototype.cleanUpRows=function(){var i,e=this;e.options.rows&gt;1&amp;&amp;((i=e.$slides.children().children()).removeAttr("style"),e.$slider.empty().append(i))},e.prototype.clickHandler=function(i){!1===this.shouldClick&amp;&amp;(i.stopImmediatePropagation(),i.stopPropagation(),i.preventDefault())},e.prototype.destroy=function(e){var t=this;t.autoPlayClear(),t.touchObject={},t.cleanUpEvents(),i(".slick-cloned",t.$slider).detach(),t.$dots&amp;&amp;t.$dots.remove(),t.$prevArrow&amp;&amp;t.$prevArrow.length&amp;&amp;(t.$prevArrow.removeClass("slick-disabled slick-arrow slick-hidden").removeAttr("aria-hidden aria-disabled tabindex").css("display",""),t.htmlExpr.test(t.options.prevArrow)&amp;&amp;t.$prevArrow.remove()),t.$nextArrow&amp;&amp;t.$nextArrow.length&amp;&amp;(t.$nextArrow.removeClass("slick-disabled slick-arrow slick-hidden").removeAttr("aria-hidden aria-disabled tabindex").css("display",""),t.htmlExpr.test(t.options.nextArrow)&amp;&amp;t.$nextArrow.remove()),t.$slides&amp;&amp;(t.$slides.removeClass("slick-slide slick-active slick-center slick-visible slick-current").removeAttr("aria-hidden").removeAttr("data-slick-index").each(function(){i(this).attr("style",i(this).data("originalStyling"))}),t.$slideTrack.children(this.options.slide).detach(),t.$slideTrack.detach(),t.$list.detach(),t.$slider.append(t.$slides)),t.cleanUpRows(),t.$slider.removeClass("slick-slider"),t.$slider.removeClass("slick-initialized"),t.$slider.removeClass("slick-dotted"),t.unslicked=!0,e||t.$slider.trigger("destroy",[t])},e.prototype.disableTransition=function(i){var e=this,t={};t[e.transitionType]="",!1===e.options.fade?e.$slideTrack.css(t):e.$slides.eq(i).css(t)},e.prototype.fadeSlide=function(i,e){var t=this;!1===t.cssTransitions?(t.$slides.eq(i).css({zIndex:t.options.zIndex}),t.$slides.eq(i).animate({opacity:1},t.options.speed,t.options.easing,e)):(t.applyTransition(i),t.$slides.eq(i).css({opacity:1,zIndex:t.options.zIndex}),e&amp;&amp;setTimeout(function(){t.disableTransition(i),e.call()},t.options.speed))},e.prototype.fadeSlideOut=function(i){var e=this;!1===e.cssTransitions?e.$slides.eq(i).animate({opacity:0,zIndex:e.options.zIndex-2},e.options.speed,e.options.easing):(e.applyTransition(i),e.$slides.eq(i).css({opacity:0,zIndex:e.options.zIndex-2}))},e.prototype.filterSlides=e.prototype.slickFilter=function(i){var e=this;null!==i&amp;&amp;(e.$slidesCache=e.$slides,e.unload(),e.$slideTrack.children(this.options.slide).detach(),e.$slidesCache.filter(i).appendTo(e.$slideTrack),e.reinit())},e.prototype.focusHandler=function(){var e=this;e.$slider.off("focus.slick blur.slick").on("focus.slick blur.slick","*",function(t){t.stopImmediatePropagation();var o=i(this);setTimeout(function(){e.options.pauseOnFocus&amp;&amp;(e.focussed=o.is(":focus"),e.autoPlay())},0)})},e.prototype.getCurrent=e.prototype.slickCurrentSlide=function(){return this.currentSlide},e.prototype.getDotCount=function(){var i=this,e=0,t=0,o=0;if(!0===i.options.infinite)if(i.slideCount&lt;=i.options.slidesToShow)++o;else for(;e&lt;i.slideCount;)++o,e=t+i.options.slidesToScroll,t+=i.options.slidesToScroll&lt;=i.options.slidesToShow?i.options.slidesToScroll:i.options.slidesToShow;else if(!0===i.options.centerMode)o=i.slideCount;else if(i.options.asNavFor)for(;e&lt;i.slideCount;)++o,e=t+i.options.slidesToScroll,t+=i.options.slidesToScroll&lt;=i.options.slidesToShow?i.options.slidesToScroll:i.options.slidesToShow;else o=1+Math.ceil((i.slideCount-i.options.slidesToShow)/i.options.slidesToScroll);return o-1},e.prototype.getLeft=function(i){var e,t,o,s,n=this,r=0;return n.slideOffset=0,t=n.$slides.first().outerHeight(!0),!0===n.options.infinite?(n.slideCount&gt;n.options.slidesToShow&amp;&amp;(n.slideOffset=n.slideWidth*n.options.slidesToShow*-1,s=-1,!0===n.options.vertical&amp;&amp;!0===n.options.centerMode&amp;&amp;(2===n.options.slidesToShow?s=-1.5:1===n.options.slidesToShow&amp;&amp;(s=-2)),r=t*n.options.slidesToShow*s),n.slideCount%n.options.slidesToScroll!=0&amp;&amp;i+n.options.slidesToScroll&gt;n.slideCount&amp;&amp;n.slideCount&gt;n.options.slidesToShow&amp;&amp;(i&gt;n.slideCount?(n.slideOffset=(n.options.slidesToShow-(i-n.slideCount))*n.slideWidth*-1,r=(n.options.slidesToShow-(i-n.slideCount))*t*-1):(n.slideOffset=n.slideCount%n.options.slidesToScroll*n.slideWidth*-1,r=n.slideCount%n.options.slidesToScroll*t*-1))):i+n.options.slidesToShow&gt;n.slideCount&amp;&amp;(n.slideOffset=(i+n.options.slidesToShow-n.slideCount)*n.slideWidth,r=(i+n.options.slidesToShow-n.slideCount)*t),n.slideCount&lt;=n.options.slidesToShow&amp;&amp;(n.slideOffset=0,r=0),!0===n.options.centerMode&amp;&amp;n.slideCount&lt;=n.options.slidesToShow?n.slideOffset=n.slideWidth*Math.floor(n.options.slidesToShow)/2-n.slideWidth*n.slideCount/2:!0===n.options.centerMode&amp;&amp;!0===n.options.infinite?n.slideOffset+=n.slideWidth*Math.floor(n.options.slidesToShow/2)-n.slideWidth:!0===n.options.centerMode&amp;&amp;(n.slideOffset=0,n.slideOffset+=n.slideWidth*Math.floor(n.options.slidesToShow/2)),e=!1===n.options.vertical?i*n.slideWidth*-1+n.slideOffset:i*t*-1+r,!0===n.options.variableWidth&amp;&amp;(o=n.slideCount&lt;=n.options.slidesToShow||!1===n.options.infinite?n.$slideTrack.children(".slick-slide").eq(i):n.$slideTrack.children(".slick-slide").eq(i+n.options.slidesToShow),e=!0===n.options.rtl?o[0]?-1*(n.$slideTrack.width()-o[0].offsetLeft-o.width()):0:o[0]?-1*o[0].offsetLeft:0,!0===n.options.centerMode&amp;&amp;(o=n.slideCount&lt;=n.options.slidesToShow||!1===n.options.infinite?n.$slideTrack.children(".slick-slide").eq(i):n.$slideTrack.children(".slick-slide").eq(i+n.options.slidesToShow+1),e=!0===n.options.rtl?o[0]?-1*(n.$slideTrack.width()-o[0].offsetLeft-o.width()):0:o[0]?-1*o[0].offsetLeft:0,e+=(n.$list.width()-o.outerWidth())/2)),e},e.prototype.getOption=e.prototype.slickGetOption=function(i){return this.options[i]},e.prototype.getNavigableIndexes=function(){var i,e=this,t=0,o=0,s=[];for(!1===e.options.infinite?i=e.slideCount:(t=-1*e.options.slidesToScroll,o=-1*e.options.slidesToScroll,i=2*e.slideCount);t&lt;i;)s.push(t),t=o+e.options.slidesToScroll,o+=e.options.slidesToScroll&lt;=e.options.slidesToShow?e.options.slidesToScroll:e.options.slidesToShow;return s},e.prototype.getSlick=function(){return this},e.prototype.getSlideCount=function(){var e,t,o=this;return t=!0===o.options.centerMode?o.slideWidth*Math.floor(o.options.slidesToShow/2):0,!0===o.options.swipeToSlide?(o.$slideTrack.find(".slick-slide").each(function(s,n){if(n.offsetLeft-t+i(n).outerWidth()/2&gt;-1*o.swipeLeft)return e=n,!1}),Math.abs(i(e).attr("data-slick-index")-o.currentSlide)||1):o.options.slidesToScroll},e.prototype.goTo=e.prototype.slickGoTo=function(i,e){this.changeSlide({data:{message:"index",index:parseInt(i)}},e)},e.prototype.init=function(e){var t=this;i(t.$slider).hasClass("slick-initialized")||(i(t.$slider).addClass("slick-initialized"),t.buildRows(),t.buildOut(),t.setProps(),t.startLoad(),t.loadSlider(),t.initializeEvents(),t.updateArrows(),t.updateDots(),t.checkResponsive(!0),t.focusHandler()),e&amp;&amp;t.$slider.trigger("init",[t]),!0===t.options.accessibility&amp;&amp;t.initADA(),t.options.autoplay&amp;&amp;(t.paused=!1,t.autoPlay())},e.prototype.initADA=function(){var e=this,t=Math.ceil(e.slideCount/e.options.slidesToShow),o=e.getNavigableIndexes().filter(function(i){return i&gt;=0&amp;&amp;i&lt;e.slideCount});e.$slides.add(e.$slideTrack.find(".slick-cloned")).attr({"aria-hidden":"true",tabindex:"-1"}).find("a, input, button, select").attr({tabindex:"-1"}),null!==e.$dots&amp;&amp;(e.$slides.not(e.$slideTrack.find(".slick-cloned")).each(function(t){var s=o.indexOf(t);i(this).attr({role:"tabpanel",id:"slick-slide"+e.instanceUid+t,tabindex:-1}),-1!==s&amp;&amp;i(this).attr({"aria-describedby":"slick-slide-control"+e.instanceUid+s})}),e.$dots.attr("role","tablist").find("li").each(function(s){var n=o[s];i(this).attr({role:"presentation"}),i(this).find("button").first().attr({role:"tab",id:"slick-slide-control"+e.instanceUid+s,"aria-controls":"slick-slide"+e.instanceUid+n,"aria-label":s+1+" of "+t,"aria-selected":null,tabindex:"-1"})}).eq(e.currentSlide).find("button").attr({"aria-selected":"true",tabindex:"0"}).end());for(var s=e.currentSlide,n=s+e.options.slidesToShow;s&lt;n;s++)e.$slides.eq(s).attr("tabindex",0);e.activateADA()},e.prototype.initArrowEvents=function(){var i=this;!0===i.options.arrows&amp;&amp;i.slideCount&gt;i.options.slidesToShow&amp;&amp;(i.$prevArrow.off("click.slick").on("click.slick",{message:"previous"},i.changeSlide),i.$nextArrow.off("click.slick").on("click.slick",{message:"next"},i.changeSlide),!0===i.options.accessibility&amp;&amp;(i.$prevArrow.on("keydown.slick",i.keyHandler),i.$nextArrow.on("keydown.slick",i.keyHandler)))},e.prototype.initDotEvents=function(){var e=this;!0===e.options.dots&amp;&amp;(i("li",e.$dots).on("click.slick",{message:"index"},e.changeSlide),!0===e.options.accessibility&amp;&amp;e.$dots.on("keydown.slick",e.keyHandler)),!0===e.options.dots&amp;&amp;!0===e.options.pauseOnDotsHover&amp;&amp;i("li",e.$dots).on("mouseenter.slick",i.proxy(e.interrupt,e,!0)).on("mouseleave.slick",i.proxy(e.interrupt,e,!1))},e.prototype.initSlideEvents=function(){var e=this;e.options.pauseOnHover&amp;&amp;(e.$list.on("mouseenter.slick",i.proxy(e.interrupt,e,!0)),e.$list.on("mouseleave.slick",i.proxy(e.interrupt,e,!1)))},e.prototype.initializeEvents=function(){var e=this;e.initArrowEvents(),e.initDotEvents(),e.initSlideEvents(),e.$list.on("touchstart.slick mousedown.slick",{action:"start"},e.swipeHandler),e.$list.on("touchmove.slick mousemove.slick",{action:"move"},e.swipeHandler),e.$list.on("touchend.slick mouseup.slick",{action:"end"},e.swipeHandler),e.$list.on("touchcancel.slick mouseleave.slick",{action:"end"},e.swipeHandler),e.$list.on("click.slick",e.clickHandler),i(document).on(e.visibilityChange,i.proxy(e.visibility,e)),!0===e.options.accessibility&amp;&amp;e.$list.on("keydown.slick",e.keyHandler),!0===e.options.focusOnSelect&amp;&amp;i(e.$slideTrack).children().on("click.slick",e.selectHandler),i(window).on("orientationchange.slick.slick-"+e.instanceUid,i.proxy(e.orientationChange,e)),i(window).on("resize.slick.slick-"+e.instanceUid,i.proxy(e.resize,e)),i("[draggable!=true]",e.$slideTrack).on("dragstart",e.preventDefault),i(window).on("load.slick.slick-"+e.instanceUid,e.setPosition),i(e.setPosition)},e.prototype.initUI=function(){var i=this;!0===i.options.arrows&amp;&amp;i.slideCount&gt;i.options.slidesToShow&amp;&amp;(i.$prevArrow.show(),i.$nextArrow.show()),!0===i.options.dots&amp;&amp;i.slideCount&gt;i.options.slidesToShow&amp;&amp;i.$dots.show()},e.prototype.keyHandler=function(i){var e=this;i.target.tagName.match("TEXTAREA|INPUT|SELECT")||(37===i.keyCode&amp;&amp;!0===e.options.accessibility?e.changeSlide({data:{message:!0===e.options.rtl?"next":"previous"}}):39===i.keyCode&amp;&amp;!0===e.options.accessibility&amp;&amp;e.changeSlide({data:{message:!0===e.options.rtl?"previous":"next"}}))},e.prototype.lazyLoad=function(){function e(e){i("img[data-lazy]",e).each(function(){var e=i(this),t=i(this).attr("data-lazy"),o=i(this).attr("data-srcset"),s=i(this).attr("data-sizes")||n.$slider.attr("data-sizes"),r=document.createElement("img");r.onload=function(){e.animate({opacity:0},100,function(){o&amp;&amp;(e.attr("srcset",o),s&amp;&amp;e.attr("sizes",s)),e.attr("src",t).animate({opacity:1},200,function(){e.removeAttr("data-lazy data-srcset data-sizes").removeClass("slick-loading")}),n.$slider.trigger("lazyLoaded",[n,e,t])})},r.onerror=function(){e.removeAttr("data-lazy").removeClass("slick-loading").addClass("slick-lazyload-error"),n.$slider.trigger("lazyLoadError",[n,e,t])},r.src=t})}var t,o,s,n=this;if(!0===n.options.centerMode?!0===n.options.infinite?s=(o=n.currentSlide+(n.options.slidesToShow/2+1))+n.options.slidesToShow+2:(o=Math.max(0,n.currentSlide-(n.options.slidesToShow/2+1)),s=n.options.slidesToShow/2+1+2+n.currentSlide):(o=n.options.infinite?n.options.slidesToShow+n.currentSlide:n.currentSlide,s=Math.ceil(o+n.options.slidesToShow),!0===n.options.fade&amp;&amp;(o&gt;0&amp;&amp;o--,s&lt;=n.slideCount&amp;&amp;s++)),t=n.$slider.find(".slick-slide").slice(o,s),"anticipated"===n.options.lazyLoad)for(var r=o-1,l=s,d=n.$slider.find(".slick-slide"),a=0;a&lt;n.options.slidesToScroll;a++)r&lt;0&amp;&amp;(r=n.slideCount-1),t=(t=t.add(d.eq(r))).add(d.eq(l)),r--,l++;e(t),n.slideCount&lt;=n.options.slidesToShow?e(n.$slider.find(".slick-slide")):n.currentSlide&gt;=n.slideCount-n.options.slidesToShow?e(n.$slider.find(".slick-cloned").slice(0,n.options.slidesToShow)):0===n.currentSlide&amp;&amp;e(n.$slider.find(".slick-cloned").slice(-1*n.options.slidesToShow))},e.prototype.loadSlider=function(){var i=this;i.setPosition(),i.$slideTrack.css({opacity:1}),i.$slider.removeClass("slick-loading"),i.initUI(),"progressive"===i.options.lazyLoad&amp;&amp;i.progressiveLazyLoad()},e.prototype.next=e.prototype.slickNext=function(){this.changeSlide({data:{message:"next"}})},e.prototype.orientationChange=function(){var i=this;i.checkResponsive(),i.setPosition()},e.prototype.pause=e.prototype.slickPause=function(){var i=this;i.autoPlayClear(),i.paused=!0},e.prototype.play=e.prototype.slickPlay=function(){var i=this;i.autoPlay(),i.options.autoplay=!0,i.paused=!1,i.focussed=!1,i.interrupted=!1},e.prototype.postSlide=function(e){var t=this;t.unslicked||(t.$slider.trigger("afterChange",[t,e]),t.animating=!1,t.slideCount&gt;t.options.slidesToShow&amp;&amp;t.setPosition(),t.swipeLeft=null,t.options.autoplay&amp;&amp;t.autoPlay(),!0===t.options.accessibility&amp;&amp;(t.initADA(),t.options.focusOnChange&amp;&amp;i(t.$slides.get(t.currentSlide)).attr("tabindex",0).focus()))},e.prototype.prev=e.prototype.slickPrev=function(){this.changeSlide({data:{message:"previous"}})},e.prototype.preventDefault=function(i){i.preventDefault()},e.prototype.progressiveLazyLoad=function(e){e=e||1;var t,o,s,n,r,l=this,d=i("img[data-lazy]",l.$slider);d.length?(t=d.first(),o=t.attr("data-lazy"),s=t.attr("data-srcset"),n=t.attr("data-sizes")||l.$slider.attr("data-sizes"),(r=document.createElement("img")).onload=function(){s&amp;&amp;(t.attr("srcset",s),n&amp;&amp;t.attr("sizes",n)),t.attr("src",o).removeAttr("data-lazy data-srcset data-sizes").removeClass("slick-loading"),!0===l.options.adaptiveHeight&amp;&amp;l.setPosition(),l.$slider.trigger("lazyLoaded",[l,t,o]),l.progressiveLazyLoad()},r.onerror=function(){e&lt;3?setTimeout(function(){l.progressiveLazyLoad(e+1)},500):(t.removeAttr("data-lazy").removeClass("slick-loading").addClass("slick-lazyload-error"),l.$slider.trigger("lazyLoadError",[l,t,o]),l.progressiveLazyLoad())},r.src=o):l.$slider.trigger("allImagesLoaded",[l])},e.prototype.refresh=function(e){var t,o,s=this;o=s.slideCount-s.options.slidesToShow,!s.options.infinite&amp;&amp;s.currentSlide&gt;o&amp;&amp;(s.currentSlide=o),s.slideCount&lt;=s.options.slidesToShow&amp;&amp;(s.currentSlide=0),t=s.currentSlide,s.destroy(!0),i.extend(s,s.initials,{currentSlide:t}),s.init(),e||s.changeSlide({data:{message:"index",index:t}},!1)},e.prototype.registerBreakpoints=function(){var e,t,o,s=this,n=s.options.responsive||null;if("array"===i.type(n)&amp;&amp;n.length){s.respondTo=s.options.respondTo||"window";for(e in n)if(o=s.breakpoints.length-1,n.hasOwnProperty(e)){for(t=n[e].breakpoint;o&gt;=0;)s.breakpoints[o]&amp;&amp;s.breakpoints[o]===t&amp;&amp;s.breakpoints.splice(o,1),o--;s.breakpoints.push(t),s.breakpointSettings[t]=n[e].settings}s.breakpoints.sort(function(i,e){return s.options.mobileFirst?i-e:e-i})}},e.prototype.reinit=function(){var e=this;e.$slides=e.$slideTrack.children(e.options.slide).addClass("slick-slide"),e.slideCount=e.$slides.length,e.currentSlide&gt;=e.slideCount&amp;&amp;0!==e.currentSlide&amp;&amp;(e.currentSlide=e.currentSlide-e.options.slidesToScroll),e.slideCount&lt;=e.options.slidesToShow&amp;&amp;(e.currentSlide=0),e.registerBreakpoints(),e.setProps(),e.setupInfinite(),e.buildArrows(),e.updateArrows(),e.initArrowEvents(),e.buildDots(),e.updateDots(),e.initDotEvents(),e.cleanUpSlideEvents(),e.initSlideEvents(),e.checkResponsive(!1,!0),!0===e.options.focusOnSelect&amp;&amp;i(e.$slideTrack).children().on("click.slick",e.selectHandler),e.setSlideClasses("number"==typeof e.currentSlide?e.currentSlide:0),e.setPosition(),e.focusHandler(),e.paused=!e.options.autoplay,e.autoPlay(),e.$slider.trigger("reInit",[e])},e.prototype.resize=function(){var e=this;i(window).width()!==e.windowWidth&amp;&amp;(clearTimeout(e.windowDelay),e.windowDelay=window.setTimeout(function(){e.windowWidth=i(window).width(),e.checkResponsive(),e.unslicked||e.setPosition()},50))},e.prototype.removeSlide=e.prototype.slickRemove=function(i,e,t){var o=this;if(i="boolean"==typeof i?!0===(e=i)?0:o.slideCount-1:!0===e?--i:i,o.slideCount&lt;1||i&lt;0||i&gt;o.slideCount-1)return!1;o.unload(),!0===t?o.$slideTrack.children().remove():o.$slideTrack.children(this.options.slide).eq(i).remove(),o.$slides=o.$slideTrack.children(this.options.slide),o.$slideTrack.children(this.options.slide).detach(),o.$slideTrack.append(o.$slides),o.$slidesCache=o.$slides,o.reinit()},e.prototype.setCSS=function(i){var e,t,o=this,s={};!0===o.options.rtl&amp;&amp;(i=-i),e="left"==o.positionProp?Math.ceil(i)+"px":"0px",t="top"==o.positionProp?Math.ceil(i)+"px":"0px",s[o.positionProp]=i,!1===o.transformsEnabled?o.$slideTrack.css(s):(s={},!1===o.cssTransitions?(s[o.animType]="translate("+e+", "+t+")",o.$slideTrack.css(s)):(s[o.animType]="translate3d("+e+", "+t+", 0px)",o.$slideTrack.css(s)))},e.prototype.setDimensions=function(){var i=this;!1===i.options.vertical?!0===i.options.centerMode&amp;&amp;i.$list.css({padding:"0px "+i.options.centerPadding}):(i.$list.height(i.$slides.first().outerHeight(!0)*i.options.slidesToShow),!0===i.options.centerMode&amp;&amp;i.$list.css({padding:i.options.centerPadding+" 0px"})),i.listWidth=i.$list.width(),i.listHeight=i.$list.height(),!1===i.options.vertical&amp;&amp;!1===i.options.variableWidth?(i.slideWidth=Math.ceil(i.listWidth/i.options.slidesToShow),i.$slideTrack.width(Math.ceil(i.slideWidth*i.$slideTrack.children(".slick-slide").length))):!0===i.options.variableWidth?i.$slideTrack.width(5e3*i.slideCount):(i.slideWidth=Math.ceil(i.listWidth),i.$slideTrack.height(Math.ceil(i.$slides.first().outerHeight(!0)*i.$slideTrack.children(".slick-slide").length)));var e=i.$slides.first().outerWidth(!0)-i.$slides.first().width();!1===i.options.variableWidth&amp;&amp;i.$slideTrack.children(".slick-slide").width(i.slideWidth-e)},e.prototype.setFade=function(){var e,t=this;t.$slides.each(function(o,s){e=t.slideWidth*o*-1,!0===t.options.rtl?i(s).css({position:"relative",right:e,top:0,zIndex:t.options.zIndex-2,opacity:0}):i(s).css({position:"relative",left:e,top:0,zIndex:t.options.zIndex-2,opacity:0})}),t.$slides.eq(t.currentSlide).css({zIndex:t.options.zIndex-1,opacity:1})},e.prototype.setHeight=function(){var i=this;if(1===i.options.slidesToShow&amp;&amp;!0===i.options.adaptiveHeight&amp;&amp;!1===i.options.vertical){var e=i.$slides.eq(i.currentSlide).outerHeight(!0);i.$list.css("height",e)}},e.prototype.setOption=e.prototype.slickSetOption=function(){var e,t,o,s,n,r=this,l=!1;if("object"===i.type(arguments[0])?(o=arguments[0],l=arguments[1],n="multiple"):"string"===i.type(arguments[0])&amp;&amp;(o=arguments[0],s=arguments[1],l=arguments[2],"responsive"===arguments[0]&amp;&amp;"array"===i.type(arguments[1])?n="responsive":void 0!==arguments[1]&amp;&amp;(n="single")),"single"===n)r.options[o]=s;else if("multiple"===n)i.each(o,function(i,e){r.options[i]=e});else if("responsive"===n)for(t in s)if("array"!==i.type(r.options.responsive))r.options.responsive=[s[t]];else{for(e=r.options.responsive.length-1;e&gt;=0;)r.options.responsive[e].breakpoint===s[t].breakpoint&amp;&amp;r.options.responsive.splice(e,1),e--;r.options.responsive.push(s[t])}l&amp;&amp;(r.unload(),r.reinit())},e.prototype.setPosition=function(){var i=this;i.setDimensions(),i.setHeight(),!1===i.options.fade?i.setCSS(i.getLeft(i.currentSlide)):i.setFade(),i.$slider.trigger("setPosition",[i])},e.prototype.setProps=function(){var i=this,e=document.body.style;i.positionProp=!0===i.options.vertical?"top":"left","top"===i.positionProp?i.$slider.addClass("slick-vertical"):i.$slider.removeClass("slick-vertical"),void 0===e.WebkitTransition&amp;&amp;void 0===e.MozTransition&amp;&amp;void 0===e.msTransition||!0===i.options.useCSS&amp;&amp;(i.cssTransitions=!0),i.options.fade&amp;&amp;("number"==typeof i.options.zIndex?i.options.zIndex&lt;3&amp;&amp;(i.options.zIndex=3):i.options.zIndex=i.defaults.zIndex),void 0!==e.OTransform&amp;&amp;(i.animType="OTransform",i.transformType="-o-transform",i.transitionType="OTransition",void 0===e.perspectiveProperty&amp;&amp;void 0===e.webkitPerspective&amp;&amp;(i.animType=!1)),void 0!==e.MozTransform&amp;&amp;(i.animType="MozTransform",i.transformType="-moz-transform",i.transitionType="MozTransition",void 0===e.perspectiveProperty&amp;&amp;void 0===e.MozPerspective&amp;&amp;(i.animType=!1)),void 0!==e.webkitTransform&amp;&amp;(i.animType="webkitTransform",i.transformType="-webkit-transform",i.transitionType="webkitTransition",void 0===e.perspectiveProperty&amp;&amp;void 0===e.webkitPerspective&amp;&amp;(i.animType=!1)),void 0!==e.msTransform&amp;&amp;(i.animType="msTransform",i.transformType="-ms-transform",i.transitionType="msTransition",void 0===e.msTransform&amp;&amp;(i.animType=!1)),void 0!==e.transform&amp;&amp;!1!==i.animType&amp;&amp;(i.animType="transform",i.transformType="transform",i.transitionType="transition"),i.transformsEnabled=i.options.useTransform&amp;&amp;null!==i.animType&amp;&amp;!1!==i.animType},e.prototype.setSlideClasses=function(i){var e,t,o,s,n=this;if(t=n.$slider.find(".slick-slide").removeClass("slick-active slick-center slick-current").attr("aria-hidden","true"),n.$slides.eq(i).addClass("slick-current"),!0===n.options.centerMode){var r=n.options.slidesToShow%2==0?1:0;e=Math.floor(n.options.slidesToShow/2),!0===n.options.infinite&amp;&amp;(i&gt;=e&amp;&amp;i&lt;=n.slideCount-1-e?n.$slides.slice(i-e+r,i+e+1).addClass("slick-active").attr("aria-hidden","false"):(o=n.options.slidesToShow+i,t.slice(o-e+1+r,o+e+2).addClass("slick-active").attr("aria-hidden","false")),0===i?t.eq(t.length-1-n.options.slidesToShow).addClass("slick-center"):i===n.slideCount-1&amp;&amp;t.eq(n.options.slidesToShow).addClass("slick-center")),n.$slides.eq(i).addClass("slick-center")}else i&gt;=0&amp;&amp;i&lt;=n.slideCount-n.options.slidesToShow?n.$slides.slice(i,i+n.options.slidesToShow).addClass("slick-active").attr("aria-hidden","false"):t.length&lt;=n.options.slidesToShow?t.addClass("slick-active").attr("aria-hidden","false"):(s=n.slideCount%n.options.slidesToShow,o=!0===n.options.infinite?n.options.slidesToShow+i:i,n.options.slidesToShow==n.options.slidesToScroll&amp;&amp;n.slideCount-i&lt;n.options.slidesToShow?t.slice(o-(n.options.slidesToShow-s),o+s).addClass("slick-active").attr("aria-hidden","false"):t.slice(o,o+n.options.slidesToShow).addClass("slick-active").attr("aria-hidden","false"));"ondemand"!==n.options.lazyLoad&amp;&amp;"anticipated"!==n.options.lazyLoad||n.lazyLoad()},e.prototype.setupInfinite=function(){var e,t,o,s=this;if(!0===s.options.fade&amp;&amp;(s.options.centerMode=!1),!0===s.options.infinite&amp;&amp;!1===s.options.fade&amp;&amp;(t=null,s.slideCount&gt;s.options.slidesToShow)){for(o=!0===s.options.centerMode?s.options.slidesToShow+1:s.options.slidesToShow,e=s.slideCount;e&gt;s.slideCount-o;e-=1)t=e-1,i(s.$slides[t]).clone(!0).attr("id","").attr("data-slick-index",t-s.slideCount).prependTo(s.$slideTrack).addClass("slick-cloned");for(e=0;e&lt;o+s.slideCount;e+=1)t=e,i(s.$slides[t]).clone(!0).attr("id","").attr("data-slick-index",t+s.slideCount).appendTo(s.$slideTrack).addClass("slick-cloned");s.$slideTrack.find(".slick-cloned").find("[id]").each(function(){i(this).attr("id","")})}},e.prototype.interrupt=function(i){var e=this;i||e.autoPlay(),e.interrupted=i},e.prototype.selectHandler=function(e){var t=this,o=i(e.target).is(".slick-slide")?i(e.target):i(e.target).parents(".slick-slide"),s=parseInt(o.attr("data-slick-index"));s||(s=0),t.slideCount&lt;=t.options.slidesToShow?t.slideHandler(s,!1,!0):t.slideHandler(s)},e.prototype.slideHandler=function(i,e,t){var o,s,n,r,l,d=null,a=this;if(e=e||!1,!(!0===a.animating&amp;&amp;!0===a.options.waitForAnimate||!0===a.options.fade&amp;&amp;a.currentSlide===i))if(!1===e&amp;&amp;a.asNavFor(i),o=i,d=a.getLeft(o),r=a.getLeft(a.currentSlide),a.currentLeft=null===a.swipeLeft?r:a.swipeLeft,!1===a.options.infinite&amp;&amp;!1===a.options.centerMode&amp;&amp;(i&lt;0||i&gt;a.getDotCount()*a.options.slidesToScroll))!1===a.options.fade&amp;&amp;(o=a.currentSlide,!0!==t?a.animateSlide(r,function(){a.postSlide(o)}):a.postSlide(o));else if(!1===a.options.infinite&amp;&amp;!0===a.options.centerMode&amp;&amp;(i&lt;0||i&gt;a.slideCount-a.options.slidesToScroll))!1===a.options.fade&amp;&amp;(o=a.currentSlide,!0!==t?a.animateSlide(r,function(){a.postSlide(o)}):a.postSlide(o));else{if(a.options.autoplay&amp;&amp;clearInterval(a.autoPlayTimer),s=o&lt;0?a.slideCount%a.options.slidesToScroll!=0?a.slideCount-a.slideCount%a.options.slidesToScroll:a.slideCount+o:o&gt;=a.slideCount?a.slideCount%a.options.slidesToScroll!=0?0:o-a.slideCount:o,a.animating=!0,a.$slider.trigger("beforeChange",[a,a.currentSlide,s]),n=a.currentSlide,a.currentSlide=s,a.setSlideClasses(a.currentSlide),a.options.asNavFor&amp;&amp;(l=(l=a.getNavTarget()).slick("getSlick")).slideCount&lt;=l.options.slidesToShow&amp;&amp;l.setSlideClasses(a.currentSlide),a.updateDots(),a.updateArrows(),!0===a.options.fade)return!0!==t?(a.fadeSlideOut(n),a.fadeSlide(s,function(){a.postSlide(s)})):a.postSlide(s),void a.animateHeight();!0!==t?a.animateSlide(d,function(){a.postSlide(s)}):a.postSlide(s)}},e.prototype.startLoad=function(){var i=this;!0===i.options.arrows&amp;&amp;i.slideCount&gt;i.options.slidesToShow&amp;&amp;(i.$prevArrow.hide(),i.$nextArrow.hide()),!0===i.options.dots&amp;&amp;i.slideCount&gt;i.options.slidesToShow&amp;&amp;i.$dots.hide(),i.$slider.addClass("slick-loading")},e.prototype.swipeDirection=function(){var i,e,t,o,s=this;return i=s.touchObject.startX-s.touchObject.curX,e=s.touchObject.startY-s.touchObject.curY,t=Math.atan2(e,i),(o=Math.round(180*t/Math.PI))&lt;0&amp;&amp;(o=360-Math.abs(o)),o&lt;=45&amp;&amp;o&gt;=0?!1===s.options.rtl?"left":"right":o&lt;=360&amp;&amp;o&gt;=315?!1===s.options.rtl?"left":"right":o&gt;=135&amp;&amp;o&lt;=225?!1===s.options.rtl?"right":"left":!0===s.options.verticalSwiping?o&gt;=35&amp;&amp;o&lt;=135?"down":"up":"vertical"},e.prototype.swipeEnd=function(i){var e,t,o=this;if(o.dragging=!1,o.swiping=!1,o.scrolling)return o.scrolling=!1,!1;if(o.interrupted=!1,o.shouldClick=!(o.touchObject.swipeLength&gt;10),void 0===o.touchObject.curX)return!1;if(!0===o.touchObject.edgeHit&amp;&amp;o.$slider.trigger("edge",[o,o.swipeDirection()]),o.touchObject.swipeLength&gt;=o.touchObject.minSwipe){switch(t=o.swipeDirection()){case"left":case"down":e=o.options.swipeToSlide?o.checkNavigable(o.currentSlide+o.getSlideCount()):o.currentSlide+o.getSlideCount(),o.currentDirection=0;break;case"right":case"up":e=o.options.swipeToSlide?o.checkNavigable(o.currentSlide-o.getSlideCount()):o.currentSlide-o.getSlideCount(),o.currentDirection=1}"vertical"!=t&amp;&amp;(o.slideHandler(e),o.touchObject={},o.$slider.trigger("swipe",[o,t]))}else o.touchObject.startX!==o.touchObject.curX&amp;&amp;(o.slideHandler(o.currentSlide),o.touchObject={})},e.prototype.swipeHandler=function(i){var e=this;if(!(!1===e.options.swipe||"ontouchend"in document&amp;&amp;!1===e.options.swipe||!1===e.options.draggable&amp;&amp;-1!==i.type.indexOf("mouse")))switch(e.touchObject.fingerCount=i.originalEvent&amp;&amp;void 0!==i.originalEvent.touches?i.originalEvent.touches.length:1,e.touchObject.minSwipe=e.listWidth/e.options.touchThreshold,!0===e.options.verticalSwiping&amp;&amp;(e.touchObject.minSwipe=e.listHeight/e.options.touchThreshold),i.data.action){case"start":e.swipeStart(i);break;case"move":e.swipeMove(i);break;case"end":e.swipeEnd(i)}},e.prototype.swipeMove=function(i){var e,t,o,s,n,r,l=this;return n=void 0!==i.originalEvent?i.originalEvent.touches:null,!(!l.dragging||l.scrolling||n&amp;&amp;1!==n.length)&amp;&amp;(e=l.getLeft(l.currentSlide),l.touchObject.curX=void 0!==n?n[0].pageX:i.clientX,l.touchObject.curY=void 0!==n?n[0].pageY:i.clientY,l.touchObject.swipeLength=Math.round(Math.sqrt(Math.pow(l.touchObject.curX-l.touchObject.startX,2))),r=Math.round(Math.sqrt(Math.pow(l.touchObject.curY-l.touchObject.startY,2))),!l.options.verticalSwiping&amp;&amp;!l.swiping&amp;&amp;r&gt;4?(l.scrolling=!0,!1):(!0===l.options.verticalSwiping&amp;&amp;(l.touchObject.swipeLength=r),t=l.swipeDirection(),void 0!==i.originalEvent&amp;&amp;l.touchObject.swipeLength&gt;4&amp;&amp;(l.swiping=!0,i.preventDefault()),s=(!1===l.options.rtl?1:-1)*(l.touchObject.curX&gt;l.touchObject.startX?1:-1),!0===l.options.verticalSwiping&amp;&amp;(s=l.touchObject.curY&gt;l.touchObject.startY?1:-1),o=l.touchObject.swipeLength,l.touchObject.edgeHit=!1,!1===l.options.infinite&amp;&amp;(0===l.currentSlide&amp;&amp;"right"===t||l.currentSlide&gt;=l.getDotCount()&amp;&amp;"left"===t)&amp;&amp;(o=l.touchObject.swipeLength*l.options.edgeFriction,l.touchObject.edgeHit=!0),!1===l.options.vertical?l.swipeLeft=e+o*s:l.swipeLeft=e+o*(l.$list.height()/l.listWidth)*s,!0===l.options.verticalSwiping&amp;&amp;(l.swipeLeft=e+o*s),!0!==l.options.fade&amp;&amp;!1!==l.options.touchMove&amp;&amp;(!0===l.animating?(l.swipeLeft=null,!1):void l.setCSS(l.swipeLeft))))},e.prototype.swipeStart=function(i){var e,t=this;if(t.interrupted=!0,1!==t.touchObject.fingerCount||t.slideCount&lt;=t.options.slidesToShow)return t.touchObject={},!1;void 0!==i.originalEvent&amp;&amp;void 0!==i.originalEvent.touches&amp;&amp;(e=i.originalEvent.touches[0]),t.touchObject.startX=t.touchObject.curX=void 0!==e?e.pageX:i.clientX,t.touchObject.startY=t.touchObject.curY=void 0!==e?e.pageY:i.clientY,t.dragging=!0},e.prototype.unfilterSlides=e.prototype.slickUnfilter=function(){var i=this;null!==i.$slidesCache&amp;&amp;(i.unload(),i.$slideTrack.children(this.options.slide).detach(),i.$slidesCache.appendTo(i.$slideTrack),i.reinit())},e.prototype.unload=function(){var e=this;i(".slick-cloned",e.$slider).remove(),e.$dots&amp;&amp;e.$dots.remove(),e.$prevArrow&amp;&amp;e.htmlExpr.test(e.options.prevArrow)&amp;&amp;e.$prevArrow.remove(),e.$nextArrow&amp;&amp;e.htmlExpr.test(e.options.nextArrow)&amp;&amp;e.$nextArrow.remove(),e.$slides.removeClass("slick-slide slick-active slick-visible slick-current").attr("aria-hidden","true").css("width","")},e.prototype.unslick=function(i){var e=this;e.$slider.trigger("unslick",[e,i]),e.destroy()},e.prototype.updateArrows=function(){var i=this;Math.floor(i.options.slidesToShow/2),!0===i.options.arrows&amp;&amp;i.slideCount&gt;i.options.slidesToShow&amp;&amp;!i.options.infinite&amp;&amp;(i.$prevArrow.removeClass("slick-disabled").attr("aria-disabled","false"),i.$nextArrow.removeClass("slick-disabled").attr("aria-disabled","false"),0===i.currentSlide?(i.$prevArrow.addClass("slick-disabled").attr("aria-disabled","true"),i.$nextArrow.removeClass("slick-disabled").attr("aria-disabled","false")):i.currentSlide&gt;=i.slideCount-i.options.slidesToShow&amp;&amp;!1===i.options.centerMode?(i.$nextArrow.addClass("slick-disabled").attr("aria-disabled","true"),i.$prevArrow.removeClass("slick-disabled").attr("aria-disabled","false")):i.currentSlide&gt;=i.slideCount-1&amp;&amp;!0===i.options.centerMode&amp;&amp;(i.$nextArrow.addClass("slick-disabled").attr("aria-disabled","true"),i.$prevArrow.removeClass("slick-disabled").attr("aria-disabled","false")))},e.prototype.updateDots=function(){var i=this;null!==i.$dots&amp;&amp;(i.$dots.find("li").removeClass("slick-active").end(),i.$dots.find("li").eq(Math.floor(i.currentSlide/i.options.slidesToScroll)).addClass("slick-active"))},e.prototype.visibility=function(){var i=this;i.options.autoplay&amp;&amp;(document[i.hidden]?i.interrupted=!0:i.interrupted=!1)},i.fn.slick=function(){var i,t,o=this,s=arguments[0],n=Array.prototype.slice.call(arguments,1),r=o.length;for(i=0;i&lt;r;i++)if("object"==typeof s||void 0===s?o[i].slick=new e(o[i],s):t=o[i].slick[s].apply(o[i].slick,n),void 0!==t)return t;return o}});"use strict";function cmplz_create_element(e,t){e=document.createElement(e);return e.innerHtml=t,e}function cmplz_add_event(e,t,c){document.addEventListener(e,e=&gt;{e.target.closest(t)&amp;&amp;c(e)})}function cmplz_is_hidden(e){return null===e.offsetParent}function cmplz_html_decode(e){return(new DOMParser).parseFromString(e,"text/html").documentElement.textContent}function cmplzLoadConsentAreaContent(e,i){document.querySelectorAll(".cmplz-consent-area.cmplz-placeholder").forEach(t=&gt;{let c=t.getAttribute("data-category"),n=t.getAttribute("data-service");var o=t.getAttribute("data-post_id"),a=t.getAttribute("data-block_id");if(e===c||i===n){let e=new XMLHttpRequest;e.open("GET",complianz.url+"consent-area/"+o+"/"+a,!0),e.setRequestHeader("Content-type","application/json"),e.send(),t.classList.remove("cmplz-placeholder"),e.onload=function(){t.innerHTML=JSON.parse(e.response),t.querySelectorAll("script").forEach(e=&gt;{cmplz_run_script(e.innerHTML,c,n,"inline",e)})}}})}document.querySelectorAll(".cmplz-consent-area.cmplz-placeholder").forEach(e=&gt;{e.addEventListener("click",e=&gt;{let t=e.target;(t=t.classList.contains("cmplz-consent-area")?t:e.target.closest(".cmplz-consent-area.cmplz-placeholder"))&amp;&amp;(cmplz_set_service_consent(e=t.getAttribute("data-service"),!0),cmplzLoadConsentAreaContent(!1,e),cmplz_enable_category(null,e),cmplz_set_banner_status("dismissed"))}),document.addEventListener("cmplz_enable_category",function(e){cmplzLoadConsentAreaContent(e.detail.category,e.detail.service)})}),document.addEventListener("cmplz_manage_consent_container_loaded",function(e){var t,c=window.location.href;-1!=c.indexOf("#")&amp;&amp;(t=-1!=c.lastIndexOf("?")?c.lastIndexOf("?"):void 0,c=c.substring(c.indexOf("#")+1,t),t=document.getElementById(c))&amp;&amp;(c=t.getBoundingClientRect().top+window.pageYOffset-200,window.scrollTo({top:c,behavior:"smooth"}))}),complianz.locale=complianz.locale+"&amp;token="+Math.random().toString(36).replace(/[^a-z]+/g,"").substr(0,5),function(){function e(e,t){t=t||{bubbles:!1,cancelable:!1,detail:void 0};var c=document.createEvent("CustomEvent");return c.initCustomEvent(e,t.bubbles,t.cancelable,t.detail),c}"function"!=typeof window.CustomEvent&amp;&amp;(e.prototype=window.Event.prototype,window.CustomEvent=e)}();var cmplz_banner,cmplz_manage_consent_button,cmplzResizeTimer,cmplz_banner_container=document.getElementById("cmplz-cookiebanner-container"),cmplz_waiting_inline_scripts=[],cmplz_waiting_scripts=[],cmplz_fired_scripts=[],cmplz_placeholder_class_index=0,cmplz_all_scripts_hook_fired=!1,cmplz_consent_stored_once=!1,cmplz_fired_category_events=["functional"],cmplz_fired_service_events=[],cmplz_categories=["functional","preferences","statistics","marketing"];window.cmplz_get_cookie=function(t){if("undefined"!=typeof document){t=complianz.prefix+t;var c=document.cookie.split(";");for(let e=0;e&lt;c.length;e++){var n=c[e].trim();if(n.startsWith(t+"="))return n.substring(t.length+1)}}return""},window.cmplz_set_cookie=function(e,t,c){var n,o,a,i;"undefined"!=typeof document&amp;&amp;(c=void 0===c||c,n="https:"===window.location.protocol?";secure":"",(o=new Date).setTime(o.getTime()+24*complianz.cookie_expiry*60*60*1e3),o=";expires="+o.toGMTString(),a=0&lt;(a=cmplz_get_cookie_domain()).length?";domain="+a:"",c=c?complianz.prefix:"",i=cmplz_get_cookie_path(),document.cookie=""+c+e+`=${t};SameSite=Lax${n}${o}${a};path=`+i)},window.cmplz_in_array=function(e,t){return t.includes(e)},window.cmplz_highest_accepted_category=function(){var t=cmplz_accepted_categories(),c=["marketing","statistics","preferences"];for(let e=0;e&lt;c.length;e++)if(cmplz_in_array(c[e],t))return c[e];return"functional"};const cmplz_set_category_as_body_class=()=&gt;{const c=document.body.classList;for(let e=c.length-1;0&lt;=e;e--)c[e].startsWith("cmplz-")&amp;&amp;"cmplz-document"!==c[e]&amp;&amp;c.remove(c[e]);var e=cmplz_accepted_categories(),e=(Object.values(e).forEach(e=&gt;{"string"==typeof e&amp;&amp;c.add("cmplz-"+e)}),cmplz_get_all_service_consents()),e=(Object.entries(e).forEach(([e,t])=&gt;{t&amp;&amp;c.add("cmplz-"+e)}),c.add("cmplz-"+complianz.region,"cmplz-"+complianz.consenttype),new CustomEvent("cmplz_set_category_as_bodyclass"));document.dispatchEvent(e)},cmplz_append_css=e=&gt;{var t=document.head||document.getElementsByTagName("head")[0],c=document.createElement("style");c.setAttribute("type","text/css"),c.appendChild(document.createTextNode(e)),t.appendChild(c)},cmplz_load_css=e=&gt;{var t=document.head||document.getElementsByTagName("head")[0],c=document.createElement("link");c.rel="stylesheet",c.type="text/css",c.href=e,t.appendChild(c)};function cmplz_run_script(t,c,n,e,o){var a=document.createElement("script");if("inline"!==e?a.src=t:("string"!=typeof t&amp;&amp;(t=t.innerHTML),a.innerHTML=[t,"cmplzScriptLoaded();"].join("\n")),!cmplz_in_array(t,cmplz_fired_scripts)){cmplzCopyAttributes(o,a);try{"inline"!==e?a.onload=function(){cmplz_run_after_all_scripts(c,n),cmplz_maybe_run_waiting_scripts(t,c,n,o)}:window.cmplzScriptLoaded=function(){cmplz_run_after_all_scripts(c,n),cmplz_maybe_run_waiting_scripts(t,c,n,o)},document.head.appendChild(a)}catch(e){throw cmplz_run_after_all_scripts(c,n),"Something went wrong "+e+" while loading "+t}}}function cmplz_maybe_run_waiting_scripts(e,t,c,n){var o=cmplz_get_waiting_script(cmplz_waiting_scripts,e),o=(o&amp;&amp;cmplz_run_script(o,t,c,"src",n),cmplz_get_waiting_script(cmplz_waiting_inline_scripts,e));o&amp;&amp;cmplz_run_script(o,t,c,"inline",n)}const cmplzLazyLoader=()=&gt;{var e=document.querySelectorAll(".cmplz-blocked-content-container");const t=new IntersectionObserver((e,n)=&gt;{e.forEach(e=&gt;{var t,c;e.isIntersecting&amp;&amp;((t=(e=e.target).getAttribute("data-placeholder-image"))&amp;&amp;(c=e.getAttribute("data-placeholder_class_index"),cmplz_append_css(".cmplz-placeholder-"+c+" {background-image: url("+t+") !important;}"),cmplz_set_blocked_content_container_aspect_ratio(e,t,c)),n.unobserve(e))})});e.forEach(e=&gt;{t.observe(e)})};function cmplz_set_blocked_content_container(){document.querySelectorAll(".cmplz-image").forEach(e=&gt;{var t,c,n,o;e.classList.contains("cmplz-processed")||(e.classList.add("cmplz-processed"),t=e.getAttribute("data-service"),c=e.getAttribute("data-category"),(n=e.parentElement).classList.add("cmplz-blocked-content-container"),o=n.getAttribute("data-placeholder_class_index"),"lazy"===e.getAttribute("loading")&amp;&amp;(e.removeAttribute("loading"),e.setAttribute("data-deferlazy",1)),null==o&amp;&amp;(cmplz_placeholder_class_index++,n.classList.add("cmplz-placeholder-"+cmplz_placeholder_class_index,"cmplz-blocked-content-container"),n.setAttribute("data-placeholder_class_index",cmplz_placeholder_class_index),cmplz_insert_placeholder_text(n,c,t)))}),document.querySelectorAll(".cmplz-placeholder-element").forEach(t=&gt;{if(!t.classList.contains("cmplz-processed")){t.classList.add("cmplz-processed");var c=t.getAttribute("data-service"),n=t.getAttribute("data-category");let e;null===(e=t.classList.contains("cmplz-iframe")?("lazy"===t.getAttribute("loading")&amp;&amp;(t.removeAttribute("loading"),t.setAttribute("data-deferlazy",1)),t.parentElement):t).getAttribute("data-placeholder_class_index")&amp;&amp;(cmplz_placeholder_class_index++,e.classList.add("cmplz-placeholder-"+cmplz_placeholder_class_index,"cmplz-blocked-content-container"),e.setAttribute("data-placeholder_class_index",cmplz_placeholder_class_index),cmplz_insert_placeholder_text(e,n,c),n=t.getAttribute("data-placeholder-image"))&amp;&amp;void 0!==n&amp;&amp;n.length&amp;&amp;e.setAttribute("data-placeholder-image",n)}}),cmplzLazyLoader(),cmplz_has_consent("statistics")&amp;&amp;cmplz_enable_category("statistics"),cmplz_has_consent("marketing")&amp;&amp;cmplz_enable_category("marketing")}function cmplz_insert_placeholder_text(e,n,o){if(!e.querySelector(".cmplz-blocked-content-notice")){let t=complianz.placeholdertext;n=n||"marketing";let c;if(void 0!==t){if(1==complianz.clean_cookies){let e=o?o.replace("-"," "):"";e=e.charAt(0).toUpperCase()+e.slice(1),t=t.replace("{service}",e),(c=cmplz_create_element("div",t)).innerHTML=t,c.classList.add("cmplz-blocked-content-notice");var a=c.querySelector("button"),a=(a.setAttribute("data-service",o),a.setAttribute("data-category",n),a.setAttribute("aria-label",complianz.aria_label.replace("{service}",e)),complianz.page_links[complianz.region]),i=c.querySelector(".cmplz-links a");a&amp;&amp;a.hasOwnProperty("cookie-statement")&amp;&amp;(i.setAttribute("href",a["cookie-statement"].url),"{title}"===i.innerText)&amp;&amp;(i.innerText=a["cookie-statement"].title)}else{i=cmplz_create_element("button",""),a=complianz.categories.hasOwnProperty(n)?complianz.categories[n]:"marketing";i.innerText=t.replace("{category}",a),i.classList.add("cmplz-blocked-content-notice","cmplz-accept-category","cmplz-accept-"+n),i.setAttribute("data-service",o),i.setAttribute("data-category",n),i.setAttribute("aria-label",complianz.aria_label.replace("{category}",n)),c=i}("VIDEO"!==e.tagName?e:e.parentElement).appendChild(c)}}}function cmplz_set_blocked_content_container_aspect_ratio(t,c,n){var e;null!=t&amp;&amp;((e=new Image).addEventListener("load",function(){var e=this.naturalWidth||1,e=this.naturalHeight*(t.clientWidth/e),e=-1===c.indexOf("placeholder.jpg")?"height:"+e+"px;":"";cmplz_append_css(".cmplz-placeholder-"+n+" {"+e+"}")}),e.src=c)}function cmplz_has_blocked_scripts(){return 0&lt;document.querySelectorAll("script[data-category], script[data-service]").length}function cmplz_enable_category(o,a){1==complianz.tm_categories&amp;&amp;""!==o&amp;&amp;cmplz_run_tm_event(o);var t={},t=(t.category=o,t.categories=cmplz_accepted_categories(),t.region=complianz.region,new CustomEvent("cmplz_before_category",{detail:t}));if(document.dispatchEvent(t),a=void 0!==a?a:"do_not_match","functional"!==(o=""===o?"do_not_match":o)){"marketing"===o&amp;&amp;cmplz_set_integrations_cookies();let e;e="do_not_match"!==a?'.cmplz-blocked-content-notice [data-service="'+a+'"]':1!=complianz.clean_cookies?".cmplz-blocked-content-notice.cmplz-accept-"+o:'.cmplz-blocked-content-notice [data-category="'+o+'"]',document.querySelectorAll(e).forEach(e=&gt;{var t=e.getAttribute("data-service");e.parentNode.classList.contains("cmplz-blocked-content-notice")&amp;&amp;(e=e.parentNode),cmplz_is_service_denied(t)||e.parentNode.removeChild(e)}),document.querySelectorAll('[data-category="'+o+'"], [data-service="'+a+'"]').forEach(t=&gt;{var e=t.getAttribute("data-service");if(!cmplz_is_service_denied(e)&amp;&amp;"functional"!==t.getAttribute("data-category")&amp;&amp;!t.classList.contains("cmplz-activated")){var e=t.tagName;if("LINK"===e){t.classList.add("cmplz-activated");var c=t.getAttribute("data-href");cmplz_load_css(c,o)}else if("IMG"===e){t.classList.add("cmplz-activated");c=t.getAttribute("data-src-cmplz");t.setAttribute("src",c),t.getAttribute("data-deferlazy")&amp;&amp;t.setAttribute("loading","lazy"),cmplz_remove_placeholder(t)}else if("IFRAME"===e){t.classList.add("cmplz-activated");let e=t.getAttribute("data-src-cmplz");c=t.getAttribute("data-cmplz-target")?t.getAttribute("data-cmplz-target"):"src";"1"===cmplz_get_url_parameter(t.getAttribute(c),"autoplay")&amp;&amp;(e+="&amp;autoplay=1"),t.getAttribute("data-deferlazy")&amp;&amp;t.setAttribute("loading","lazy"),t.addEventListener("load",()=&gt;{cmplz_remove_placeholder(t)}),t.setAttribute(c,e)}else t.classList.contains("cmplz-placeholder-element")&amp;&amp;(t.classList.add("cmplz-activated"),e=t.getAttribute("data-placeholder_class_index"),t.classList.remove("cmplz-blocked-content-container","cmplz-placeholder-"+e))}});t=document.querySelectorAll('script[data-category="'+o+'"], script[data-service="'+a+'"]');t.forEach(e=&gt;{var t=e.getAttribute("data-waitfor"),c=e.getAttribute("data-cmplz-src");t&amp;&amp;(c?cmplz_waiting_scripts[t]=c:0&lt;e.innerText.length&amp;&amp;(cmplz_waiting_inline_scripts[t]=e)),e.parentElement&amp;&amp;e.parentElement.removeChild(e)}),t.forEach(e=&gt;{var t,c,n=e.getAttribute("type");!e.classList.contains("cmplz-activated")&amp;&amp;n&amp;&amp;"text/javascript"!==n&amp;&amp;(e.classList.add("cmplz-activated"),(n=e.getAttribute("data-cmplz-src"))?(e.removeAttribute("type"),cmplz_is_waiting_script(cmplz_waiting_scripts,n)||(e.getAttribute("data-post_scribe_id")?(t="#"+e.getAttribute("data-post_scribe_id"),(c=document.querySelector(t))&amp;&amp;(c.innerHtml(""),postscribe(t,"&lt;script src="+n+"&gt;&lt;\/script&gt;"))):cmplz_run_script(n,o,a,"src",e))):0&lt;e.innerText.length&amp;&amp;(cmplz_is_waiting_script(cmplz_waiting_inline_scripts,e.innerText)||cmplz_run_script(e.innerText,o,a,"inline",e)))}),cmplz_run_after_all_scripts(o,a)}}function cmplz_remove_placeholder(e){var t,c=e.closest(".cmplz-blocked-content-container");c&amp;&amp;(t=c.getAttribute("data-placeholder_class_index"),c.classList.remove("cmplz-blocked-content-container","cmplz-placeholder-"+t)),e.classList.remove("cmplz-iframe-styles","cmplz-iframe","video-wrap")}function cmplz_get_waiting_script(e,t){for(var c in e){var n;if(e.hasOwnProperty(c))if(-1!==t.indexOf(c))return n=e[c],delete e[c],n}return!1}function cmplz_array_is_empty(e){for(var t in e)if(e.hasOwnProperty(t))return!1;return!0}function cmplz_is_waiting_script(t,c){for(var n in t)if(t.hasOwnProperty(n)){let e=t[n];if("string"!=typeof e&amp;&amp;(e=e.innerText),-1!==c.indexOf(e)||-1!==e.indexOf(c))return!0}return!1}function cmplz_run_after_all_scripts(e,t){var c="do_not_match"!==t&amp;&amp;!cmplz_in_array(t,cmplz_fired_service_events),n="do_not_match"!==e&amp;&amp;!cmplz_in_array(e,cmplz_fired_category_events);(n||c)&amp;&amp;(n&amp;&amp;cmplz_fired_category_events.push(e),c&amp;&amp;cmplz_fired_service_events.push(t),(n={}).category=e,n.service=t,n.categories=cmplz_accepted_categories(),n.services=cmplz_get_all_service_consents(),n.region=complianz.region,c=new CustomEvent("cmplz_enable_category",{detail:n}),document.dispatchEvent(c)),!cmplz_all_scripts_hook_fired&amp;&amp;cmplz_array_is_empty(cmplz_waiting_inline_scripts)&amp;&amp;cmplz_array_is_empty(cmplz_waiting_scripts)&amp;&amp;(n=new CustomEvent("cmplz_run_after_all_scripts",{detail:e,service:t}),document.dispatchEvent(n),cmplz_all_scripts_hook_fired=!0)}window.addEventListener("resize",function(e){clearTimeout(cmplzResizeTimer),cmplzResizeTimer=setTimeout(cmplz_set_blocked_content_container,500)},!0),1==complianz.block_ajax_content&amp;&amp;setInterval(function(){cmplz_set_blocked_content_container()},2e3);var cmplz_fired_events=[];function cmplz_run_tm_event(e){-1===cmplz_fired_events.indexOf(e)&amp;&amp;(cmplz_fired_events.push(e),window.dataLayer=window.dataLayer||[],window.dataLayer.push({event:"cmplz_event_"+e}),e=new CustomEvent("cmplz_tag_manager_event",{detail:e}),document.dispatchEvent(e))}function cmplz_fire_before_categories_consent(e){var t={},e=(t.categories=e,t.region=complianz.region,new CustomEvent("cmplz_before_categories_consent",{detail:t}));document.dispatchEvent(e)}function cmplz_check_cookie_policy_id(){var e=cmplz_get_cookie("policy_id");e&amp;&amp;parseInt(complianz.current_policy_id)!==parseInt(e)&amp;&amp;(cmplz_deny_all(),cmplz_set_banner_status("show"),cmplz_clear_cookies("cmplz"))}function cmplz_do_not_track(){var e="doNotTrack"in navigator&amp;&amp;"1"===navigator.doNotTrack,t="globalPrivacyControl"in navigator&amp;&amp;navigator.globalPrivacyControl;return!(!complianz.do_not_track_enabled||!t&amp;&amp;!e)}function cmplz_get_services_on_page(){let c=[];return document.querySelectorAll("[data-service]").forEach(e=&gt;{var t=e.getAttribute("data-service"),e=e.getAttribute("data-category");-1==c.indexOf(t)&amp;&amp;c.push({category:e,service:t})}),c}function cmplz_is_bot(){var e=new RegExp("(googlebot/|Googlebot-Mobile|Google-InspectionTool|Googlebot-Image|Google favicon|Mediapartners-Google|bingbot|slurp|java|wget|curl|Commons-HttpClient|Python-urllib|libwww|httpunit|nutch|phpcrawl|msnbot|jyxobot|FAST-WebCrawler|FAST Enterprise Crawler|biglotron|teoma|convera|seekbot|gigablast|exabot|ngbot|ia_archiver|GingerCrawler|webmon |httrack|webcrawler|grub.org|UsineNouvelleCrawler|antibot|netresearchserver|speedy|fluffy|bibnum.bnf|findlink|msrbot|panscient|yacybot|AISearchBot|IOI|ips-agent|tagoobot|MJ12bot|dotbot|woriobot|yanga|buzzbot|mlbot|yandexbot|purebot|Linguee Bot|Voyager|CyberPatrol|voilabot|baiduspider|citeseerxbot|spbot|twengabot|postrank|turnitinbot|scribdbot|page2rss|sitebot|linkdex|Adidxbot|blekkobot|ezooms|dotbot|Mail.RU_Bot|discobot|heritrix|findthatfile|europarchive.org|NerdByNature.Bot|sistrix crawler|ahrefsbot|Aboundex|domaincrawler|wbsearchbot|summify|ccbot|edisterbot|seznambot|ec2linkfinder|gslfbot|aihitbot|intelium_bot|facebookexternalhit|yeti|RetrevoPageAnalyzer|lb-spider|sogou|lssbot|careerbot|wotbox|wocbot|ichiro|DuckDuckBot|lssrocketcrawler|drupact|webcompanycrawler|acoonbot|openindexspider|gnam gnam spider|web-archive-net.com.bot|backlinkcrawler|coccoc|integromedb|content crawler spider|toplistbot|seokicks-robot|it2media-domain-crawler|ip-web-crawler.com|siteexplorer.info|elisabot|proximic|changedetection|blexbot|arabot|WeSEE:Search|niki-bot|CrystalSemanticsBot|rogerbot|360Spider|psbot|InterfaxScanBot|Lipperhey SEO Service|CC Metadata Scaper|g00g1e.net|GrapeshotCrawler|urlappendbot|brainobot|fr-crawler|binlar|SimpleCrawler|Livelapbot|Twitterbot|cXensebot|smtbot|bnf.fr_bot|A6-Indexer|ADmantX|Facebot|Twitterbot|OrangeBot|memorybot|AdvBot|MegaIndex|SemanticScholarBot|ltx71|nerdybot|xovibot|BUbiNG|Qwantify|archive.org_bot|Applebot|TweetmemeBot|crawler4j|findxbot|SemrushBot|yoozBot|lipperhey|y!j-asr|Domain Re-Animator Bot|AddThis)","i"),t=navigator.userAgent;return e.test(t)}function cmplz_is_speedbot(){var e=navigator.userAgent;return new RegExp("(GTmetrix|pingdom|pingbot|Lighthouse)","i").test(e)}function cmplz_exists_service_consent(){var e,t=cmplz_get_cookie("consented_services");try{for(const c in e=JSON.parse(t))if(e.hasOwnProperty(c)&amp;&amp;1==e[c])return!0}catch(e){}return!1}function cmplz_set_service_consent(e,t){var c=cmplz_get_cookie("consented_services");let n;try{n=JSON.parse(c)}catch(e){n={}}n[e]=t,cmplz_set_cookie("consented_services",JSON.stringify(n));c={},c.service=e,c.value=t,c.region=complianz.region,cmplz_all_scripts_hook_fired=!1,e=new CustomEvent("cmplz_status_change_service",{detail:c});document.dispatchEvent(e)}function cmplz_clear_all_service_consents(){cmplz_set_cookie("consented_services","")}function cmplz_get_all_service_consents(){var e=cmplz_get_cookie("consented_services");let t;try{t=JSON.parse(e)}catch(e){t={}}return t}function cmplz_get_cookie_path(){return void 0!==complianz.cookie_path&amp;&amp;""!==complianz.cookie_path?complianz.cookie_path:"/"}function cmplz_get_cookie_domain(){return 1==complianz.set_cookies_on_root&amp;&amp;3&lt;complianz.cookie_domain.length&amp;&amp;!complianz.cookie_domain.includes("localhost")?complianz.cookie_domain:""}function cmplz_reload_browser_compatible(){var e;-1&lt;navigator.userAgent.toLowerCase().indexOf("firefox")?((e=new URL(window.location.href)).searchParams.set("cmplz-force-reload",Date.now().toString()),window.location.href=e.toString()):window.location.reload()}window.cmplz_accept_all=function(){for(var e in cmplz_clear_all_service_consents(),cmplz_fire_before_categories_consent(cmplz_categories),cmplz_categories)cmplz_categories.hasOwnProperty(e)&amp;&amp;cmplz_set_consent(cmplz_categories[e],"allow");cmplz_sync_category_checkboxes()},window.cmplz_deny_all=function(){for(var e in cmplz_categories)cmplz_categories.hasOwnProperty(e)&amp;&amp;cmplz_set_consent(cmplz_categories[e],"deny");let t=!1;"functional"===cmplz_highest_accepted_category()&amp;&amp;!cmplz_exists_service_consent()||(t=!0),cmplz_clear_cookies("cmplz_service")&amp;&amp;(t=!0),cmplz_clear_all_service_consents(),cmplz_integrations_revoke(),cmplz_fire_categories_event(),cmplz_track_status();var c=new CustomEvent("cmplz_revoke",{detail:t});document.dispatchEvent(c),!complianz.tcf_active&amp;&amp;t&amp;&amp;cmplz_reload_browser_compatible()},window.conditionally_show_banner=function(){complianz=cmplz_merge_object(complianz,cmplz_user_data),cmplz_maybe_auto_redirect(),cmplz_set_blocked_content_container(),window.wp_consent_type=complianz.consenttype;var e,t,c,n=new CustomEvent("wp_consent_type_defined"),o=(document.dispatchEvent(n),n=new CustomEvent("cmplz_before_cookiebanner"),document.dispatchEvent(n),1==complianz.forceEnableStats&amp;&amp;"optin"===complianz.consenttype&amp;&amp;cmplz_set_consent("statistics","allow"),cmplz_categories.reverse()),a=[];for(e in o)o.hasOwnProperty(e)&amp;&amp;(t=cmplz_categories[e],cmplz_has_consent(t))&amp;&amp;a.push(t);for(c in cmplz_fire_before_categories_consent(a),a)o.hasOwnProperty(c)&amp;&amp;cmplz_enable_category(a[c]);if(cmplz_exists_service_consent()){cmplz_enable_category("","general");var i,l,r,s=cmplz_get_services_on_page();for(i in s)s.hasOwnProperty(i)&amp;&amp;(l=s[i].service,r=s[i].category,cmplz_has_service_consent(l,r))&amp;&amp;(document.querySelectorAll('.cmplz-accept-service[data-service="'+l+'"]').forEach(e=&gt;{e.checked=!0}),cmplz_enable_category("",l))}cmplz_sync_category_checkboxes(),cmplz_integrations_init(),cmplz_check_cookie_policy_id(),cmplz_set_up_auto_dismiss(),cmplz_load_manage_consent_container(),n=new CustomEvent("cmplz_cookie_banner_data",{detail:complianz}),document.dispatchEvent(n),""===cmplz_get_cookie("saved_categories")&amp;&amp;("optin"!==complianz.consenttype&amp;&amp;"optout"!==complianz.consenttype?cmplz_track_status("no_warning"):cmplz_do_not_track()&amp;&amp;cmplz_track_status("do_not_track")),cmplz_set_category_as_body_class(),cmplz_fire_categories_event(),cmplz_do_not_track()?(console.log("global privacy control or do not track detected: no banner."),cmplz_track_status("do_not_track")):("optin"===complianz.consenttype?(complianz.forceEnableStats&amp;&amp;cmplz_enable_category("statistics"),console.log("opt-in"),show_cookie_banner):"optout"===complianz.consenttype?(console.log("opt-out"),show_cookie_banner):(console.log("other consent type, no cookie warning"),cmplz_accept_all))()},window.show_cookie_banner=function(){let e=complianz.disable_cookiebanner||cmplz_is_speedbot(),t=!1;(document.querySelector("#cmplz-manage-consent-container")||document.querySelector(".cmplz-dropdown-cookiepolicy"))&amp;&amp;(t=!0);var c=document.getElementById("cmplz-cookiebanner-container"),c=(c&amp;&amp;document.body.prepend(c),document.createElement("link"));let n=complianz.page_links[complianz.region];(cmplz_banner=document.querySelector(".cmplz-cookiebanner.banner-"+complianz.user_banner_id+"."+complianz.consenttype))||(e=!0),cmplz_manage_consent_button=document.querySelector("#cmplz-manage-consent .cmplz-manage-consent.manage-consent-"+complianz.user_banner_id);var o=complianz.css_file.replace("{type}",complianz.consenttype).replace("{banner_id}",complianz.user_banner_id),o=(-1!==complianz.css_file.indexOf("cookiebanner/css/defaults/banner")&amp;&amp;console.log("Fallback default css file used. Please re-save banner settings, or check file writing permissions in uploads directory"),c.href=o,c.type="text/css",c.rel="stylesheet",c.onload=function(){e||(cmplz_banner.classList.remove("cmplz-hidden"),cmplz_manage_consent_button.classList.remove("cmplz-hidden"))},document.getElementsByTagName("head")[0].appendChild(c),cmplz_banner&amp;&amp;!e&amp;&amp;(cmplz_banner.querySelectorAll(".cmplz-links a:not(.cmplz-external), .cmplz-buttons a:not(.cmplz-external)").forEach(e=&gt;{var t,c=e;for(t in c.classList.add("cmplz-hidden"),n)n.hasOwnProperty(t)&amp;&amp;c.classList.contains(t)&amp;&amp;(c.setAttribute("href",n[t].url+c.getAttribute("data-relative_url")),"{title}"===c.innerText&amp;&amp;(c.innerText=cmplz_html_decode(n[t].title)),c.classList.remove("cmplz-hidden"))}),cmplz_set_banner_status(),t)&amp;&amp;(cmplz_banner.classList.remove("cmplz-show"),cmplz_banner.classList.add("cmplz-dismissed"),cmplz_manage_consent_button.classList.remove("cmplz-dismissed"),cmplz_manage_consent_button.classList.add("cmplz-show")),new CustomEvent("cmplz_cookie_warning_loaded",{detail:complianz.region}));document.dispatchEvent(o)},window.cmplz_get_banner_status=function(){return cmplz_get_cookie("banner-status")},window.cmplz_set_banner_status=function(e){let t=cmplz_get_cookie("banner-status");(e=void 0!==e?e:t)!==t&amp;&amp;cmplz_set_cookie("banner-status",e),0===e.length&amp;&amp;(e="show"),t="show"===e?"dismissed":"show",cmplz_banner&amp;&amp;0&lt;e.length&amp;&amp;(cmplz_banner.classList.remove("cmplz-"+t),cmplz_banner.classList.add("cmplz-"+e),cmplz_manage_consent_button)&amp;&amp;(cmplz_manage_consent_button.classList.add("cmplz-"+t),cmplz_manage_consent_button.classList.remove("cmplz-"+e)),cmplz_banner_container&amp;&amp;complianz.soft_cookiewall&amp;&amp;(cmplz_banner_container.classList.remove("cmplz-"+t),cmplz_banner_container.classList.add("cmplz-"+e,"cmplz-soft-cookiewall"));e=new CustomEvent("cmplz_banner_status",{detail:e});document.dispatchEvent(e),cmplz_start_clean()},window.cmplz_has_consent=function(e){if(cmplz_is_bot())return!0;if("functional"===e)return!0;let t,c;return t=cmplz_do_not_track()?(c=cmplz_get_cookie(e),"allow"===c):(c=cmplz_get_cookie(e),("optout"===complianz.consenttype||"other"===complianz.consenttype)&amp;&amp;""===c||"allow"===c)},window.cmplz_is_service_denied=function(e){var t=cmplz_get_cookie("consented_services");let c;try{c=JSON.parse(t)}catch(e){c={}}return!!c.hasOwnProperty(e)&amp;&amp;!c[e]},window.cmplz_has_service_consent=function(e,t){var c=cmplz_get_cookie("consented_services");let n;try{n=JSON.parse(c)}catch(e){n={}}return n.hasOwnProperty(e)?n[e]:cmplz_has_consent(t)},window.cmplz_set_consent=function(e,t){cmplz_set_accepted_cookie_policy_id(),t="functional"===e?"allow":t;var c,n=cmplz_get_cookie(e);let o="allow"===t;document.querySelectorAll("input.cmplz-"+e).forEach(e=&gt;{e.checked=o}),n!==t&amp;&amp;(cmplz_set_cookie(e,t),"allow"===t&amp;&amp;cmplz_enable_category(e),cmplz_wp_set_consent(e,t),"statistics"===e&amp;&amp;cmplz_wp_set_consent("statistics-anonymous","allow"),(c=new Object).category=e,c.value=t,c.region=complianz.region,c.categories=cmplz_accepted_categories(),cmplz_all_scripts_hook_fired=!1,c=new CustomEvent("cmplz_status_change",{detail:c}),document.dispatchEvent(c),"marketing"===e)&amp;&amp;"deny"===t&amp;&amp;"allow"===n&amp;&amp;(cmplz_integrations_revoke(),setTimeout(function(){cmplz_reload_browser_compatible()},500))};var cmplz_id_cookie,cmplz_id_session,cmplz_id,cmplz_user_data=[];if("undefined"!=typeof Storage&amp;&amp;sessionStorage.cmplz_user_data&amp;&amp;(cmplz_user_data=JSON.parse(sessionStorage.cmplz_user_data)),1!=complianz.geoip||0!=cmplz_user_data.length&amp;&amp;cmplz_user_data.version===complianz.version&amp;&amp;cmplz_user_data.banner_version===complianz.banner_version)conditionally_show_banner();else{let e=new XMLHttpRequest,t=cmplz_get_url_parameter(window.location.href,"cmplz_user_region");t=t?"&amp;cmplz_user_region="+t:"",e.open("GET",complianz.url+"banner?"+complianz.locale+t,!0),e.setRequestHeader("Content-type","application/json"),e.send(),e.onload=function(){cmplz_user_data=JSON.parse(e.response),sessionStorage.cmplz_user_data=JSON.stringify(cmplz_user_data),conditionally_show_banner()}}function cmplz_track_status_end(){cmplz_consent_stored_once||cmplz_track_status()}function cmplz_set_up_auto_dismiss(){if("optout"===complianz.consenttype){if(1==complianz.dismiss_on_scroll){let t=function(e){window.pageYOffset&gt;Math.floor(400)&amp;&amp;(cmplz_set_banner_status("dismissed"),cmplz_fire_categories_event(),cmplz_track_status(),window.removeEventListener("scroll",t),this.onWindowScroll=null)};window.addEventListener("scroll",t)}var e=parseInt(complianz.dismiss_timeout);0&lt;e&amp;&amp;window.setTimeout(function(){cmplz_set_banner_status("dismissed"),cmplz_fire_categories_event(),cmplz_track_status()},Math.floor(e))}}function cmplz_fire_categories_event(){var e=new Object,e=(e.category=cmplz_highest_accepted_category(),e.categories=cmplz_accepted_categories(),e.region=complianz.region,new CustomEvent("cmplz_fire_categories",{detail:e}));document.dispatchEvent(e)}function cmplz_track_status(e){let t=[];e=void 0!==e&amp;&amp;e;var c=new CustomEvent("cmplz_track_status",{detail:e});document.dispatchEvent(c),t=e?[e]:cmplz_accepted_categories(),cmplz_set_category_as_body_class();let n,o;try{n=JSON.parse(cmplz_get_cookie("saved_categories"))}catch(e){n={}}try{o=JSON.parse(cmplz_get_cookie("saved_services"))}catch(e){o={}}var c=cmplz_get_all_service_consents();cmplz_equals(n,t)&amp;&amp;cmplz_equals(o,c)||1!=complianz.store_consent||cmplz_is_bot()||cmplz_is_speedbot()||(cmplz_set_cookie("saved_categories",JSON.stringify(t)),cmplz_set_cookie("saved_services",JSON.stringify(c)),cmplz_consent_stored_once=!0,(e=new XMLHttpRequest).open("POST",complianz.url+"track",!0),c={consented_categories:t,consented_services:c,consenttype:window.wp_consent_type},e.setRequestHeader("Content-type","application/json"),e.send(JSON.stringify(c)))}function cmplz_accepted_categories(){let e=cmplz_categories,n=[];for(var t in e)e.hasOwnProperty(t)&amp;&amp;(t=e[t],cmplz_has_consent(t))&amp;&amp;n.push(t);return e=e.filter(function(e,t,c){return cmplz_in_array(e,n)})}function cmplz_sync_category_checkboxes(){for(var e in cmplz_categories)cmplz_categories.hasOwnProperty(e)&amp;&amp;(e=cmplz_categories[e],cmplz_has_consent(e)||"functional"===e?document.querySelectorAll("input.cmplz-"+e).forEach(e=&gt;{e.checked=!0}):document.querySelectorAll("input.cmplz-"+e).forEach(e=&gt;{e.checked=!1})),document.querySelectorAll(".cmplz-accept-service").forEach(e=&gt;{var t=e.getAttribute("data-service"),c=e.getAttribute("data-category");cmplz_has_service_consent(t,c)?e.checked=!0:cmplz_is_service_denied(t)?e.checked=!1:(c=e.getAttribute("data-category"),e.checked=!!cmplz_has_consent(c))})}function cmplz_merge_object(e,t){var c,n,o={};for(c in t)t.hasOwnProperty(c)&amp;&amp;(o[c]=t[c]);for(n in e)t.hasOwnProperty(n)&amp;&amp;void 0!==t[n]||e.hasOwnProperty(n)&amp;&amp;(o[n]=e[n]);return o}function cmplz_clear_cookies(t){if("undefined"==typeof document)return!1;let a=!1,i="https:"===window.location.protocol?";secure":"",l="expires="+(new Date).toGMTString(),r=location.pathname.replace(/^\/|\/$/g,"").split("/");return document.cookie.split("; ").forEach(function(e){let n=e.split(";")[0].split("=")[0];if(-1!==n.indexOf(t)){a=!0;let c=window.location.hostname.split(".");var o=1&lt;c.length;for(r.forEach(function(e){e="/"+e;document.cookie=encodeURIComponent(n)+"=;SameSite=Lax"+i+";"+l+";domain=."+c.join(".")+";path="+e,document.cookie=encodeURIComponent(n)+"=;SameSite=Lax"+i+";"+l+";domain=."+c.join(".")+";path="+e+"/"});0&lt;c.length;){let t="."+c.join(".");c.shift(),o&amp;&amp;1===c.length&amp;&amp;c.shift(),r.forEach(function(e){e="/"+e;document.cookie=encodeURIComponent(n)+"=;SameSite=Lax"+i+";"+l+";domain="+t+";path="+e,document.cookie=encodeURIComponent(n)+"=;SameSite=Lax"+i+";"+l+";domain="+t+";path="+e+"/"})}}}),cmplz_set_accepted_cookie_policy_id(),a}function cmplz_set_accepted_cookie_policy_id(){cmplz_set_cookie("policy_id",complianz.current_policy_id)}function cmplz_integrations_init(){var e,t=complianz.set_cookies;for(e in t)t.hasOwnProperty(e)&amp;&amp;"1"===t[e][1]&amp;&amp;cmplz_set_cookie(e,t[e][1],!1)}function cmplz_integrations_revoke(){var e,t=complianz.set_cookies;for(e in t)t.hasOwnProperty(e)&amp;&amp;(cmplz_set_cookie(e,t[e][1],!1),0==t[e][1])&amp;&amp;cmplz_clear_cookies(e)}function cmplz_set_integrations_cookies(){var e,t=complianz.set_cookies;for(e in t)t.hasOwnProperty(e)&amp;&amp;cmplz_set_cookie(e,t[e][0],!1)}function cmplz_get_url_parameter(e,t){if(e&amp;&amp;void 0!==e&amp;&amp;-1!==e.indexOf("?")){e=e.split("?")[1];if(e){var c=e.split("&amp;");for(let e=0;e&lt;c.length;e++){var n=c[e].split("=");if(n[0]===t)return void 0===n[1]||decodeURIComponent(n[1])}}}return!1}function cmplz_maybe_auto_redirect(){var e=cmplz_get_url_parameter(window.location.href,"cmplz_region_redirect"),t=cmplz_get_url_parameter(window.location.href,"cmplz-region");e&amp;&amp;!t&amp;&amp;(e=window.location.href.split("#")[0]+"&amp;cmplz-region="+complianz.region,t=window.location.hash,window.location.href=e+t)}function cmplz_wp_set_consent(e,t){"function"==typeof wp_set_consent&amp;&amp;wp_set_consent(e,t)}1==complianz.store_consent&amp;&amp;(cmplz_id_cookie=cmplz_get_cookie("id"),cmplz_id=cmplz_id_session="","undefined"!=typeof Storage&amp;&amp;sessionStorage.cmplz_id&amp;&amp;(cmplz_id_session=JSON.parse(sessionStorage.cmplz_id)),0==cmplz_id_cookie.length&amp;&amp;0&lt;cmplz_id_session.length&amp;&amp;(cmplz_id=cmplz_id_session,cmplz_set_cookie("id",cmplz_id)),0&lt;cmplz_id_cookie.length&amp;&amp;0==cmplz_id_session.length&amp;&amp;(cmplz_id=cmplz_id_cookie),"undefined"!=typeof Storage)&amp;&amp;(sessionStorage.cmplz_id=JSON.stringify(cmplz_id)),document.addEventListener("visibilitychange",function(){"hidden"===document.visibilityState&amp;&amp;cmplz_track_status_end()}),window.addEventListener("pagehide",cmplz_track_status_end,!1),window.addEventListener("beforeunload",cmplz_track_status_end,!1),document.addEventListener("cmplz_consent_action",function(e){cmplz_set_consent(e.detail.category,"allow"),cmplz_fire_categories_event(),cmplz_track_status()}),cmplz_add_event("click",".cmplz-accept",function(e){e.preventDefault(),setTimeout(()=&gt;{cmplz_accept_all(),cmplz_set_banner_status("dismissed"),cmplz_fire_categories_event(),cmplz_track_status()},0)}),cmplz_add_event("click",".cmplz-accept-category, .cmplz-accept-marketing",function(e){e.preventDefault();var e=e.target,t=e.getAttribute("data-service"),e=e.getAttribute("data-category")||"marketing";1==complianz.clean_cookies&amp;&amp;void 0!==t&amp;&amp;t?(cmplz_set_service_consent(t,!0),cmplz_enable_category("","general"),cmplz_enable_category("",t)):cmplz_set_consent(e,"allow"),cmplz_set_banner_status("dismissed"),cmplz_fire_categories_event(),cmplz_track_status()}),cmplz_add_event("click",".cmplz-accept-service",function(e){var e=e.target;"INPUT"!==e.tagName&amp;&amp;(void 0!==(e=e.getAttribute("data-service"))&amp;&amp;(cmplz_set_service_consent(e,!0),cmplz_enable_category("","general"),cmplz_enable_category("",e)),cmplz_fire_categories_event(),cmplz_track_status())}),cmplz_add_event("change",".cmplz-accept-service",function(e){var t=e.target,c=t.tagName,n=t.getAttribute("data-service");void 0!==n&amp;&amp;("INPUT"===c?(cmplz_set_banner_status("dismissed"),t.checked?(cmplz_set_service_consent(n,!0),cmplz_enable_category("",n)):(cmplz_set_service_consent(n,!1),setTimeout(function(){cmplz_reload_browser_compatible()},500))):(e.preventDefault(),cmplz_set_service_consent(n,!0),cmplz_enable_category("","general"),cmplz_enable_category("",n),setTimeout(function(){cmplz_reload_browser_compatible()},500))),cmplz_fire_categories_event(),cmplz_track_status()}),cmplz_add_event("click",".cmplz-save-preferences",function(e){var t,c,n,o,a,e=e.target,i=(cmplz_banner=e.closest(".cmplz-cookiebanner"),[]);for(t in cmplz_categories)cmplz_categories.hasOwnProperty(t)&amp;&amp;(c=cmplz_categories[t],n=cmplz_banner.querySelector("input.cmplz-"+c))&amp;&amp;n.checked&amp;&amp;i.push(c);for(o in cmplz_fire_before_categories_consent(i),cmplz_categories)cmplz_categories.hasOwnProperty(o)&amp;&amp;(a=cmplz_categories[o],i.includes(a)?cmplz_set_consent(a,"allow"):cmplz_set_consent(a,"deny"));cmplz_set_banner_status("dismissed"),cmplz_fire_categories_event(),cmplz_track_status()}),cmplz_add_event("click",".cmplz-close",function(e){cmplz_set_banner_status("dismissed")}),cmplz_add_event("click",".cmplz-view-preferences",function(e){e=e.target;(cmplz_banner=e.closest(".cmplz-cookiebanner")).querySelector(".cmplz-categories").classList.contains("cmplz-fade-in")?(cmplz_banner.classList.remove("cmplz-categories-visible"),cmplz_banner.querySelector(".cmplz-categories").classList.remove("cmplz-fade-in"),cmplz_banner.querySelector(".cmplz-view-preferences").style.display="block",cmplz_banner.querySelector(".cmplz-save-preferences").style.display="none"):(cmplz_banner.classList.add("cmplz-categories-visible"),cmplz_banner.querySelector(".cmplz-categories").classList.add("cmplz-fade-in"),cmplz_banner.querySelector(".cmplz-view-preferences").style.display="none",cmplz_banner.querySelector(".cmplz-save-preferences").style.display="block")}),cmplz_add_event("change",".cmplz-manage-consent-container .cmplz-category",function(e){for(var t in cmplz_categories){var c;cmplz_categories.hasOwnProperty(t)&amp;&amp;(t=cmplz_categories[t],c=document.querySelector(".cmplz-manage-consent-container input.cmplz-"+t))&amp;&amp;(c.checked?cmplz_set_consent(t,"allow"):cmplz_set_consent(t,"deny"),cmplz_set_banner_status("dismissed"),cmplz_fire_categories_event(),cmplz_track_status())}}),cmplz_add_event("click",".cmplz-deny",function(e){e.preventDefault(),cmplz_set_banner_status("dismissed"),cmplz_deny_all()}),cmplz_add_event("click","button.cmplz-manage-settings",function(e){e.preventDefault();var e=document.querySelector(".cmplz-cookiebanner .cmplz-categories"),t=document.querySelector(".cmplz-save-settings"),c=document.querySelector("button.cmplz-manage-settings");cmplz_is_hidden(e)?(t.style.display="block",c.style.display="none",e.style.display="block"):(t.style.display="none",c.style.display="block",e.style.display="none")}),cmplz_add_event("click","button.cmplz-manage-consent",function(e){e.preventDefault(),cmplz_set_banner_status("show")});var cmplzCleanCookieInterval,cmplz_cookie_data=[];function cmplz_start_clean(){if(1==complianz.clean_cookies)if((cmplz_cookie_data="undefined"!=typeof Storage?JSON.parse(sessionStorage.getItem("cmplz_cookie_data")):cmplz_cookie_data)&amp;&amp;0!==cmplz_cookie_data.length)cmplz_setup_clean_interval();else{let e=new XMLHttpRequest;e.open("GET",complianz.url+"cookie_data",!0),e.setRequestHeader("Content-type","application/json"),e.send(),e.onload=function(){cmplz_cookie_data=JSON.parse(e.response),sessionStorage.setItem("cmplz_cookie_data",JSON.stringify(cmplz_cookie_data)),cmplz_setup_clean_interval()}}}function cmplz_do_cleanup(){for(const t of["preferences","statistics","marketing"])if(!cmplz_has_consent(t)&amp;&amp;cmplz_cookie_data.hasOwnProperty(t)){var e=cmplz_cookie_data[t];for(const c in e)if(!cmplz_has_service_consent(c,t))for(const n of e[c])cmplz_clear_cookies(n),cmplz_clear_storage(n)}}function cmplz_setup_clean_interval(){!cmplz_cookie_data||cmplzCleanCookieInterval||(cmplz_do_cleanup(),cmplzCleanCookieInterval=setInterval(cmplz_do_cleanup,1e3))}function cmplz_clear_storage(e){"undefined"!=typeof Storage&amp;&amp;(localStorage.getItem(e)&amp;&amp;localStorage.removeItem(e),sessionStorage.getItem(e))&amp;&amp;sessionStorage.removeItem(e)}function cmplz_load_manage_consent_container(){let c=document.querySelector(".cmplz-manage-consent-container");if(c){let t=new XMLHttpRequest;t.open("GET",complianz.url+"manage_consent_html?"+complianz.locale,!0),t.setRequestHeader("Content-type","application/json"),t.send(),t.onload=function(){var e=JSON.parse(t.response);c.insertAdjacentHTML("beforeend",e),cmplz_sync_category_checkboxes();document.querySelector("#cmplz-manage-consent-container-nojavascript").style.display="none",c.style.display="block";e=new CustomEvent("cmplz_manage_consent_container_loaded");document.dispatchEvent(e)}}}function cmplz_equals(c,n){if(Array.isArray(c)||(c=Object.keys(c),n=Object.keys(n)),!c||!n)return!1;if(c.length!==n.length)return!1;for(let e=0,t=c.length;e&lt;t;e++)if(c[e]instanceof Array&amp;&amp;n[e]instanceof Array){if(!cmplz_equals(c[e],n[e]))return!1}else if(c[e]!==n[e])return!1;return!0}function cmplzCopyAttributes(e,t){const c=["type","data-service","data-category","async"];Array.from(e.attributes).forEach(e=&gt;{"data-script-type"===e.nodeName&amp;&amp;"module"===e.nodeValue?(t.setAttribute("type","module"),t.removeAttribute("data-script-type")):c.includes(e.nodeName)||t.setAttribute(e.nodeName,e.nodeValue)})}cmplz_add_event("keypress",".cmplz-banner-slider label",function(e){32==(e.keyCode||e.which)&amp;&amp;document.activeElement.click()}),cmplz_add_event("keypress",".cmplz-cookiebanner .cmplz-header .cmplz-close",function(e){13==(e.keyCode||e.which)&amp;&amp;document.activeElement.click()});var cmplz_has_wp_video=document.querySelector(".cmplz-wp-video-shortcode"),cmplz_times_checked=0;void 0!==window.jQuery&amp;&amp;jQuery(document).ready(function(r){if(cmplz_has_wp_video){document.addEventListener("cmplz_enable_category",function(e){t()});let e=setInterval(function(){cmplz_times_checked+=1,document.querySelector(".cmplz-wp-video-shortcode")&amp;&amp;cmplz_times_checked&lt;100?t():clearInterval(e)},500)}function t(){if(document.querySelector(".cmplz-wp-video-shortcode")){var e,t,n,o=cmplz_accepted_categories(),a=cmplz_get_all_service_consents(),i=[];for(e in o)if(o.hasOwnProperty(e)){var l=o[e];if("functional"===l)break;i.push('.cmplz-wp-video-shortcode[data-category="'+l+'"]')}for(t in a)a.hasOwnProperty(t)&amp;&amp;i.push('.cmplz-wp-video-shortcode[data-service="'+t+'"]');n=i.join(",");let c=!1;0&lt;n.length&amp;&amp;document.querySelectorAll(n).forEach(e=&gt;{c=!0,e.setAttribute("controls","controls"),e.classList.add("wp-video-shortcode","cmplz-processed"),e.classList.remove("cmplz-wp-video-shortcode"),e.closest(".cmplz-wp-video").classList.remove("cmplz-wp-video");var t=e.closest(".wp-video").querySelector(".cmplz-blocked-content-notice");t&amp;&amp;t.parentElement.removeChild(t),e.classList.remove("cmplz-blocked-content-container")}),c&amp;&amp;(window.wp.mediaelement?window.wp.mediaelement.initialize():(n={videoWidth:"100%",videoHeight:"100%",enableAutosize:!0},r(".wp-video-shortcode").mediaelementplayer(n)))}}function c(e){e=r(e);"function"==typeof e.parent().fitVids&amp;&amp;e.parent().fitVids()}document.querySelectorAll(".cmplz-video.cmplz-activated").forEach(e=&gt;{c(e)}),document.addEventListener("cmplz_enable_category",function(e){document.querySelectorAll(".cmplz-video.cmplz-activated").forEach(e=&gt;{c(e)})})});if('undefined'!=typeof window.jQuery){jQuery(document).ready(function($){$(document).on('elementor/popup/show',()=&gt;{let rev_cats=cmplz_categories.reverse();for(let key in rev_cats){if(rev_cats.hasOwnProperty(key)){let category=cmplz_categories[key];if(cmplz_has_consent(category)){document.querySelectorAll('[data-category="'+category+'"]').forEach(obj=&gt;{cmplz_remove_placeholder(obj)})}}}
let services=cmplz_get_services_on_page();for(let key in services){if(services.hasOwnProperty(key)){let service=services[key].service;let category=services[key].category;if(cmplz_has_service_consent(service,category)){document.querySelectorAll('[data-service="'+service+'"]').forEach(obj=&gt;{cmplz_remove_placeholder(obj)})}}}})})}
document.addEventListener("cmplz_enable_category",function(){document.querySelectorAll('[data-rocket-lazyload]').forEach(obj=&gt;{if(obj.hasAttribute('data-lazy-src')){obj.setAttribute('src',obj.getAttribute('data-lazy-src'))}})});function UERemoteGeneralAPI(){var t=this,g_objParent;var g_isTypeEvents=!1;var g_options=null;var g_vars={class_items:"",class_active:"",selector_item_trigger:"",add_set_active_code:!1,listen_class_change:!0,enableDebug:!1,is_editor:!1,trigger_event:"click"};var g_temp={handle:null,trashold:50};function trace(str){console.log(str)}
function getVal(obj,name,defaultValue){return window.ueRemoteConnection.getVal(obj,name,defaultValue)}
function runWithTrashold(func,trashold){if(g_temp.handle)
clearTimeout(g_temp.handle);g_temp.handle=setTimeout(func,g_temp.trashold)};function validateInited(){var isInited=g_objParent.data("remote_inited");if(isInited==!1)
throw new Error("The remote parent not inited")}
function getObjItems(){var objItems=g_objParent.find("."+g_vars.class_items);return(objItems)}
function getNumTotal(){var objItems=g_objParent.find("."+g_vars.class_items);var numTotal=objItems.length;return(numTotal)}
function getObjCurrentItem(){var selector="."+g_vars.class_items+"."+g_vars.class_active;var objCurrent=g_objParent.find(selector);return(objCurrent)}
function getNumCurrent(){var objCurrent=getObjCurrentItem();if(objCurrent.length==0)
return(0);var index=objCurrent.index();return(index)}
function getItem(index){if(index&lt;0)
index=0;var objItems=getObjItems();if(objItems.length==0)
return(null);if(index&gt;=objItems.length)
index=objItems.length-1;var objItem=jQuery(objItems[index]);return(objItem)}
function getItemNum(num){var total=getNumTotal();if(jQuery.isNumeric(num)==!1)
throw new Error("num item should be numeric");if(num&gt;=total)
num=total-1;if(num&lt;0)
num=0;if(!num)
num=0;if(typeof num=="undefined")
num=0;return(num)}
function changeItem(mixed){var numItem=getItemNum(mixed);var objItem=getItem(numItem);if(objItem==null)
return(!1);var numCurrent=getNumCurrent();if(numCurrent==numItem)
return(!1);if(!g_vars.selector_item_trigger){objItem.trigger(g_vars.trigger_event);return(!1)}
var objInner=objItem.find(g_vars.selector_item_trigger);if(objInner.length==0){trace(objItem);throw new Error("Can't find inner by selector:"+g_vars.selector_item_trigger)}
objInner.trigger(g_vars.trigger_event)}
this.onEvent=function(name,func){validateInited();switch(name){case "change":g_objParent.on("uc_change",func);break;case "pause":break;default:throw new Error("General API: Wrong event: "+name);break}}
this.doAction=function(action,arg1,arg2){validateInited();if(g_isTypeEvents==!0){var funcRunAction=getVal(g_options,"func_doAction");if(!funcRunAction)
throw new Error("Missing option: 'func_doAction' ");var response=g_options.func_doAction(action,arg1,arg2);return(response)}
if(g_vars.enableDebug){trace("DEBUG - Action: "+action+" arg1: "+arg1+" arg2: "+arg2)}
switch(action){case 'get_num_current':var current=getNumCurrent();if(g_vars.enableDebug)
trace("response: "+current);return(current);break;case "get_total_items":var total=getNumTotal();if(g_vars.enableDebug)
trace("response: "+total);return(total);break;case 'change_item':if(g_vars.enableDebug)
console.trace();changeItem(arg1);break;case "pause":case "play":break;default:throw new Error("General API: Wrong action: "+action);break}}
function initEvents_listenClassChange(){var objItems=getObjItems();if(g_vars.enableDebug==!0){trace("generalAPI: listen class change: ");trace(objItems)}
jQuery.each(objItems,function(index,item){var objItem=jQuery(item);var isSetObserver=objItem.data("uc_set_observer");if(isSetObserver===!0){return(!0)}
var observer=new MutationObserver(function(records){runWithTrashold(function(){if(g_vars.enableDebug==!0)
trace("generalAPI: trigger item change");g_objParent.trigger("uc_change")})});var config={attributes:!0};observer.observe(item,config);objItem.data("uc_set_observer",!0)})}
function initEvents_setActive(){if(g_vars.enableDebug==!0)
trace("start initEvents_setActive")
var objItems=getObjItems();if(objItems.length==0){if(g_vars.enableDebug==!0)
trace("no items, exit")
return(!1)}
var objFirstItem=getItem(0);if(objFirstItem==null){if(g_vars.enableDebug==!0)
trace("empty first item - exit")
return(!1)}
objFirstItem.addClass(g_vars.class_active);objItems.on(g_vars.trigger_event,function(event){var objItem=jQuery(this);var objElement=jQuery(event.target);var isLink=objElement.is("a");if(isLink==!0&amp;&amp;objElement.hasClass(g_vars.class_items)==!1){return(!0)}
objItems.not(objItem).removeClass(g_vars.class_active);objItem.addClass(g_vars.class_active);g_objParent.trigger("uc_change");event.preventDefault()})}
function initEvents(){if(g_vars.enableDebug==!0){trace("generalAPI: init events");trace(g_objParent)}
if(g_vars.listen_class_change==!0)
initEvents_listenClassChange();if(g_vars.add_set_active_code==!0){initEvents_setActive()}}
this.getElement=function(){return(g_objParent)}
this.getAPIType=function(){return("general")}
function initByClasses(){try{var widgetName=g_objParent.data("widgetname");g_vars.class_items=getVal(g_options,"class_items");if(!g_vars.class_items)
throw new Error(widgetName+" - missing 'class_items' option");g_vars.class_active=getVal(g_options,"class_active");if(!g_vars.class_active)
throw new Error(widgetName+" - missing 'class_active' in options");g_vars.selector_item_trigger=getVal(g_options,"selector_item_trigger");g_vars.add_set_active_code=getVal(g_options,"add_set_active_code");if(g_vars.add_set_active_code===!0)
g_vars.listen_class_change=!1}catch(e){trace("ERROR: "+e);trace("passed options: ");trace(g_options);throw e}}
this.init=function(objParent,options,isEditor){if(!options)
return(!1);g_vars.is_editor=isEditor;g_objParent=objParent;var connectType=getVal(options,"connect_type");if(connectType=="events")
g_isTypeEvents=!0;g_options=options;var enableDebug=getVal(options,"trace_debug");if(enableDebug==!0)
g_vars.enableDebug=!0;if(g_vars.enableDebug==!0){trace("init general api");trace(objParent);trace(options)}
if(isEditor==!0)
g_vars.trigger_event="ucclick";if(g_isTypeEvents==!1)
initByClasses();g_objParent.data("remote_inited",!0);if(g_isTypeEvents==!1){if(g_vars.listen_class_change==!0)
setTimeout(initEvents,1000);else initEvents();g_objParent.on("uc_ajax_refreshed",function(){setTimeout(initEvents,500)})}
return(!0)}}
function UERemoteGalleryAPI(){var g_api,g_isInited;var g_objParent;var t=this;function trace(str){console.log(str)}
function validateInited(){if(g_isInited==!1)
throw new Error("The owl carousel API is not inited")}
this.doAction=function(action,arg1,arg2){validateInited();switch(action){case 'get_num_current':var current=g_api.getNumCurrent();return(current);break;case "get_total_items":var total=g_api.getNumItems();return(total);break;case 'change_item':g_api.selectItem(arg1);break;case "is_playing":var isPlaying=g_api.isPlaying();return(isPlaying);break;case "pause":g_api.stop();break;case "play":g_api.play();break;default:throw new Error("GALLERY API: Wrong action: "+action);break}}
this.onEvent=function(name,func){validateInited();switch(name){case "change":g_api.on("item_change",func);break;case "play":g_api.on("play",func);break;case "pause":g_api.on("stop",func);break;default:throw new Error("Gallery API: Wrong event: "+name);break}}
this.getElement=function(){return(g_objParent)}
this.getAPIType=function(){return("gallery")}
this.init=function(objParent,options){g_api=objParent.data("unitegallery-api");if(!g_api)
return(!1);g_objParent=objParent;g_isInited=!0;return(!0)}}
function UERemoteCarouselAPI(){var g_owlCarousel,g_owl,g_isInited;var t=this;var enableDebug=!1;function trace(str){console.log(str)}
function validateInited(){if(g_isInited==!1)
throw new Error("The owl carousel API is not inited")}
function getTotalItems(){var total=g_owlCarousel.find(".owl-item:not(.cloned)").length;return(total)}
function resetAutoplay(){if(g_owl.settings.autoplay==!1)
return(!1);g_owlCarousel.trigger('stop.owl.autoplay');g_owlCarousel.trigger('play.owl.autoplay')}
this.doAction=function(action,arg1,arg2){validateInited();if(enableDebug==!0){trace("carousel action: "+action+" "+arg1+" "+arg2)}
switch(action){case "next":g_owlCarousel.trigger('next.owl.carousel');break;case "prev":g_owlCarousel.trigger('prev.owl.carousel');break;case "play":g_owlCarousel.trigger('start_autoplay.owl.autoplay');break;case "pause":g_owlCarousel.trigger('stop.owl.autoplay');break;case "is_playing":if(g_owl.settings.autoplay==!0)
return(!0)
else return(!1);break;case "get_total_items":var total=getTotalItems()
return(total);break;case "get_progress_time":var progressTime=g_owl.settings.autoplayTimeout/1000;return(progressTime);break;case "get_modified_progress_time":var progressTime=(g_owl.settings.autoplayTimeout-g_owl.settings.smartSpeed)/1000;return(progressTime);break;case 'get_num_current':var currentItem=g_owl.relative(g_owl.current());if(enableDebug==!0){trace("num current: "+currentItem)}
return(currentItem);break;case "get_total_text":var owlTotalItems=g_owlCarousel.find(".owl-item:not(.cloned)").length;if(owlTotalItems.toString().length&lt;2){owlTotalItems="0"+owlTotalItems}
return(owlTotalItems);break;case "get_current_text":var owlCurrentItem=g_owl.relative(g_owl.current())+1;if(owlCurrentItem.toString().length&lt;2){owlCurrentItem="0"+owlCurrentItem}
return(owlCurrentItem);break;case 'change_item':var total=getTotalItems()
var currentItem=g_owl.relative(g_owl.current());var slideNum=arg1;if(slideNum==currentItem)
return(!1);if(slideNum&gt;=total)
slideNum=(total-1);else if(slideNum&lt;0)
slideNum=0;g_owlCarousel.trigger('to.owl.carousel',[slideNum,null,!0]);resetAutoplay();break;default:throw new Error("Carousel API: Wrong action: "+action);break}}
this.onEvent=function(name,func){validateInited();switch(name){case "play":g_owlCarousel.on("play_autoplay.owl.carousel",func);break;case "pause":g_owlCarousel.on("stop_autoplay.owl.carousel",func);break;case "change":g_owlCarousel.on("changed.owl.carousel",func);break;case "transition_start":g_owlCarousel.on("translate.owl.carousel",func);break;case "transition_end":g_owlCarousel.on("translated.owl.carousel",func);break;case "refreshed":g_owlCarousel.on("refreshed.owl.carousel",func);break;default:console.error("Carousel API: Wrong event: "+name);throw new Error("Carousel API: Wrong event: "+name);break}}
this.getAPIType=function(){return("carousel")}
this.getElement=function(){return(g_owlCarousel)}
this.init=function(objParent){if(objParent.hasClass("owl-carousel")==!1)
throw new Error("owl-carousel class not found");g_owlCarousel=objParent;g_owl=g_owlCarousel.data("owl.carousel");if(!g_owl)
return(!1);g_isInited=!0;return(!0)}}
function UESyncObject(){var g_objApis={};var g_groupName,g_objIDs;var t=this;var g_vars={is_editor:!1,is_editor_func_started:!1,show_debug:!1};function trace(str){console.log(str)}
function validate(objAPI){if(g_objApis.length==0)
return(!1);var numItems=objAPI.doAction("get_total_items");for(var elID in g_objApis){var firstExistingAPI=g_objApis[elID];var numItemsExisting=firstExistingAPI.doAction("get_total_items");if(numItemsExisting!==numItems)
throw new Error("Sync failed, number of items should be the same. Now it's "+numItems+" and "+numItemsExisting);return(!1)}}
this.setOptions=function(groupName,isEditor){if(isEditor===!0)
g_vars.is_editor=!0;if(!g_groupName)
g_groupName=groupName}
function getElementID(objAPI){var objElement=objAPI.getElement();var elementID=objElement.attr("id");return(elementID)}
function mapAPIs(func,objElement){if(typeof ucRemoteDebugEnabled!="undefined")
g_vars.show_debug=!0;var elementID=null;if(objElement){var elementID=objElement.attr("id");if(g_objApis.length==1)
return(null)}
for(var elID in g_objApis){var api=g_objApis[elID];if(elementID&amp;&amp;elID==elementID)
continue;func(api)}}
function onItemChange(objAPI){var numCurrent=objAPI.doAction("get_num_current");var objElement=objAPI.getElement();if(g_vars.show_debug==!0){trace("sync onchange: "+numCurrent);trace(objElement);trace(g_objApis)}
mapAPIs(function(api){api.doAction("change_item",numCurrent)},objElement)}
function onPause(objAPI){var objElement=objAPI.getElement();mapAPIs(function(api){api.doAction("pause")},objElement)}
function trigger(action,params){var realAction="uc_remote_sync_"+g_groupName+"_action_"+action;jQuery("body").trigger(realAction,params)}
this.on=function(action,func){var realAction="uc_remote_sync_"+g_groupName+"_action_"+action;jQuery("body").on(realAction,func)}
this.getDebugText=function(objElement){var text="sync group: &lt;b&gt;"+g_groupName+"&lt;/b&gt;, ";var textWidgets="";mapAPIs(function(api){var objElement=api.getElement();var widgetName=objElement.data("widgetname");var widgetID=objElement.attr("id");if(textWidgets)
textWidgets+=", ";textWidgets+="&lt;a href='#"+widgetID+"' style='color:green;text-decoration:underline'&gt;&lt;b&gt;"+widgetName+"&lt;/b&gt;&lt;/a&gt;"},objElement);if(textWidgets)
text+="sync with: "+textWidgets;return(text)}
function removeDeletedAPIs(){var objAPIsNew={};mapAPIs(function(api){var elementID=getElementID(api);var objElement=jQuery("#"+elementID);if(objElement.length==0)
return(!1);var parent=objElement.parent();objAPIsNew[elementID]=api});g_objApis=objAPIsNew}
function onEditorCheck(){removeDeletedAPIs();trigger("update_debug",g_groupName)}
this.getGroupName=function(){return(g_groupName)}
this.addAPI=function(objAPI){var id=getElementID(objAPI);if(g_objApis.hasOwnProperty(id))
return(!1);g_objApis[id]=objAPI;if(g_vars.is_editor==!0)
removeDeletedAPIs();validate(objAPI);var objElement=objAPI.getElement();trigger("update_debug",g_groupName);objAPI.onEvent("change",function(){onItemChange(objAPI)});objAPI.onEvent("pause",function(){onPause(objAPI)});if(g_vars.is_editor==!0&amp;&amp;g_vars.is_editor_func_started==!1){setInterval(onEditorCheck,700);g_vars.is_editor_func_started=!1}}
this.getElements=function(exceptID){if(!g_objApis)
return(null);var arrElements=[];for(var elID in g_objApis){if(exceptID&amp;&amp;exceptID==elID)
continue;var objApi=g_objApis[elID];var objElement=objApi.getElement();arrElements.push(objElement)}
if(arrElements.length==0)
return(null);return(arrElements)}}
function UERemoteWidgets(){var g_objParent,g_objWidget,g_parentID;var g_api,g_objSync,g_remoteConnection=window.ueRemoteConnection;var t=this;var g_vars={is_inited:!1,funcOnInit:null,is_editor:null,widget_id:null,init_options:null,is_parent_mode:!1,syncid:null,options_api:null,show_connection_debug:!1,debug_show_ids:!1,debug_show_widget:"",trace_debug:!1,show_trace_when_debug_on:!1};var g_types={CAROUSEL:"carousel",GALLERY:"gallery",GENERAL:"general"};function trace(str){console.log(str)}
function getVal(obj,name,defaultValue){return window.ueRemoteConnection.getVal(obj,name,defaultValue)}
function _______INIT_________(){}
function initWidget(widgetID){g_objWidget=jQuery("#"+widgetID);if(g_objWidget.length==0)
throw new Error("Widget not found by id: "+widgetID);g_vars.widget_id=widgetID;var forceID=getVal(g_vars.init_options,"force_parentid");if(forceID)
g_parentID=forceID;else g_parentID=g_objWidget.data("parentid");if(!g_parentID)
throw new Error("Parent controlled ID not set")}
function getParentType(){if(!g_objParent||g_objParent.length==0)
throw new Error("getParentType: no parent found");if(g_objParent.hasClass("owl-carousel"))
return(g_types.CAROUSEL);var dataType=g_objParent.data("remote-type");switch(dataType){case "gallery":return g_types.GALLERY;break}
return(g_types.GENERAL)}
function getOffsetsDistance(offset1,offset2){var dx=offset2.left-offset1.left;var dy=offset2.top-offset1.top;return Math.sqrt(dx*dx+dy*dy)}
function getClosestByOffset(objParents,objElement){var objClosest=null;var minDiff=1000000;var elementOffset=objElement.offset();if(g_vars.trace_debug){trace("Widget Offset: ");trace(elementOffset)}
jQuery.each(objParents,function(index,parent){var objParent=jQuery(parent);var parentOffset=objParent.offset();if(parentOffset.top==0){var firstParent=getWidgetContainer(objParent);var parentOffset=firstParent.offset()}
var distance=getOffsetsDistance(parentOffset,elementOffset);if(g_vars.trace_debug){trace("Parent offset: ");trace(objParent);trace(parentOffset);trace("distance: "+distance)}
if(distance&lt;minDiff){minDiff=distance;objClosest=objParent}});return(objClosest)}
function filterParentsBySection(objParents,objElement){var objSection=objElement.closest(".elementor-top-section");if(objSection.length==0)
return(objParents);var section=objSection[0];var objFiltered=objParents.filter(function(index,parent){var isContains=jQuery.contains(section,parent);return isContains});if(objFiltered.length)
return(objFiltered);return(objParents)}
function detectClosestParent(objParents){if(!objParents)
var objParents=jQuery(".uc-remote-parent").not(g_objWidget);if(g_vars.trace_debug){trace("detect closest start. group:");trace(objParents)}
var numParents=objParents.length;if(numParents==0)
return(null);if(numParents==1)
return(objParents);if(g_vars.trace_debug)
trace("filter auto");var objParentsFiltered=objParents.filter("[data-remoteid='"+g_parentID+"']");if(objParentsFiltered.length==1)
return(objParentsFiltered);if(g_vars.trace_debug){trace("filter by section")}
var objParents=filterParentsBySection(objParents,g_objWidget);if(g_vars.trace_debug){trace(objParents)}
if(objParents.length==1)
return(objParents);if(g_vars.trace_debug)
trace("get closest by parent");var objClosest=getClosestByOffset(objParents,g_objWidget);if(objClosest)
return(objClosest);if(g_vars.trace_debug)
trace("get first");var firstParent=jQuery(objParentsFiltered[0]);return(firstParent)}
function setParentObject(){var objForceParent=getVal(g_vars.init_options,"force_parent_obj");var widgetID=g_objWidget.attr("id");if(g_vars.trace_debug)
trace("start set parent for: "+widgetID);if(objForceParent){g_objParent=objForceParent;if(g_vars.trace_debug){trace("set force parent");trace(g_objParent)}
return(!1)}
if(!g_parentID)
throw new Error("Parent controller ID not found");if(!g_objParent||g_objParent.length==0){if(g_parentID=="auto"){if(g_vars.trace_debug){trace("auto detect selected")}
g_objParent=detectClosestParent();if(g_vars.trace_debug){trace("detect closest");trace(g_objParent)}
if(!g_objParent)
throw new Error("Can't detect remote parent")}else{var objParents=jQuery(".uc-remote-parent[data-remoteid='"+g_parentID+"']").not(g_objWidget);if(g_vars.trace_debug)
trace("Detect from group: "+g_parentID);g_objParent=detectClosestParent(objParents);if(g_vars.trace_debug){trace("detected from group");trace(g_objParent)}
if(!g_objParent||g_objParent.length==0)
throw new Error("Parent widget with remote name: '"+g_parentID+"' not found")}}
if(g_objParent&amp;&amp;g_objParent.length&gt;1){g_objParent=jQuery(g_objParent[0])}
if(g_vars.trace_debug==!0){var parentID=g_objParent.attr("id");var widgetID=g_objWidget.attr("id");trace("widget: "+widgetID+" connected to: "+parentID)}
if(!g_objParent||g_objParent.length==0)
throw new Error("Remote parent not found")}
function initAPI(){if(g_vars.trace_debug==!0){trace("start init api function")}
if(!g_api){var parentType=getParentType();if(!parentType){trace(g_objParent);throw new Error("No parent type found")}
if(g_vars.trace_debug==!0){trace("init api: "+parentType);trace(g_objParent)}
switch(parentType){case g_types.CAROUSEL:g_api=new UERemoteCarouselAPI();break;case g_types.GENERAL:g_api=new UERemoteGeneralAPI();break;case g_types.TABS:g_api=new UERemoteGeneralAPI();break;case g_types.GALLERY:g_api=new UERemoteGalleryAPI();break;default:throw new Error("Wrong parent type: "+parentType);break}}
var optionsFromData=g_objParent.data("uc-remote-options");var isEditor=isInsideEditor();if(optionsFromData)
g_vars.options_api=optionsFromData;if(g_vars.trace_debug==!0){if(g_vars.options_api)
trace(g_vars.options_api);else g_vars.options_api={};g_vars.options_api.trace_debug=!0}
var isInited=g_api.init(g_objParent,g_vars.options_api,isEditor);if(g_vars.trace_debug==!0){trace("inited: "+isInited)}
return(isInited)}
function initParent(){setParentObject();var isInited=initAPI();return(isInited)}
function initGlobal(widgetID,func){if(!g_objWidget)
initWidget(widgetID);var isDebug=g_objWidget.data("debug");if(isDebug===!0||typeof ucRemoteDebugEnabled!="undefined"){if(g_vars.show_trace_when_debug_on==!0)
g_vars.trace_debug=!0;g_vars.show_connection_debug=!0}
g_vars.is_inited=initParent();if(g_vars.is_inited==!1){if(g_vars.trace_debug==!0){trace(g_objParent);trace("set object ready event")}
g_objParent.on("uc-object-ready",func)}}
this.setAction=function(action,objElement,allowMultiple){if(g_vars.trace_debug==!0){trace("set action: "+action)}
if(g_vars.is_inited==!1)
throw new Error("Widget not inited");if(typeof objElement=="string"){var selector=objElement;objElement=g_objWidget.find(objElement);if(objElement.length==0)
throw new Error("Remote '"+action+"' action error: element: "+selector+" not found")}
if(!objElement||objElement.length==0)
throw new Error("Element not inited");if(!g_api)
throw new Error("API not inited!");var linkedAction=objElement.data("uc-action");if(allowMultiple!==!0)
if(linkedAction)
return(!1);objElement.data("uc-action",action);objElement.on("click",function(){var objElement=jQuery(this);if(objElement.hasClass("uc-disabled"))
return(!0);t.doAction(action)})}
function onWidgetReady(){checkWidgetDebug();var isEditorMode=isInsideEditor();if(isEditorMode==!0){hideErrorOnWidget();setInterval(checkWidgetInsideEditor,700)}}
function _______TEXT_ON_WIDGET_________(){}
function hideErrorOnWidget(){if(!g_objWidget||g_objWidget.length==0)
return(!1);var objParent=getWidgetContainer(g_objWidget);var objError=objParent.find('.uc-remote-error');if(objError.length==0)
return(!1);if(objError.is(":visible")==!1)
return(!1);objError.hide();g_objWidget.css({"border":"none"});checkWidgetDebug()}
function getWidgetContainer(objWidget){var objParent=objWidget.parents(".elementor-widget-container");if(objParent.length==0)
objParent=objWidget.parent();return(objParent)}
function addTextDiv(objWidget,type){var objParent=getWidgetContainer(objWidget);var isDebug=(type=="debug");var className="uc-remote-error";if(isDebug==!0)
className="uc-remote-debug";var divText="&lt;div class='"+className+"'&gt;&lt;/div&gt;";objParent.append(divText);var objError=objParent.find('.'+className+'');var css={"position":"absolute","color":"red","top":"-30px","left":"0px","z-index":"999999","background-color":"#ffffff"};if(isDebug==!0){css.color="green";css["z-index"]="999998"}
var objParentsBG=objParent.parents(".unlimited-elements-background-overlay");if(objParentsBG.length){css.top="0px"}
objError.css(css);var objError=objParent.find('.'+className+'');return(objError)}
function displayTextOnWidget(objWidget,message,type){var isDebug=(type=="debug");var className="uc-remote-error";if(isDebug==!0)
className="uc-remote-debug";var objParent=getWidgetContainer(objWidget);objText=objParent.find("."+className);if(objText.length==0){objText=addTextDiv(objWidget,type);if(isDebug==!1){var isInEditor=isInsideEditor();if(isInEditor==!0){setTimeout(function(){displayTextOnWidget(objWidget,message,type)},2000);return(!1)}}}
if(isDebug==!1){objWidget.css({"border":"2px solid red","position":"relative"})}
objText.show();objText.html(message)}
function displayErrorMessage(message){if(g_vars.is_parent_mode==!1){if(g_objWidget&amp;&amp;g_objWidget.length)
displayTextOnWidget(g_objWidget,message,"error")}else{displayTextOnWidget(g_objParent,message,"error")}}
function _______DEBUG_________(){}
function isDebugActive(objWidget){if(!objWidget)
objWidget=g_objWidget;var isActive=objWidget.data("debug_active");if(isActive===!0)
return(!0);return(!1)}
function removeDebugVisual(objWidget){if(!objWidget)
objWidget=g_objWidget;g_objWidget.data("debug_active",!1);g_objWidget.css({"border-style":"none"})}
function setDebugVisual(color,objWidget){if(!objWidget)
objWidget=g_objWidget;objWidget.data("debug_active",!0);objWidget.css({"border-style":"solid","border-width":"3px","border-color":color})}
function isParentDebugActive(objParent){var dataDebug=objParent.data("debug");var isDebug=(dataDebug===!0);return(isDebug)}
function checkWidgetDebugWork(objWidget,objParent){if(!objWidget)
objWidget=g_objWidget;if(!objParent)
objParent=g_objParent;var isDebug=isParentDebugActive(objParent);var isActive=isDebugActive(objWidget);if(isDebug==!1){if(isActive==!0)
removeDebugVisual(objWidget);return(!1)}
if(isActive==!1){var color=addParentDebug(objParent);setDebugVisual(color,objWidget)}}
function checkDebugConnectionText(){if(!g_objWidget)
return(!1);if(g_vars.show_connection_debug==!1)
return(!1);if(!g_objParent||g_objParent.length==0)
throw new Error("Not conneted to no parent");var widgetName=g_objParent.data("widgetname");var widgetID=g_objParent.attr("id");var text="connected to &lt;a href='#"+widgetID+"' style='color:green;text-decoration:underline'&gt;&lt;b&gt;"+widgetName+"&lt;/b&gt;&lt;/a&gt;";displayTextOnWidget(g_objWidget,text,"debug")}
function checkWidgetDebug(){var noDebugCheck=getVal(g_vars.init_options,"no_debug_check");if(noDebugCheck===!0)
return(!1);if(!g_objParent||g_vars.is_inited==!1){removeDebugVisual();return(!1)}
checkWidgetDebugWork();checkDebugConnectionText()}
this.onEvent=function(name,func){g_api.onEvent(name,func)}
function changeItemByAction(dir){var current=t.doAction("get_num_current");var total=t.doAction("get_total_items");switch(dir){case "next":var num=current+1;if(num&gt;=total)
num=0;break;case "prev":var num=current-1;if(num&lt;0)
num=total-1;break;default:throw new Error("wrong direction type: "+dir);break}
t.doAction("change_item",num)}
this.doAction=function(action,arg1,arg2){if(g_vars.trace_debug){trace("Do Action: ");trace(action+" "+arg1+" "+arg2)}
switch(action){case "prev":case "next":var apiType=g_api.getAPIType();if(apiType=="carousel"){g_api.doAction(action);return(!1)}
changeItemByAction(action);return(!1);break}
var response=g_api.doAction(action,arg1,arg2);if(g_vars.trace_debug){trace("Response: ");trace(response)}
return(response)}
function addParentDebug(objParent){if(!objParent)
objParent=g_objParent;var color=g_objParent.data("uc-debug-color");if(color)
return(color);var objBody=jQuery("body");var dataColors="uc-remote-debug-colors";var objColors=objBody.data(dataColors);if(!objColors){objColors=["#ffeb00","blue","#808000","#d1e231","#01796f","#8e4585","#ff33cc","#436b95","#eaa221","#b86d29"]}
var color=objColors.pop();g_objParent.data("uc-debug-color",color);objBody.data(dataColors,objColors);g_objParent.css("border","3px solid "+color);return(color)}
function updateSyncDebug(event,syncID){if(g_vars.debug_show_ids==!0)
return(!1);try{if(syncID!=g_vars.syncid){var name=g_objParent.data("widgetname");throw new Error("Wrong sync group mishmash "+g_vars.syncid+" and "+syncID)}
var debugText=g_objSync.getDebugText(g_objParent);if(!debugText)
return(!1);displayTextOnWidget(g_objParent,debugText,"debug")}catch(error){displayErrorMessage(error)}}
function _______EDITOR_RELATED_________(){}
function isInsideEditor(){if(g_vars.is_editor!==null)
return(g_vars.is_editor);if(typeof window.parent=="undefined"){g_vars.is_editor=!1;return(!1)}
if(typeof window.parent.elementor!="undefined"){g_vars.is_editor=!0;return(!0)}
g_vars.is_editor=!1;return(!1)}
function resetSettingsInsideEditor(){g_objParent=null;g_api=null;g_vars.is_inited=!1}
function checkWidgetInsideEditor(){try{hideErrorOnWidget();if(g_vars.is_inited==!0){if(g_objParent.is(":hidden")){resetSettingsInsideEditor()}}else{g_vars.is_inited=initParent();if(g_vars.is_inited==!0){g_vars.funcOnInit()}else if(g_vars.is_inited==!1){g_objParent.on("uc-object-ready",function(){g_vars.is_inited=!0;g_vars.funcOnInit()})}}
checkWidgetDebug()}catch(message){displayErrorMessage(message);return(!1)}}
this.onWidgetInit=function(widgetID,func,options){try{if(g_vars.trace_debug==!0){trace("on widget init")}
if(!g_vars.funcOnInit){if(typeof func!="function")
throw new Error("onWidgetInit error: the second parameter should be a function");g_vars.funcOnInit=func}
if(options&amp;&amp;g_vars.init_options==null)
g_vars.init_options=options;if(g_vars.debug_show_widget&amp;&amp;g_vars.debug_show_widget==widgetID)
g_vars.trace_debug=!0;initGlobal(widgetID,t.onWidgetInit);if(g_vars.is_inited==!1){if(g_vars.trace_debug==!0){trace(widgetID+" not inited yet, waiting for parent init")}
return(!1)}
if(g_vars.debug_show_ids==!0){trace("start debug show id's");displayTextOnWidget(g_objWidget,g_objWidget.attr("id"),"debug")}
if(g_vars.trace_debug==!0)
trace("start debug - show connect");if(g_objParent.length&gt;1){trace(g_objWidget);trace(g_objParent);throw new Error("Remote widget can't connect to more then 1 parents")}
onWidgetReady();g_vars.funcOnInit(g_objWidget)}catch(message){displayErrorMessage(message);var isEditorMode=isInsideEditor();if(isEditorMode==!0)
setInterval(checkWidgetInsideEditor,700);return(!1)}}
function startParentSync(){var syncID=g_objParent.data("syncid");if(g_vars.trace_debug==!0){trace("Start parent sync");trace(g_objParent)}
if(!syncID){if(g_vars.trace_debug==!0){trace("no sync id")}
return(!1)}
var objSync=g_remoteConnection.getSyncObject(syncID);var isEditorMode=isInsideEditor();objSync.setOptions(syncID,isEditorMode);var isInited=initAPI();if(isInited==!1){var widgetID=g_objParent.attr("id");var parentType=getParentType();var message="Sync Error - can't init api for "+widgetID;if(parentType==g_types.CAROUSEL){message+=", please check that the owl carousel js file loading from unlimited elements plugin."}else{message+=", please check if the widget is inited and working."}
throw new Error(message)}
g_vars.syncid=syncID;if(g_vars.trace_debug===!0)
objSync.on("update_debug",updateSyncDebug);g_objSync=objSync;objSync.addAPI(g_api)}
this.onParentInit=function(objParent,optionsAPI){try{g_objParent=objParent;if(!g_objParent)
return(!1);if(g_objParent.length==0)
return(!1);g_vars.is_parent_mode=!0;var optionsFromData=g_objParent.data("uc-remote-options");if(optionsFromData)
optionsAPI=optionsFromData;if(optionsAPI)
g_vars.options_api=optionsAPI;var isDebug=g_objParent.data("debug");if(typeof ucRemoteDebugEnabled!="undefined")
isDebug=!0;g_vars.trace_debug=isDebug;if(isDebug===!0)
addParentDebug(objParent);var isSync=objParent.data("sync");if(isSync==!0)
startParentSync();if(g_vars.debug_show_ids==!0){displayTextOnWidget(g_objParent,g_objParent.attr("id"),"debug")}}catch(message){displayErrorMessage(message);return(!1)}}
this.showInfo=function(){trace("parent");trace(g_objParent);trace("current widget");trace(g_objWidget)}
this.getParent=function(){return(g_objParent)}}
function UERemoteConnection(){var t=this;this.getVal=function(obj,name,defaultValue){if(!defaultValue)
var defaultValue="";var val="";if(!obj||typeof obj!="object")
val=defaultValue;else if(obj.hasOwnProperty(name)==!1){val=defaultValue}else{val=obj[name]}
return(val)}
this.getSyncObject=function(syncID){var syncRealID="uc_sync_"+syncID;var objSync=t.getVal(window,syncRealID);if(objSync)
return(objSync);var objSync=new UESyncObject();window[syncRealID]=objSync;return(objSync)}
this.getSyncedElements=function(objElement){if(!objElement)
return(null);if(objElement.length==0)
return(null);if(objElement.hasClass("uc-remote-parent")==!1)
return(null);var isSync=objElement.data("sync");if(isSync!==!0)
return(null);var syncID=objElement.data("syncid");if(!syncID)
return(null);var objSync=t.getSyncObject(syncID);var currentID=objElement.attr("id");var arrElements=objSync.getElements(currentID);return(arrElements)}}
jQuery("body").on("uc-remote-parent-init",function(event,objParent,optionsAPI){var objRemote=new UERemoteWidgets();objRemote.onParentInit(objParent,optionsAPI)});window.ueRemoteConnection=new UERemoteConnection();function debugLine(e,t,i){!0===e&amp;&amp;(e="true"),!1===e&amp;&amp;(e="false");var n=e;if("object"==typeof e)for(name in n="",e){var r=e[name];n+=" "+name+": "+r}1!=t||i||(n+=" "+Math.random()),1==i&amp;&amp;((i=jQuery("#debug_line")).width(200),500&lt;=i.height()&amp;&amp;i.html(""),n=i.html()+"&lt;br&gt; -------------- &lt;br&gt;"+n),jQuery("#debug_line").show().html(n)}function debugSide(e){var t="";for(name in e){var i=e[name];t+=name+" : "+i+"&lt;br&gt;"}jQuery("#debug_side").show().html(t)}function trace(e){"undefined"!=typeof console&amp;&amp;console.log(e)}function UGFunctions(){var r=null,v=this,o={starTime:0,arrThemes:[],isTouchDevice:-1,isRgbaSupported:-1,timeCache:{},dataCache:{},lastEventType:"",lastEventTime:0,lastTouchStartElement:null,touchThreshold:700,handle:null};function t(e,t,i){t.addEventListener?t.addEventListener(e,i,!1):t.attachEvent?t.attachEvent("on"+e,i):t[e]=i}this.debugVar="",this.getvalopt={FORCE_BOOLEAN:"force_boolean",FORCE_NUMERIC:"force_numeric",TRIM:"trim"},this.z__________GENERAL___________=function(){},this.getVal=function(e,t,i,n){i=i||"";var r="",r=!e||"object"!=typeof e||0==e.hasOwnProperty(t)?i:e[t];switch(n){case v.getvalopt.FORCE_BOOLEAN:r=v.strToBool(r);break;case v.getvalopt.TRIM:r=String(r),r=jQuery.trim(r);break;case v.getvalopt.FORCE_NUMERIC:"string"==typeof(r=jQuery.trim(r))&amp;&amp;(r.replace("px",""),r=Number(r))}return r},this.z__________FULL_SCREEN___________=function(){},this.toFullscreen=function(e,t){if(e.requestFullscreen)e.requestFullscreen();else if(e.mozRequestFullScreen)e.mozRequestFullScreen();else if(e.webkitRequestFullscreen)e.webkitRequestFullscreen();else{if(!e.msRequestFullscreen)return!1;e.msRequestFullscreen()}return!0},this.exitFullscreen=function(){if(0==v.isFullScreen())return!1;if(document.exitFullscreen)document.exitFullscreen();else if(document.cancelFullScreen)document.cancelFullScreen();else if(document.mozCancelFullScreen)document.mozCancelFullScreen();else if(document.webkitExitFullscreen)document.webkitExitFullscreen();else{if(!document.msExitFullscreen)return!1;document.msExitFullscreen()}return!0},this.addFullScreenChangeEvent=function(e){document.msExitFullscreen?t("MSFullscreenChange",document,e):document.onfullscreenchange?t("mozfullscreenchange",document,e):t("fullscreenchange",document,e)},this.destroyFullScreenChangeEvent=function(){jQuery(document).unbind("fullscreenChange"),jQuery(document).unbind("mozfullscreenchange"),jQuery(document).unbind("webkitfullscreenchange"),jQuery(document).unbind("MSFullscreenChange")},this.getFullScreenElement=function(){return document.fullscreenElement||document.mozFullScreenElement||document.webkitFullscreenElement||document.msFullscreenElement},this.isFullScreen=function(){var e=document.fullscreen||document.mozFullScreen||document.webkitIsFullScreen||document.msFullscreenElement;return e=!!e},this.z__________GET_PROPS___________=function(){},this.getBrowserPrefix=function(){if(null!==r)return r;var e,t=["webkit","Moz","ms","O"],i=document.createElement("div");for(e in t){var n=t[e];if(n+"Transform"in i.style)return n=n.toLowerCase(),r=n}return r=""},this.getImageInsideParentDataByImage=function(e,t,i){var n=e.parent(),e=v.getImageOriginalSize(e);return v.getImageInsideParentData(n,e.width,e.height,t,i)},this.getImageInsideParentData=function(e,t,i,n,r,o,a){r=r||{};var s={};void 0===o&amp;&amp;(o=e.width()),void 0===a&amp;&amp;(a=e.height()),r.padding_left&amp;&amp;(o-=r.padding_left),r.padding_right&amp;&amp;(o-=r.padding_right),r.padding_top&amp;&amp;(a-=r.padding_top),r.padding_bottom&amp;&amp;(a-=r.padding_bottom);var l,u=null,d="100%",_=null,g=null,e="display:block;margin:0px auto;";return 0&lt;t&amp;&amp;0&lt;i&amp;&amp;("down"==n&amp;&amp;t&lt;o&amp;&amp;i&lt;a?(g=(o-(u=t))/2,_=(a-(d=i))/2):"fill"==n||"filltop"==n?(u=(d=a)*(l=t/i))&lt;o?(d=(u=o)/l,g=0,_=Math.round((d-a)/2*-1),"filltop"==n&amp;&amp;(_=0)):(_=0,g=Math.round((u-o)/2*-1)):(_=0,g=(o-(u=(d=a)*(l=t/i)))/2,"fitvert"!=n&amp;&amp;o&lt;u&amp;&amp;(g=0,_=(a-(d=(u=o)/l))/2)),u=Math.floor(u),d=Math.floor(d),_=Math.floor(_),g=Math.floor(g),e="position:absolute;"),r.padding_top&amp;&amp;(_+=r.padding_top),r.padding_left&amp;&amp;(g+=r.padding_left),s.imageWidth=u,s.imageHeight=d,s.imageTop=_,s.imageLeft=g,s.imageRight=g+u,s.imageBottom=0==_||"100%"==d?null:_+d,s.style=e,s},this.getElementCenterPosition=function(e,t){var i=e.parent(),n=v.getElementSize(e),r=v.getElementSize(i),e=r.width,i=r.height;t&amp;&amp;void 0!==t.padding_top&amp;&amp;(i-=t.padding_top),t&amp;&amp;void 0!==t.padding_bottom&amp;&amp;(i-=t.padding_bottom),t&amp;&amp;void 0!==t.padding_left&amp;&amp;(e-=t.padding_left),t&amp;&amp;void 0!==t.padding_right&amp;&amp;(e-=t.padding_right);r={};return r.left=Math.round((e-n.width)/2),r.top=Math.round((i-n.height)/2),t&amp;&amp;void 0!==t.padding_top&amp;&amp;(r.top+=t.padding_top),t&amp;&amp;void 0!==t.padding_left&amp;&amp;(r.left+=t.padding_left),r},this.getElementCenterPoint=function(e,t){t=t||!1;var i=v.getElementSize(e),e={};return e.x=i.width/2,e.y=i.height/2,1==t&amp;&amp;(e.x+=i.left,e.y+=i.top),e.x=Math.round(e.x),e.y=Math.round(e.y),e},this.getMousePosition=function(e,t){var i={pageX:e.pageX,pageY:e.pageY,clientX:e.clientX,clientY:e.clientY};return e.originalEvent&amp;&amp;e.originalEvent.touches&amp;&amp;0&lt;e.originalEvent.touches.length&amp;&amp;(i.pageX=e.originalEvent.touches[0].pageX,i.pageY=e.originalEvent.touches[0].pageY,i.clientX=e.originalEvent.touches[0].clientX,i.clientY=e.originalEvent.touches[0].clientY),t&amp;&amp;(t=t.offset(),i.mouseX=i.pageX-t.left,i.mouseY=i.pageY-t.top),i},this.getMouseElementPoint=function(e,t){e={x:e.pageX,y:e.pageY};return v.getElementLocalPoint(e,t)},this.getElementLocalPoint=function(e,t){var i={},t=t.offset();return i.x=Math.round(e.x-t.left),i.y=Math.round(e.y-t.top),i},this.getImageOriginalSize=function(e,t,i){if(void 0!==t&amp;&amp;void 0!==i)return{width:t,height:i};var n=e[0];if(void 0===n)throw new Error("getImageOriginalSize error - Image not found");t={};if(void 0!==n.naturalWidth)return t.width=n.naturalWidth,t.height=n.naturalHeight,t;if("number"==typeof e.data("naturalWidth"))return(t={}).width=e.data("naturalWidth"),t.height=e.data("naturalHeight"),t;i=new Image;return i.src=n.src,i.complete?(t.width=i.width,t.height=i.height,e.data("naturalWidth",t.width),e.data("naturalHeight",t.height),t):{width:0,height:0}},this.getimageRatio=function(e){var t=v.getImageOriginalSize(e);return v.getElementSize(e).width/t.width},this.isImageFitParent=function(e){var t=e.parent(),e=v.getElementSize(e),t=v.getElementSize(t);return e.width&lt;=t.width&amp;&amp;e.height&lt;=t.height},this.getElementSize=function(e){if(void 0===e)throw new Error("Can't get size, empty element");var t=e.position();return t.height=e.outerHeight(),t.width=e.outerWidth(),t.left=Math.round(t.left),t.top=Math.round(t.top),t.right=t.left+t.width,t.bottom=t.top+t.height,t},this.isElementBiggerThenParent=function(e){var t=e.parent(),e=v.getElementSize(e),t=v.getElementSize(t);return e.width&gt;t.width||e.height&gt;t.height},this.isPointInsideElement=function(e,t){return 0!=(0&lt;=e.x&amp;&amp;e.x&lt;t.width)&amp;&amp;0!=(0&lt;=e.y&amp;&amp;e.y&lt;t.height)},this.getElementRelativePos=function(e,t,i,n){var r;n=n||e.parent(),r="number"==typeof e?{width:e,height:e}:v.getElementSize(e);var o=v.getElementSize(n);switch(t){case"top":case"left":t=0,i&amp;&amp;(t+=i);break;case"center":t=Math.round((o.width-r.width)/2),i&amp;&amp;(t+=i);break;case"right":t=o.width-r.width,i&amp;&amp;(t-=i);break;case"middle":t=Math.round((o.height-r.height)/2),i&amp;&amp;(t+=i);break;case"bottom":t=o.height-r.height,i&amp;&amp;(t-=i)}return t},this.getScreenVisibleSize=function(){document.body.clientWidth,document.body.clientHeight,jQuery(document).scrollTop();var e=jQuery(document),t=e.scrollLeft(),i=e.scrollTop(),t=Math.round(t),n=(i=Math.round(i))+window.innerHeight,e=t+window.innerWidth;return{top:i,left:t,height:n-i,width:e-t,right:e,bottom:n}},this.isElementsIntersect=function(e,t){return!(e.right&lt;t.left)&amp;&amp;(!(e.left&gt;t.right)&amp;&amp;(!(e.bottom&lt;t.top)&amp;&amp;!(e.top&gt;t.bottom)))},this.isElementInsideScreen=function(e){var t=v.getElementSize(e),e=v.getScreenVisibleSize();return v.isElementsIntersect(e,t)},this.z_________SET_ELEMENT_PROPS_______=function(){},this.zoomImageInsideParent=function(e,t,i,n,r,o,a){r=r||"fit";var s,l,u,d=i=i||1.2,_=e.parent(),g=v.getElementSize(e),c=v.getImageOriginalSize(e),h=!1,p=0,m=0,f=0,i=0;if(n?(l=v.getMouseElementPoint(n,e),h=v.isPointInsideElement(l,g),f=l.x,i=l.y):h=!1,0==h&amp;&amp;(f=(l=v.getElementCenterPoint(e)).x,i=l.y),1==t)b=g.height*d,s=g.width*d,0!=f&amp;&amp;(p=-(f*d-f)),0!=i&amp;&amp;(m=-(i*d-i));else{var b=g.height/d;if((s=g.width/d)&lt;v.getImageInsideParentData(_,c.width,c.height,r,a).imageWidth)return v.scaleImageFitParent(e,c.width,c.height,r,a),!0;1==h&amp;&amp;(0!=f&amp;&amp;(p=-(f/d-f)),0!=i&amp;&amp;(m=-(i/d-i)))}if(o){i=1;if(0!=c.width&amp;&amp;(i=s/c.width),o&lt;i)return!1}return v.setElementSize(e,s,b),m=0==t&amp;&amp;0==h?(u=(h=v.getElementCenterPosition(e)).left,h.top):(u=g.left+p,g.top+m),v.placeElement(e,u,m),!0},this.placeElement=function(e,t,i,n,r,o){var a,s;if(0!=jQuery.isNumeric(t)&amp;&amp;0!=jQuery.isNumeric(i)||(o=o||e.parent(),a=v.getElementSize(e),s=v.getElementSize(o)),0==jQuery.isNumeric(t))switch(t){case"left":t=0,n&amp;&amp;(t+=n);break;case"center":t=Math.round((s.width-a.width)/2),n&amp;&amp;(t+=n);break;case"right":t=s.width-a.width,n&amp;&amp;(t-=n)}if(0==jQuery.isNumeric(i))switch(i){case"top":i=0,r&amp;&amp;(i+=r);break;case"middle":case"center":i=Math.round((s.height-a.height)/2),r&amp;&amp;(i+=r);break;case"bottom":i=s.height-a.height,r&amp;&amp;(i-=r)}o={position:"absolute",margin:"0px"};null!==t&amp;&amp;(o.left=t),null!==i&amp;&amp;(o.top=i),e.css(o)},this.placeElementInParentCenter=function(e){v.placeElement(e,"center","middle")},this.setElementSizeAndPosition=function(e,t,i,n,r){i={width:n+"px",height:r+"px",left:t+"px",top:i+"px",position:"absolute",margin:"0px"};e.css(i)},this.setElementSize=function(e,t,i){t={width:t+"px"};null!=i&amp;&amp;(t.height=i+"px"),e.css(t)},this.cloneElementSizeAndPos=function(e,t,i,n,r){var o=e.position();if(null==o)throw new Error("Can't get size, empty element");!0===i?(o.height=e.outerHeight(),o.width=e.outerWidth()):(o.height=e.height(),o.width=e.width()),o.left=Math.round(o.left),o.top=Math.round(o.top),n&amp;&amp;(o.left+=n),r&amp;&amp;(o.top+=r),v.setElementSizeAndPosition(t,o.left,o.top,o.width,o.height)},this.placeImageInsideParent=function(e,t,i,n,r,o){r=v.getImageInsideParentData(t,i,n,r,o),o="&lt;img";return null!==r.imageWidth&amp;&amp;(o+=" width = '"+r.imageWidth+"'",r.style+="width:"+r.imageWidth+";"),null!=r.imageHeight&amp;&amp;("100%"==r.imageHeight?(o+=" height = '"+r.imageHeight+"'",r.style+="height:"+r.imageHeight+";"):(o+=" height = '"+r.imageHeight+"'",r.style+="height:"+r.imageHeight+"px;")),null!==r.imageTop&amp;&amp;(r.style+="top:"+r.imageTop+"px;"),null!==r.imageLeft&amp;&amp;(r.style+="left:"+r.imageLeft+"px;"),e=v.escapeDoubleSlash(e),o+=" style='"+r.style+"'",o+=' src="'+e+'"',o+="&gt;",t.html(o),t.children("img")},this.scaleImageCoverParent=function(e,t,i){var n,r;r="number"==typeof t?(n=t,i):(n=t.outerWidth(),t.outerHeight());var o=v.getImageOriginalSize(e),a=o.width/o.height,s=r,i=s*a,t=0,o=0;i&lt;n?(s=(i=n)/a,o=0,t=Math.round((s-r)/2*-1)):(t=0,o=Math.round((i-n)/2*-1)),i=Math.round(i),s=Math.round(s),e.css({width:i+"px",height:s+"px",left:o+"px",top:t+"px"})},this.scaleImageFitParent=function(e,t,i,n,r){var o=e.parent(),i=v.getImageInsideParentData(o,t,i,n,r),n=!1,r={};return null!==i.imageWidth&amp;&amp;(n=!0,e.removeAttr("width"),r.width=i.imageWidth+"px"),null!=i.imageHeight&amp;&amp;(n=!0,e.removeAttr("height"),r.height=i.imageHeight+"px"),null!==i.imageTop&amp;&amp;(n=!0,r.top=i.imageTop+"px"),null!==i.imageLeft&amp;&amp;(n=!0,r.left=i.imageLeft+"px"),1==n&amp;&amp;(r.position="absolute",r.margin="0px 0px",e.css(r)),i},this.scaleImageByHeight=function(e,t,i,n){n=v.getImageOriginalSize(e,i,n),n=n.width/n.height,n=Math.round(t*n);t=Math.round(t),v.setElementSize(e,n,t)},this.scaleImageByWidth=function(e,t,i,n){n=v.getImageOriginalSize(e,i,n),n=n.width/n.height,n=Math.round(t/n);t=Math.round(t),v.setElementSize(e,t,n)},this.scaleImageExactSizeInParent=function(e,t,i,n,r,o){var a=e.parent(),s=v.getElementSize(a);s.width&lt;n&amp;&amp;(n=s.width),s.height&lt;r&amp;&amp;(r=s.height);var l=v.getImageInsideParentData(null,t,i,o,null,n,r),u=n,d=r,_=l.imageLeft,a=l.imageLeft,t=l.imageTop,i=l.imageTop,o=Math.round((s.width-n)/2),s=Math.round((s.height-r)/2),n=n-(l.imageWidth+_+a);0!=n&amp;&amp;(a+=n),0!=(n=r-(l.imageHeight+t+i))&amp;&amp;(i+=n),e.removeAttr("width"),e.removeAttr("height");n={position:"absolute",margin:"0px 0px"};n.width=u+"px",n.height=d+"px",n.left=o+"px",n.top=s+"px",n["padding-left"]=_+"px",n["padding-top"]=t+"px",n["padding-right"]=a+"px",n["padding-bottom"]=i+"px",e.css(n);n={};return n.imageWidth=u,n.imageHeight=d,n},this.showElement=function(e,t,i){e.show().fadeTo(0,1),t&amp;&amp;t.show().fadeTo(0,1),i&amp;&amp;i.show().fadeTo(0,1)},this.z_________GALLERY_RELATED_FUNCTIONS_______=function(){},this.disableButton=function(e,t){t=t||"ug-button-disabled",0==v.isButtonDisabled(e,t)&amp;&amp;e.addClass(t)},this.convertCustomPrefixOptions=function(e,n,r){if(!n)return e;var o={};return jQuery.each(e,function(e,t){var i;0===e.indexOf(n+"_"+r+"_")?(i=e.replace(n+"_"+r+"_",r+"_"),o[i]=t):o[e]=t}),o},this.enableButton=function(e,t){t=t||"ug-button-disabled",1==v.isButtonDisabled(e,t)&amp;&amp;e.removeClass(t)},this.isButtonDisabled=function(e,t){return t=t||"ug-button-disabled",!!e.hasClass(t)},this.z_________MATH_FUNCTIONS_______=function(){},this.normalizeSetting=function(e,t,i,n,r,o){return r=e+(t-e)*((r-i)/(n-i)),1==(o=o||!1)&amp;&amp;(r&lt;e&amp;&amp;(r=e),t&lt;r&amp;&amp;(r=t)),r},this.getNormalizedValue=function(e,t,i,n,r){return r=e+(n-i)*((r-e)/(t-e))},this.getDistance=function(e,t,i,n){return Math.round(Math.sqrt(Math.abs((i-e)*(i-e)+(n-t)*(n-t))))},this.getMiddlePoint=function(e,t,i,n){var r={};return r.x=e+Math.round((i-e)/2),r.y=t+Math.round((n-t)/2),r},this.getNumItemsInSpace=function(e,t,i){return Math.floor((e+i)/(t+i))},this.getNumItemsInSpaceRound=function(e,t,i){return Math.round((e+i)/(t+i))},this.getSpaceByNumItems=function(e,t,i){return e*t+(e-1)*i},this.getItemSizeInSpace=function(e,t,i){return Math.floor((e-(t-1)*i)/t)},this.getColX=function(e,t,i){return e*(t+i)},this.getColByIndex=function(e,t){return t%e},this.getColRowByIndex=function(e,t){var i=Math.floor(e/t);return{col:Math.floor(e%t),row:i}},this.getIndexByRowCol=function(e,t,i){return e&lt;0||t&lt;0?-1:e*i+t},this.getPrevRowSameColIndex=function(e,t){e=v.getColRowByIndex(e,t);return v.getIndexByRowCol(e.row-1,e.col,t)},this.getNextRowSameColIndex=function(e,t){e=v.getColRowByIndex(e,t);return v.getIndexByRowCol(e.row+1,e.col,t)},this.z_________DATA_FUNCTIONS_______=function(){},this.setGlobalData=function(e,t){jQuery.data(document.body,e,t)},this.getGlobalData=function(e){return jQuery.data(document.body,e)},this.z_________EVENT_DATA_FUNCTIONS_______=function(){},this.handleScrollTop=function(e){if(0==v.isTouchDevice())return null;var t=v.getStoredEventData(e);if(null===t.scrollDir&amp;&amp;(15&lt;Math.abs(t.diffMouseX)?t.scrollDir="hor":15&lt;Math.abs(t.diffMouseY)&amp;&amp;Math.abs(t.diffMouseY)&gt;Math.abs(t.diffMouseX)&amp;&amp;(t.scrollDir="vert",t.scrollStartY=t.lastMouseClientY,t.scrollOrigin=jQuery(document).scrollTop(),o.dataCache[e].scrollStartY=t.lastMouseClientY,o.dataCache[e].scrollOrigin=t.scrollOrigin),o.dataCache[e].scrollDir=t.scrollDir),"vert"!==t.scrollDir)return t.scrollDir;jQuery(document).scrollTop();e=t.scrollOrigin-(t.lastMouseClientY-t.scrollStartY);return 0&lt;=e&amp;&amp;jQuery(document).scrollTop(e),t.scrollDir},this.wasVerticalScroll=function(e){return"vert"===v.getStoredEventData(e).scrollDir},this.storeEventData=function(e,t,i){var n=v.getMousePosition(e),e=jQuery.now(),n={startTime:e,lastTime:e,startMouseX:n.pageX,startMouseY:n.pageY,lastMouseX:n.pageX,lastMouseY:n.pageY,startMouseClientY:n.clientY,lastMouseClientY:n.clientY,scrollTop:jQuery(document).scrollTop(),scrollDir:null};i&amp;&amp;(n=jQuery.extend(n,i)),o.dataCache[t]=n},this.updateStoredEventData=function(e,t,i){if(!o.dataCache[t])throw new Error("updateEventData error: must have stored cache object");var n=o.dataCache[t],e=v.getMousePosition(e);n.lastTime=jQuery.now(),void 0!==e.pageX&amp;&amp;(n.lastMouseX=e.pageX,n.lastMouseY=e.pageY,n.lastMouseClientY=e.clientY),i&amp;&amp;(n=jQuery.extend(n,i)),o.dataCache[t]=n},this.getStoredEventData=function(e,t){if(!o.dataCache[e])throw new Error("updateEventData error: must have stored cache object");e=o.dataCache[e];return e.diffMouseX=e.lastMouseX-e.startMouseX,e.diffMouseY=e.lastMouseY-e.startMouseY,e.diffMouseClientY=e.lastMouseClientY-e.startMouseClientY,e.diffTime=e.lastTime-e.startTime,!0===t?(e.startMousePos=e.lastMouseY,e.lastMousePos=e.lastMouseY,e.diffMousePos=e.diffMouseY):(e.startMousePos=e.lastMouseX,e.lastMousePos=e.lastMouseX,e.diffMousePos=e.diffMouseX),e},this.isApproveStoredEventClick=function(e,t){if(!o.dataCache[e])return!0;e=v.getStoredEventData(e,t),t=Math.abs(e.diffMousePos);return!(400&lt;e.diffTime)&amp;&amp;!(30&lt;t)},this.clearStoredEventData=function(e){o.dataCache[e]=null},this.z_________CHECK_SUPPORT_FUNCTIONS_______=function(){},this.isCanvasExists=function(){return"function"==typeof jQuery('&lt;canvas width="500" height="500" &gt; &lt;/canvas&gt;')[0].getContext},this.isScrollbarExists=function(){return window.innerWidth&gt;document.documentElement.clientWidth},this.isTouchDevice=function(){if(-1!==o.isTouchDevice)return o.isTouchDevice;try{document.createEvent("TouchEvent"),o.isTouchDevice=!0}catch(e){o.isTouchDevice=!1}return o.isTouchDevice},this.isRgbaSupported=function(){if(-1!==o.isRgbaSupported)return o.isRgbaSupported;var e=document.getElementsByTagName("script")[0],t=e.style.color;try{e.style.color="rgba(1,5,13,0.44)"}catch(e){}var i=e.style.color!=t;return e.style.color=t,o.isRgbaSupported=i},this.z_________GENERAL_FUNCTIONS_______=function(){},this.checkMinJqueryVersion=function(e){for(var t=jQuery.fn.jquery.split("."),i=e.split("."),n=0,r=t.length;n&lt;r;n++){var o=parseInt(t[n]),a=parseInt(i[n]);if(void 0===i[n])return!0;if(o&lt;a)return!1;if(a&lt;o)return!0}return!0},this.getCssSizeParam=function(e){return jQuery.isNumeric(e)?e+"px":e},this.convertHexToRGB=function(e,t){try{var i=e.replace("#","");if(i===e)return e;var n="rgba("+parseInt(i.substring(0,2),16)+","+parseInt(i.substring(2,4),16)+","+parseInt(i.substring(4,6),16)+","+t+")"}catch(e){n="rgba(0,0,0,1)";trace("error in convertHexToRGB function"),trace(e),trace("hex: "+i)}return n},this.timestampToString=function(e){var t=new Date(e),e=t.getDate()+"/"+t.getMonth();return e+=" "+t.getHours()+":"+t.getMinutes()+":"+t.getSeconds()+":"+t.getMilliseconds()},this.getArrTouches=function(e){var t=[];return e.originalEvent&amp;&amp;e.originalEvent.touches&amp;&amp;0&lt;e.originalEvent.touches.length&amp;&amp;(t=e.originalEvent.touches),t},this.getArrTouchPositions=function(e){for(var t=[],i=0;i&lt;e.length;i++){var n={pageX:e[i].pageX,pageY:e[i].pageY};t.push(n)}return t},this.startTimeDebug=function(){o.starTime=jQuery.now()},this.showTimeDebug=function(){debugLine({"Time Passed":jQuery.now()-o.starTime},!0)},this.initProgressIndicator=function(e,t,i){switch("bar"!=e&amp;&amp;0==v.isCanvasExists()&amp;&amp;(e="bar"),e){case"bar":(n=new UGProgressBar).putHidden(i,t);break;default:case"pie":(n=new UGProgressPie).putHidden(i,t);break;case"pie2":var n;t.type_fill=!0,(n=new UGProgressPie).putHidden(i,t)}return n},this.setButtonMobileReady=function(e){e.on("touchstart",function(e){jQuery(this).addClass("ug-nohover")}),e.on("mousedown touchend",function(e){return e.stopPropagation(),e.stopImmediatePropagation(),!1})},this.registerTheme=function(e){o.arrThemes.push(e)},this.getArrThemes=function(){return o.arrThemes},this.isThemeRegistered=function(e){return-1!==jQuery.inArray(e,o.arrThemes)},this.getFirstRegisteredTheme=function(){return 0==o.arrThemes.length?"":o.arrThemes[0]},this.isTimePassed=function(e,t){t=t||100;var i=jQuery.now();lastTime=0==o.timeCache.hasOwnProperty(e)?0:o.timeCache[e];var n=i-lastTime;return o.timeCache[e]=i,!(n&lt;=t)},this.whenContiniousEventOver=function(e,t,i){i=i||300,1==o.timeCache.hasOwnProperty(e)&amp;&amp;null!=o.timeCache[e]&amp;&amp;(clearTimeout(o.timeCache[e]),o.timeCache[e]=null),o.timeCache[e]=setTimeout(t,i)},this.validateClickTouchstartEvent=function(e){var t=!0,i=jQuery.now()-o.lastEventTime;return"click"==e&amp;&amp;"touchstart"==o.lastEventType&amp;&amp;i&lt;1e3&amp;&amp;(t=!1),o.lastEventTime=jQuery.now(),o.lastEventType=e,t},this.addClassOnHover=function(e,t){t=t||"ug-button-hover",e.hover(function(){jQuery(this).addClass(t)},function(){jQuery(this).removeClass(t)})},this.destroyButton=function(e){e.off("mouseenter"),e.off("mouseleave"),e.off("click"),e.off("touchstart"),e.off("touchend"),e.off("mousedown"),e.off("tap")},this.setButtonOnClick=function(e,i){v.setButtonMobileReady(e),e.on("click touchstart",function(e){var t=jQuery(this);if(e.stopPropagation(),e.stopImmediatePropagation(),0==v.validateClickTouchstartEvent(e.type))return!0;i(t,e)})},this.setButtonOnTap=function(e,t){e.on("tap",t),0==v.isTouchDevice()?e.on("click",function(e){var t=jQuery(this);if(0==v.validateClickTouchstartEvent(e.type))return!0;t.trigger("tap")}):(e.on("touchstart",function(e){jQuery(this).addClass("ug-nohover"),o.lastTouchStartElement=jQuery(this),o.lastEventTime=jQuery.now()}),e.on("touchend",function(e){var t=jQuery(this);return 0==t.is(o.lastTouchStartElement)||(!o.lastEventTime||(jQuery.now()-o.lastEventTime&gt;o.touchThreshold||void t.trigger("tap")))}))},this.loadJs=function(e,t){!0===t&amp;&amp;(e=location.protocol+"//"+e);t=document.createElement("script");t.src=e;e=document.getElementsByTagName("script")[0];e.parentNode.insertBefore(t,e)},this.loadCss=function(e,t){!0===t&amp;&amp;(e=location.protocol+"//"+e);t=document.createElement("link");t.setAttribute("rel","stylesheet"),t.setAttribute("type","text/css"),t.setAttribute("href",e),document.getElementsByTagName("head")[0].appendChild(t)},this.addEvent=function(e,t,i){void 0!==e.addEventListener?e.addEventListener(t,i,!1):e.attachEvent&amp;&amp;e.attachEvent("on"+t,i)},this.checkImagesLoaded=function(n,i,r){var o=0,a=n.length;if(0==a&amp;&amp;i)return i(),!1;function s(e,t){o++,"function"==typeof r&amp;&amp;setTimeout(function(){r(e,t)}),o==a&amp;&amp;"function"==typeof i&amp;&amp;setTimeout(function(){i()})}setTimeout(function(){for(var e=0;e&lt;a;e++){var t,i=n[e];void 0!==i.naturalWidth&amp;&amp;0!==i.naturalWidth?s(n[e],!1):((t=jQuery("&lt;img/&gt;")).data("index",e),t.on("load",function(){var e=jQuery(this).data("index");s(n[e],!1)}),t.on("error",function(){var e=jQuery(this).data("index");s(n[e],!0)}),t.attr("src",i.src))}})},this.waitForWidth=function(e,t){var i=e.width();if(0!=i)return t(),!1;o.handle=setInterval(function(){0!=e.width()&amp;&amp;(clearInterval(o.handle),t())},300)},this.arrayShuffle=function(e){if("object"!=typeof e)return e;for(var t,i,n=e.length;n;t=parseInt(Math.random()*n),i=e[--n],e[n]=e[t],e[t]=i);return e},this.getObjectLength=function(e){var t,i=0;for(t in e)i++;return i},this.normalizePercent=function(e){return e&lt;0&amp;&amp;(e=0),1&lt;e&amp;&amp;(e=1),e},this.stripTags=function(e){return"string"!=typeof e?e:e.replace(/(&lt;([^&gt;]+)&gt;)/gi,"")},this.escapeDoubleSlash=function(e){return e.replace('"','"')},this.htmlentitles=function(e){return jQuery("&lt;div/&gt;").text(e).html()},this.z_________END_GENERAL_FUNCTIONS_______=function(){}}!function(e){"function"==typeof define&amp;&amp;define.amd?define(["jquery"],e):"object"==typeof exports?module.exports=e:e(jQuery)}(function(l){function t(e){var t,i,n=e||window.event,r=c.call(arguments,1),o=0,a=0,s=0;if(e=l.event.fix(n),e.type="mousewheel","detail"in n&amp;&amp;(s=-1*n.detail),"wheelDelta"in n&amp;&amp;(s=n.wheelDelta),"wheelDeltaY"in n&amp;&amp;(s=n.wheelDeltaY),"wheelDeltaX"in n&amp;&amp;(a=-1*n.wheelDeltaX),"axis"in n&amp;&amp;n.axis===n.HORIZONTAL_AXIS&amp;&amp;(a=-1*s,s=0),o=0===s?a:s,"deltaY"in n&amp;&amp;(s=-1*n.deltaY,o=s),"deltaX"in n&amp;&amp;(a=n.deltaX,0===s&amp;&amp;(o=-1*a)),0!==s||0!==a)return 1===n.deltaMode?(o*=i=l.data(this,"mousewheel-line-height"),s*=i,a*=i):2===n.deltaMode&amp;&amp;(o*=i=l.data(this,"mousewheel-page-height"),s*=i,a*=i),t=Math.max(Math.abs(s),Math.abs(a)),(!g||t&lt;g)&amp;&amp;(d(n,g=t)&amp;&amp;(g/=40)),d(n,t)&amp;&amp;(o/=40,a/=40,s/=40),o=Math[1&lt;=o?"floor":"ceil"](o/g),a=Math[1&lt;=a?"floor":"ceil"](a/g),s=Math[1&lt;=s?"floor":"ceil"](s/g),e.deltaX=a,e.deltaY=s,e.deltaFactor=g,e.deltaMode=0,r.unshift(e,o,a,s),_&amp;&amp;clearTimeout(_),_=setTimeout(u,200),(l.event.dispatch||l.event.handle).apply(this,r)}function u(){g=null}function d(e,t){return r.settings.adjustOldDeltas&amp;&amp;"mousewheel"===e.type&amp;&amp;t%120==0}var _,g,e=["wheel","mousewheel","DOMMouseScroll","MozMousePixelScroll"],i="onwheel"in document||9&lt;=document.documentMode?["wheel"]:["mousewheel","DomMouseScroll","MozMousePixelScroll"],c=Array.prototype.slice;if(l.event.fixHooks)for(var n=e.length;n;)l.event.fixHooks[e[--n]]=l.event.mouseHooks;var r=l.event.special.mousewheel={version:"3.1.9",setup:function(){if(this.addEventListener)for(var e=i.length;e;)this.addEventListener(i[--e],t,!1);else this.onmousewheel=t;l.data(this,"mousewheel-line-height",r.getLineHeight(this)),l.data(this,"mousewheel-page-height",r.getPageHeight(this))},teardown:function(){if(this.removeEventListener)for(var e=i.length;e;)this.removeEventListener(i[--e],t,!1);else this.onmousewheel=null},getLineHeight:function(e){return parseInt(l(e)["offsetParent"in l.fn?"offsetParent":"parent"]().css("fontSize"),10)},getPageHeight:function(e){return l(e).height()},settings:{adjustOldDeltas:!0}};l.fn.extend({mousewheel:function(e){return e?this.bind("mousewheel",e):this.trigger("mousewheel")},unmousewheel:function(e){return this.unbind("mousewheel",e)}})}),function(e){"function"==typeof define&amp;&amp;define.amd?define(["jquery"],e):"object"==typeof module&amp;&amp;"object"==typeof module.exports?exports=e(require("jquery")):e(jQuery)}(function(t){t.easing.jswing=t.easing.swing;var i=Math.pow,n=Math.sqrt,r=Math.sin,o=Math.cos,a=Math.PI,s=1.70158,l=1.525*s,u=1+s,d=2*a/3,_=2*a/4.5;function g(e){var t=7.5625,i=2.75;return e&lt;1/i?t*e*e:e&lt;2/i?t*(e-=1.5/i)*e+.75:e&lt;2.5/i?t*(e-=2.25/i)*e+.9375:t*(e-=2.625/i)*e+.984375}t.extend(t.easing,{def:"easeOutQuad",swing:function(e){return t.easing[t.easing.def](e)},easeInQuad:function(e){return e*e},easeOutQuad:function(e){return 1-(1-e)*(1-e)},easeInOutQuad:function(e){return e&lt;.5?2*e*e:1-i(-2*e+2,2)/2},easeInCubic:function(e){return e*e*e},easeOutCubic:function(e){return 1-i(1-e,3)},easeInOutCubic:function(e){return e&lt;.5?4*e*e*e:1-i(-2*e+2,3)/2},easeInQuart:function(e){return e*e*e*e},easeOutQuart:function(e){return 1-i(1-e,4)},easeInOutQuart:function(e){return e&lt;.5?8*e*e*e*e:1-i(-2*e+2,4)/2},easeInQuint:function(e){return e*e*e*e*e},easeOutQuint:function(e){return 1-i(1-e,5)},easeInOutQuint:function(e){return e&lt;.5?16*e*e*e*e*e:1-i(-2*e+2,5)/2},easeInSine:function(e){return 1-o(e*a/2)},easeOutSine:function(e){return r(e*a/2)},easeInOutSine:function(e){return-(o(a*e)-1)/2},easeInExpo:function(e){return 0===e?0:i(2,10*e-10)},easeOutExpo:function(e){return 1===e?1:1-i(2,-10*e)},easeInOutExpo:function(e){return 0===e?0:1===e?1:e&lt;.5?i(2,20*e-10)/2:(2-i(2,-20*e+10))/2},easeInCirc:function(e){return 1-n(1-i(e,2))},easeOutCirc:function(e){return n(1-i(e-1,2))},easeInOutCirc:function(e){return e&lt;.5?(1-n(1-i(2*e,2)))/2:(n(1-i(-2*e+2,2))+1)/2},easeInElastic:function(e){return 0===e?0:1===e?1:-i(2,10*e-10)*r((10*e-10.75)*d)},easeOutElastic:function(e){return 0===e?0:1===e?1:i(2,-10*e)*r((10*e-.75)*d)+1},easeInOutElastic:function(e){return 0===e?0:1===e?1:e&lt;.5?-(i(2,20*e-10)*r((20*e-11.125)*_))/2:i(2,-20*e+10)*r((20*e-11.125)*_)/2+1},easeInBack:function(e){return u*e*e*e-s*e*e},easeOutBack:function(e){return 1+u*i(e-1,3)+s*i(e-1,2)},easeInOutBack:function(e){return e&lt;.5?i(2*e,2)*(2*(1+l)*e-l)/2:(i(2*e-2,2)*((1+l)*(2*e-2)+l)+2)/2},easeInBounce:function(e){return 1-g(1-e)},easeOutBounce:g,easeInOutBounce:function(e){return e&lt;.5?(1-g(1-2*e))/2:(1+g(2*e-1))/2}})}),function(d,_){var s,g,e,c,h,p,a,t,m;function f(e,t,i){var n=p[t.type]||{};return null==e?i||!t.def?null:t.def:(e=n.floor?~~e:parseFloat(e),isNaN(e)?t.def:n.mod?(e+n.mod)%n.mod:e&lt;0?0:n.max&lt;e?n.max:e)}function l(n){var r=c(),o=r._rgba=[];return n=n.toLowerCase(),m(e,function(e,t){var i=t.re.exec(n),i=i&amp;&amp;t.parse(i),t=t.space||"rgba";return i?(i=r[t](i),r[h[t].cache]=i[h[t].cache],o=r._rgba=i._rgba,!1):void 0}),o.length?("0,0,0,0"===o.join()&amp;&amp;d.extend(o,s.transparent),r):s[n]}function r(e,t,i){return 6*(i=(i+1)%1)&lt;1?e+(t-e)*i*6:2*i&lt;1?t:3*i&lt;2?e+(t-e)*(2/3-i)*6:e}void 0!==d.cssHooks&amp;&amp;(g=/^([\-+])=\s*(\d+\.?\d*)/,e=[{re:/rgba?\(\s*(\d{1,3})\s*,\s*(\d{1,3})\s*,\s*(\d{1,3})\s*(?:,\s*(\d?(?:\.\d+)?)\s*)?\)/,parse:function(e){return[e[1],e[2],e[3],e[4]]}},{re:/rgba?\(\s*(\d+(?:\.\d+)?)\%\s*,\s*(\d+(?:\.\d+)?)\%\s*,\s*(\d+(?:\.\d+)?)\%\s*(?:,\s*(\d?(?:\.\d+)?)\s*)?\)/,parse:function(e){return[2.55*e[1],2.55*e[2],2.55*e[3],e[4]]}},{re:/#([a-f0-9]{2})([a-f0-9]{2})([a-f0-9]{2})/,parse:function(e){return[parseInt(e[1],16),parseInt(e[2],16),parseInt(e[3],16)]}},{re:/#([a-f0-9])([a-f0-9])([a-f0-9])/,parse:function(e){return[parseInt(e[1]+e[1],16),parseInt(e[2]+e[2],16),parseInt(e[3]+e[3],16)]}},{re:/hsla?\(\s*(\d+(?:\.\d+)?)\s*,\s*(\d+(?:\.\d+)?)\%\s*,\s*(\d+(?:\.\d+)?)\%\s*(?:,\s*(\d?(?:\.\d+)?)\s*)?\)/,space:"hsla",parse:function(e){return[e[1],e[2]/100,e[3]/100,e[4]]}}],c=d.Color=function(e,t,i,n){return new d.Color.fn.parse(e,t,i,n)},h={rgba:{props:{red:{idx:0,type:"byte"},green:{idx:1,type:"byte"},blue:{idx:2,type:"byte"}}},hsla:{props:{hue:{idx:0,type:"degrees"},saturation:{idx:1,type:"percent"},lightness:{idx:2,type:"percent"}}}},p={byte:{floor:!0,max:255},percent:{max:1},degrees:{mod:360,floor:!0}},a=c.support={},t=d("&lt;p&gt;")[0],m=d.each,t.style.cssText="background-color:rgba(1,1,1,.5)",a.rgba=-1&lt;t.style.backgroundColor.indexOf("rgba"),m(h,function(e,t){t.cache="_"+e,t.props.alpha={idx:3,type:"percent",def:1}}),c.fn=d.extend(c.prototype,{parse:function(r,e,t,i){if(r===_)return this._rgba=[null,null,null,null],this;(r.jquery||r.nodeType)&amp;&amp;(r=d(r).css(e),e=_);var o=this,n=d.type(r),a=this._rgba=[];return e!==_&amp;&amp;(r=[r,e,t,i],n="array"),"string"===n?this.parse(l(r)||s._default):"array"===n?(m(h.rgba.props,function(e,t){a[t.idx]=f(r[t.idx],t)}),this):"object"===n?(m(h,r instanceof c?function(e,t){r[t.cache]&amp;&amp;(o[t.cache]=r[t.cache].slice())}:function(e,i){var n=i.cache;m(i.props,function(e,t){if(!o[n]&amp;&amp;i.to){if("alpha"===e||null==r[e])return;o[n]=i.to(o._rgba)}o[n][t.idx]=f(r[e],t,!0)}),o[n]&amp;&amp;d.inArray(null,o[n].slice(0,3))&lt;0&amp;&amp;(o[n][3]=1,i.from&amp;&amp;(o._rgba=i.from(o[n])))}),this):void 0},is:function(e){var r=c(e),o=!0,a=this;return m(h,function(e,t){var i,n=r[t.cache];return n&amp;&amp;(i=a[t.cache]||t.to&amp;&amp;t.to(a._rgba)||[],m(t.props,function(e,t){return null!=n[t.idx]?o=n[t.idx]===i[t.idx]:void 0})),o}),o},_space:function(){var i=[],n=this;return m(h,function(e,t){n[t.cache]&amp;&amp;i.push(e)}),i.pop()},transition:function(e,a){var t=(u=c(e))._space(),i=h[t],e=0===this.alpha()?c("transparent"):this,s=e[i.cache]||i.to(e._rgba),l=s.slice(),u=u[i.cache];return m(i.props,function(e,t){var i=t.idx,n=s[i],r=u[i],o=p[t.type]||{};null!==r&amp;&amp;(null===n?l[i]=r:(o.mod&amp;&amp;(o.mod/2&lt;r-n?n+=o.mod:o.mod/2&lt;n-r&amp;&amp;(n-=o.mod)),l[i]=f((r-n)*a+n,t)))}),this[t](l)},blend:function(e){if(1===this._rgba[3])return this;var t=this._rgba.slice(),i=t.pop(),n=c(e)._rgba;return c(d.map(t,function(e,t){return(1-i)*n[t]+i*e}))},toRgbaString:function(){var e="rgba(",t=d.map(this._rgba,function(e,t){return null==e?2&lt;t?1:0:e});return 1===t[3]&amp;&amp;(t.pop(),e="rgb("),e+t.join()+")"},toHslaString:function(){var e="hsla(",t=d.map(this.hsla(),function(e,t){return null==e&amp;&amp;(e=2&lt;t?1:0),t&amp;&amp;t&lt;3&amp;&amp;(e=Math.round(100*e)+"%"),e});return 1===t[3]&amp;&amp;(t.pop(),e="hsl("),e+t.join()+")"},toHexString:function(e){var t=this._rgba.slice(),i=t.pop();return e&amp;&amp;t.push(~~(255*i)),"#"+d.map(t,function(e){return 1===(e=(e||0).toString(16)).length?"0"+e:e}).join("")},toString:function(){return 0===this._rgba[3]?"transparent":this.toRgbaString()}}),c.fn.parse.prototype=c.fn,h.hsla.to=function(e){if(null==e[0]||null==e[1]||null==e[2])return[null,null,null,e[3]];var t=e[0]/255,i=e[1]/255,n=e[2]/255,r=e[3],o=Math.max(t,i,n),a=Math.min(t,i,n),s=o-a,l=o+a,e=.5*l,i=a===o?0:t===o?60*(i-n)/s+360:i===o?60*(n-t)/s+120:60*(t-i)/s+240,l=0==s?0:e&lt;=.5?s/l:s/(2-l);return[Math.round(i)%360,l,e,null==r?1:r]},h.hsla.from=function(e){if(null==e[0]||null==e[1]||null==e[2])return[null,null,null,e[3]];var t=e[0]/360,i=e[1],n=e[2],e=e[3],i=n&lt;=.5?n*(1+i):n+i-n*i,n=2*n-i;return[Math.round(255*r(n,i,t+1/3)),Math.round(255*r(n,i,t)),Math.round(255*r(n,i,t-1/3)),e]},m(h,function(s,e){var o=e.props,a=e.cache,l=e.to,u=e.from;c.fn[s]=function(e){if(l&amp;&amp;!this[a]&amp;&amp;(this[a]=l(this._rgba)),e===_)return this[a].slice();var t,i=d.type(e),n="array"===i||"object"===i?e:arguments,r=this[a].slice();return m(o,function(e,t){e=n["object"===i?e:t.idx];null==e&amp;&amp;(e=r[t.idx]),r[t.idx]=f(e,t)}),u?((t=c(u(r)))[a]=r,t):c(r)},m(o,function(o,a){c.fn[o]||(c.fn[o]=function(e){var t=d.type(e),i="alpha"===o?this._hsla?"hsla":"rgba":s,n=this[i](),r=n[a.idx];return"undefined"===t?r:("function"===t&amp;&amp;(e=e.call(this,r),t=d.type(e)),null==e&amp;&amp;a.empty?this:("string"===t&amp;&amp;((t=g.exec(e))&amp;&amp;(e=r+parseFloat(t[2])*("+"===t[1]?1:-1))),n[a.idx]=e,this[i](n)))})})}),c.hook=function(e){e=e.split(" ");m(e,function(e,o){d.cssHooks[o]={set:function(e,t){var i,n,r="";if("transparent"!==t&amp;&amp;("string"!==d.type(t)||(i=l(t)))){if(t=c(i||t),!a.rgba&amp;&amp;1!==t._rgba[3]){for(n="backgroundColor"===o?e.parentNode:e;(""===r||"transparent"===r)&amp;&amp;n&amp;&amp;n.style;)try{r=d.css(n,"backgroundColor"),n=n.parentNode}catch(e){}t=t.blend(r&amp;&amp;"transparent"!==r?r:"_default")}t=t.toRgbaString()}try{e.style[o]=t}catch(e){}}},d.fx.step[o]=function(e){e.colorInit||(e.start=c(e.elem,o),e.end=c(e.end),e.colorInit=!0),d.cssHooks[o].set(e.elem,e.start.transition(e.end,e.pos))}})},c.hook("backgroundColor borderBottomColor borderLeftColor borderRightColor borderTopColor color columnRuleColor outlineColor textDecorationColor textEmphasisColor"),d.cssHooks.borderColor={expand:function(i){var n={};return m(["Top","Right","Bottom","Left"],function(e,t){n["border"+t+"Color"]=i}),n}},s=d.Color.names={aqua:"#00ffff",black:"#000000",blue:"#0000ff",fuchsia:"#ff00ff",gray:"#808080",green:"#008000",lime:"#00ff00",maroon:"#800000",navy:"#000080",olive:"#808000",purple:"#800080",red:"#ff0000",silver:"#c0c0c0",teal:"#008080",white:"#ffffff",yellow:"#ffff00",transparent:[null,null,null,0],_default:"#ffffff"})}(jQuery),function(n){n.mlp={x:0,y:0},n(function e(){try{var t=this===document?n(this):n(this).contents()}catch(e){return!1}t.mousemove(function(e){n.mlp={x:e.pageX,y:e.pageY}}),t.find("iframe").on("load",e)}),n.fn.ismouseover=function(){var i=!1;return this.eq(0).each(function(){var e=n(this).is("iframe")?n(this).contents().find("body"):n(this),t=e.offset();i=t.left&lt;=n.mlp.x&amp;&amp;t.left+e.outerWidth()&gt;n.mlp.x&amp;&amp;t.top&lt;=n.mlp.y&amp;&amp;t.top+e.outerHeight()&gt;n.mlp.y}),i}}(jQuery);var g_ugFunctions=new UGFunctions;function UGThumbsGeneral(){var i,n,l,u,o=this,r=jQuery(o),a=new UniteGalleryMain,s=new UGFunctions;this.type={GET_THUMBS_ALL:"all",GET_THUMBS_RATIO:"ratio",GET_THUMBS_NO_RATIO:"no_ratio",GET_THUMBS_NEW:"new"};var d={thumb_width:88,thumb_height:50,thumb_fixed_size:!0,thumb_resize_by:"height",thumb_border_effect:!0,thumb_border_width:0,thumb_border_color:"#000000",thumb_over_border_width:0,thumb_over_border_color:"#d9d9d9",thumb_selected_border_width:1,thumb_selected_border_color:"#d9d9d9",thumb_round_corners_radius:0,thumb_color_overlay_effect:!0,thumb_overlay_color:"#000000",thumb_overlay_opacity:.4,thumb_overlay_reverse:!(this.events={SETOVERSTYLE:"thumbmouseover",SETNORMALSTYLE:"thumbmouseout",SETSELECTEDSTYLE:"thumbsetselected",PLACEIMAGE:"thumbplaceimage",AFTERPLACEIMAGE:"thumb_after_place_image",IMAGELOADERROR:"thumbimageloaderror",THUMB_IMAGE_LOADED:"thumb_image_loaded"}),thumb_image_overlay_effect:!1,thumb_image_overlay_type:"bw",thumb_transition_duration:200,thumb_transition_easing:"easeOutQuad",thumb_show_loader:!0,thumb_loader_type:"dark",thumb_wrapper_as_link:!1,thumb_link_newpage:!1},_={touchEnabled:!1,num_thumbs_checking:0,customThumbs:!1,funcSetCustomThumbHtml:null,isEffectBorder:!1,isEffectOverlay:!1,isEffectImage:!1,colorOverlayOpacity:1,thumbInnerReduce:0,allowOnResize:!0,classNewThumb:"ug-new-thumb"},t="thumb_size_change";function g(e,t){var i=l[e],n="";0==_.customThumbs&amp;&amp;(n=" ug-thumb-generated");var r,o,a="&lt;div class='ug-thumb-wrapper"+n+"' "+("style='z-index:"+(i.index+1)+";'")+"&gt;&lt;/div&gt;";1==d.thumb_wrapper_as_link&amp;&amp;(r=i.link,""==i.link&amp;&amp;(r="javascript:void(0)"),o="",1==d.thumb_link_newpage&amp;&amp;i.link&amp;&amp;(o=" target='_blank'"),a="&lt;a href='"+r+"'"+o+" class='ug-thumb-wrapper"+n+"'&gt;&lt;/a&gt;");var s,n=jQuery(a),a=i.objThumbImage;return 0==_.customThumbs&amp;&amp;(1==d.thumb_show_loader&amp;&amp;a&amp;&amp;(s="ug-thumb-loader-dark","bright"==d.thumb_loader_type&amp;&amp;(s="ug-thumb-loader-bright"),n.append("&lt;div class='ug-thumb-loader "+s+"'&gt;&lt;/div&gt;"),n.append("&lt;div class='ug-thumb-error' style='display:none'&gt;&lt;/div&gt;")),a&amp;&amp;(a.addClass("ug-thumb-image"),1==d.thumb_image_overlay_effect&amp;&amp;((s=a.clone().appendTo(n)).addClass("ug-thumb-image-overlay "+t).removeClass("ug-thumb-image"),s.fadeTo(0,0),i.objImageOverlay=s),n.append(a))),_.isEffectBorder&amp;&amp;n.append("&lt;div class='ug-thumb-border-overlay'&gt;&lt;/div&gt;"),_.isEffectOverlay&amp;&amp;n.append("&lt;div class='ug-thumb-overlay'&gt;&lt;/div&gt;"),u.append(n),_.customThumbs&amp;&amp;_.funcSetCustomThumbHtml(n,i),l[e].objThumbWrapper=n}function c(e,t,i,n){var r={width:e+"px",height:t+"px"},e={width:e-_.thumbInnerReduce+"px",height:t-_.thumbInnerReduce+"px"},t=".ug-thumb-loader, .ug-thumb-error, .ug-thumb-border-overlay, .ug-thumb-overlay";i?(!0!==n&amp;&amp;i.css(r),i.find(t).css(e)):(u.children(".ug-thumb-wrapper").css(r),u.find(t).css(e))}function h(e,t,i,n){n=n||!1,a.isFakeFullscreen()&amp;&amp;(n=!0);var r=e.children(".ug-thumb-border-overlay"),e={};e["border-width"]=t+"px",0!=t&amp;&amp;(e["border-color"]=i),n&amp;&amp;!0===n?(r.css(e),0==t?r.hide():r.show()):(0==t?r.stop().fadeOut(d.thumb_transition_duration):r.show().stop().fadeIn(d.thumb_transition_duration),e=e,r.stop(!0).animate(e,{duration:d.thumb_transition_duration,easing:d.thumb_transition_easing,queue:!1}))}function p(e,t,i){var n=e.children(".ug-thumb-overlay"),e=d.thumb_transition_duration;i&amp;&amp;!0===i&amp;&amp;(e=0),t?n.stop(!0).fadeTo(e,_.colorOverlayOpacity):n.stop(!0).fadeTo(e,0)}function m(e,t,i){var n=e.children("img.ug-thumb-image"),r=e.children("img.ug-thumb-image-overlay"),e=d.thumb_transition_duration;i&amp;&amp;!0===i&amp;&amp;(e=0),t?r.stop(!0).fadeTo(e,1):(n.fadeTo(0,1),r.stop(!0).fadeTo(e,0))}function f(e,t){_.isEffectBorder&amp;&amp;h(e,d.thumb_selected_border_width,d.thumb_selected_border_color,t),_.isEffectOverlay&amp;&amp;p(e,1==d.thumb_overlay_reverse,t),_.isEffectImage&amp;&amp;m(e,!1,t),r.trigger(o.events.SETSELECTEDSTYLE,e)}function b(e){1==y(e)?f(e,!0):o.setThumbNormalStyle(e,!0,"redraw")}function v(e,t){var i,n;1==d.thumb_fixed_size?s.scaleImageCoverParent(t,e):("height"==d.thumb_resize_by?s.scaleImageByHeight(t,d.thumb_height):s.scaleImageByWidth(t,d.thumb_width),n=s.getElementSize(t),s.placeElement(t,0,0),c(n.width,n.height,e)),e.children(".ug-thumb-loader").hide(),t.show(),0==d.thumb_image_overlay_effect?t.fadeTo(0,1):(1!=d.thumb_image_overlay_effect||0!=(n=(i=t).siblings(".ug-thumb-image-overlay")).length&amp;&amp;(i={width:(i=s.getElementSize(i)).width+"px",height:i.height+"px",left:i.left+"px",top:i.top+"px"},n.css(i),0==_.customThumbs&amp;&amp;n.fadeTo(0,1)),t.fadeTo(0,0),b(e)),r.trigger(o.events.AFTERPLACEIMAGE,e)}function y(e){return!!e.hasClass("ug-thumb-selected")}function w(e,t){t=jQuery(t);o.getItemByThumb(t);var i=s.getElementSize(t);c(i.width,i.height,t,!0),b(t)}function I(e,t,i){var n=o.getItemByThumb(t);n.isLoaded=!0,n.isThumbImageLoaded=!0;i=s.getImageOriginalSize(i);n.thumbWidth=i.width,n.thumbHeight=i.height,n.thumbRatioByWidth=i.width/i.height,n.thumbRatioByHeight=i.height/i.width,t.addClass("ug-thumb-ratio-set")}this.init=function(e,t){i=e.getObjects(),a=e,jQuery(e),n=i.g_objWrapper,l=i.g_arrItems,d=jQuery.extend(d,t),_.isEffectBorder=d.thumb_border_effect,_.isEffectOverlay=d.thumb_color_overlay_effect,_.isEffectImage=d.thumb_image_overlay_effect},this._____________EXTERNAL_SETTERS__________=function(){},this.setHtmlThumbs=function(e,t){var i;if(u=e,1==_.isEffectImage&amp;&amp;(i=function(){var e,t="",i=d.thumb_image_overlay_type.split(",");for(e in i)switch(i[e]){case"bw":t+=" ug-bw-effect";break;case"blur":t+=" ug-blur-effect";break;case"sepia":t+=" ug-sepia-effect"}return t}()),!0!==t)for(var n=a.getNumItems(),r=0;r&lt;n;r++)g(r,i);else{o.getThumbs().removeClass(_.classNewThumb);t=a.getNewAddedItemsIndexes();jQuery.each(t,function(e,t){g(t,i).addClass(_.classNewThumb)})}},this.setThumbNormalStyle=function(e,t,i){1==_.customThumbs&amp;&amp;e.removeClass("ug-thumb-over"),_.isEffectBorder&amp;&amp;h(e,d.thumb_border_width,d.thumb_border_color,t),_.isEffectOverlay&amp;&amp;p(e,1!=d.thumb_overlay_reverse,t),_.isEffectImage&amp;&amp;m(e,!0,t),r.trigger(o.events.SETNORMALSTYLE,e)},this.setThumbOverStyle=function(e){1==_.customThumbs&amp;&amp;e.addClass("ug-thumb-over"),_.isEffectBorder&amp;&amp;h(e,d.thumb_over_border_width,d.thumb_over_border_color),_.isEffectOverlay&amp;&amp;p(e,1==d.thumb_overlay_reverse),1==_.isEffectImage&amp;&amp;m(e,!1),r.trigger(o.events.SETOVERSTYLE,e)},this.setHtmlProperties=function(e){var t,i;e=e||o.getThumbs(),0==_.customThumbs&amp;&amp;(1==d.thumb_fixed_size&amp;&amp;c(d.thumb_width,d.thumb_height,e),t=e,d.thumb_round_corners_radius&lt;=0||(i={"border-radius":d.thumb_round_corners_radius+"px"},t?(t.css(i),t.find(".ug-thumb-border-overlay").css(i)):u.find(".ug-thumb-wrapper, .ug-thumb-wrapper .ug-thumb-border-overlay").css(i))),e.each(function(){b(jQuery(this))}),_.isEffectOverlay&amp;&amp;d.thumb_overlay_color&amp;&amp;(t={},s.isRgbaSupported()?(i=s.convertHexToRGB(d.thumb_overlay_color,d.thumb_overlay_opacity),t["background-color"]=i):(t["background-color"]=d.thumb_overlay_color,_.colorOverlayOpacity=d.thumb_overlay_opacity),e.find(".ug-thumb-overlay").css(t))},this.setThumbSelected=function(e){if(1==_.customThumbs&amp;&amp;e.removeClass("ug-thumb-over"),1==y(e))return!0;e.addClass("ug-thumb-selected"),f(e)},this.setThumbUnselected=function(e){e.removeClass("ug-thumb-selected"),o.setThumbNormalStyle(e,!1,"set unselected")},this.setOptions=function(e){d=jQuery.extend(d,e)},this.setThumbInnerReduce=function(e){_.thumbInnerReduce=e},this.setCustomThumbs=function(e,t,i){if(_.customThumbs=!0,"function"!=typeof e)throw new Error("The argument should be function");_.funcSetCustomThumbHtml=e,-1==jQuery.inArray("overlay",t)&amp;&amp;(_.isEffectOverlay=!1),-1==jQuery.inArray("border",t)&amp;&amp;(_.isEffectBorder=!1),_.isEffectImage=!1,i&amp;&amp;!1===i.allow_onresize&amp;&amp;(_.allowOnResize=!1)},this._____________EXTERNAL_GETTERS__________=function(){},this.getOptions=function(){return d},this.getNumThumbs=function(){return l.length},this.getThumbImage=function(e){return e.find(".ug-thumb-image")},this.getThumbByIndex=function(e){var t=o.getThumbs();if(e&gt;=t.length||e&lt;0)throw new Error("Wrong thumb index");return jQuery(t[e])},this.getThumbs=function(e){var t=".ug-thumb-wrapper",i=".ug-thumb-ratio-set";switch(e){default:case o.type.GET_THUMBS_ALL:var n=u.children(t);break;case o.type.GET_THUMBS_NO_RATIO:n=u.children(t).not(i);break;case o.type.GET_THUMBS_RATIO:n=u.children(t+i);break;case o.type.GET_THUMBS_NEW:n=u.children("."+_.classNewThumb)}return n},this.getItemByThumb=function(e){var t=e.data("index");return void 0===t&amp;&amp;(t=e.index()),l[t]},this.isThumbLoaded=function(e){return o.getItemByThumb(e).isLoaded},this.getGlobalThumbSize=function(){return{width:d.thumb_width,height:d.thumb_height}},this._____________EXTERNAL_OTHERS__________=function(){},this.initEvents=function(){var e=".ug-thumb-wrapper";1==_.allowOnResize&amp;&amp;n.on(t,w),r.on(o.events.THUMB_IMAGE_LOADED,I),u.on("touchstart",e,function(){_.touchEnabled=!0,u.off("mouseenter").off("mouseleave")}),u.on("mouseenter",e,function(e){var t=jQuery(this);t=t,1==_.touchEnabled?objThumbs.off("mouseenter").off("mouseleave"):0==y(t)&amp;&amp;o.setThumbOverStyle(t)}),u.on("mouseleave",e,function(e){var t=jQuery(this);t=t,1!=_.touchEnabled&amp;&amp;0==y(t)&amp;&amp;o.setThumbNormalStyle(t,!1)})},this.destroy=function(){var e=".ug-thumb-wrapper";u.off("touchstart",e),n.off(t),u.off("mouseenter",e),u.off("mouseleave",e),r.off(o.events.THUMB_IMAGE_LOADED)},this.loadThumbsImages=function(){var e=u.find(".ug-thumb-image");s.checkImagesLoaded(e,null,function(e,t){0==t?function(e,t){t=t||!1;var i=jQuery(e);0!=(e=i.parents(".ug-thumb-wrapper")).parent().length&amp;&amp;(1==o.getItemByThumb(e).isLoaded&amp;&amp;!1===t||(o.triggerImageLoadedEvent(e,i),1==_.customThumbs?r.trigger(o.events.PLACEIMAGE,[e,i]):v(e,i)))}(e,!0):function(e){var t=o.getItemByThumb(e);if(t.isLoaded=!0,t.isThumbImageLoaded=!1,1==_.customThumbs)return r.trigger(o.events.IMAGELOADERROR,e);e.children(".ug-thumb-loader").hide(),e.children(".ug-thumb-error").show()}(jQuery(e).parent())})},this.triggerImageLoadedEvent=function(e,t){r.trigger(o.events.THUMB_IMAGE_LOADED,[e,t])},this.hideThumbs=function(){u.find(".ug-thumb-wrapper").hide()}}function UGThumbsStrip(){var a,i,n,r,s,l,u,d,_=this,g=new UniteGalleryMain,c=new UGFunctions,h=!1,p=new UGThumbsGeneral,c=new UGFunctions,m={strip_vertical_type:!1,strip_thumbs_align:"left",strip_space_between_thumbs:6,strip_thumb_touch_sensetivity:15,strip_scroll_to_thumb_duration:500,strip_scroll_to_thumb_easing:"easeOutCubic",strip_control_avia:!0,strip_control_touch:!0,strip_padding_top:0,strip_padding_bottom:0,strip_padding_left:0,strip_padding_right:0},f={isRunOnce:!1,is_placed:!1,isNotFixedThumbs:!1,handle:null},b={stripSize:0,stripActiveSize:0,stripInnerSize:0,thumbSize:0,thumbSecondSize:0};this.events={STRIP_MOVE:"stripmove",INNER_SIZE_CHANGE:"size_change"};var o={strip_thumbs_align:"top",thumb_resize_by:"width"};function v(){var e=p.getOptions();f.isNotFixedThumbs=!1===e.thumb_fixed_size,h=m.strip_vertical_type}function e(){var e,t,i,n,r,o;p.setHtmlProperties(),e=l.children(".ug-thumb-wrapper"),t=jQuery(e[0]),i=t.outerWidth(),e=t.outerHeight(),t=p.getOptions(),0==h?(b.thumbSize=i,1==t.thumb_fixed_size?b.thumbSecondSize=e:b.thumbSecondSize=t.thumb_height,y(s.width()),b.stripInnerSize=l.width()):(b.thumbSize=e,1==t.thumb_fixed_size?b.thumbSecondSize=i:b.thumbSecondSize=t.thumb_width,y(s.height()),b.stripInnerSize=l.height()),0==h?(n=b.thumbSecondSize,(r={}).height=n+"px",(o={}).height=n+"px"):(n=b.thumbSecondSize,(r={}).width=n+"px",(o={}).width=n+"px"),s.css(r),l.css(o),w(),0==f.isRunOnce&amp;&amp;(1==m.strip_control_touch&amp;&amp;(d=new UGTouchThumbsControl).init(_),1==m.strip_control_avia&amp;&amp;(u=new UGAviaControl).init(_),x(),p.loadThumbsImages(),p.initEvents(),s.find(".ug-thumb-wrapper").on("click touchend",function(e){!function(e){if(_.isTouchMotionActive())if(1==d.isSignificantPassed())return;e=p.getItemByThumb(e),g.selectItem(e)}(jQuery(this))}),a.on(g.events.ITEM_CHANGE,P),f.isNotFixedThumbs&amp;&amp;jQuery(p).on(p.events.AFTERPLACEIMAGE,S)),f.isRunOnce=!0}function y(e){b.stripSize=e,b.stripActiveSize=0==h?b.stripSize-m.strip_padding_left-m.strip_padding_right:b.stripSize-m.strip_padding_top-m.strip_padding_bottom,b.stripActiveSize&lt;0&amp;&amp;(b.stripActiveSize=0)}function w(){var e=l.children(".ug-thumb-wrapper"),t=0,i=0;0==h&amp;&amp;(i=m.strip_padding_top);for(var n,r=0;r&lt;e.length;r++){var o=jQuery(e[r]);if(1==f.isNotFixedThumbs){if(objItem=p.getItemByThumb(o),0==objItem.isLoaded)continue;o.show()}c.placeElement(o,t,i),0==h?t+=o.outerWidth()+m.strip_space_between_thumbs:i+=o.outerHeight()+m.strip_space_between_thumbs}n=0==h?t-m.strip_space_between_thumbs:i-m.strip_space_between_thumbs,n=n,0==h?l.width(n):l.height(n),b.stripInnerSize=n,x(),jQuery(_).trigger(_.events.INNER_SIZE_CHANGE)}function t(e){e=_.getInnerStripPos()+e,e=_.fixInnerStripLimits(e);_.positionInnerStrip(e,!0)}function I(e){e=-1*C(e).min,e=_.fixInnerStripLimits(e);_.positionInnerStrip(e,!0)}function E(e){e=-1*C(e).max+b.stripSize,e=_.fixInnerStripLimits(e);_.positionInnerStrip(e,!0)}function T(e){var t,i,n;0!=j()&amp;&amp;(i={},t=_.getInnerStripPos(),i.minPosThumbs=-1*t+1,i.maxPosThumbs=-1*t+b.stripSize-1,n=i,(t=C(e)).min&lt;n.minPosThumbs?(i=e.prev()).length?I(i):I(e):t.max&gt;n.maxPosThumbs&amp;&amp;((n=e.next()).length?E(n):E(e)))}function x(){1==j()?(u&amp;&amp;u.enable(),d&amp;&amp;d.enable()):(u&amp;&amp;u.disable(),d&amp;&amp;d.disable())}function S(){clearTimeout(f.handle),f.handle=setTimeout(function(){w()},50)}function P(){var e=g.getSelectedItem();p.setThumbSelected(e.objThumbWrapper),T(e.objThumbWrapper)}function j(){return b.stripInnerSize&gt;b.stripActiveSize}function C(e){var t={},e=e.position();return 0==h?(t.min=e.left,t.max=e.left+b.thumbSize):(t.min=e.top,t.max=e.top+b.thumbSize),t}this.setHtml=function(e){e||(e=n,null!=m.parent_container&amp;&amp;(e=m.parent_container)),e.append("&lt;div class='ug-thumbs-strip'&gt;&lt;div class='ug-thumbs-strip-inner'&gt;&lt;/div&gt;&lt;/div&gt;"),s=e.children(".ug-thumbs-strip"),l=s.children(".ug-thumbs-strip-inner"),p.setHtmlThumbs(l),1==f.isNotFixedThumbs&amp;&amp;p.hideThumbs()},this.destroy=function(){var e=s.find(".ug-thumb-wrapper");e.off("click"),e.off("touchend"),a.off(g.events.ITEM_CHANGE),jQuery(p).off(p.events.AFTERPLACEIMAGE),d&amp;&amp;d.destroy(),u&amp;&amp;u.destroy(),p.destroy()},this.________EXTERNAL_GENERAL___________=function(){},this.init=function(e,t){t=t,i=(e=e).getObjects(),(g=e).attachThumbsPanel("strip",_),a=jQuery(e),n=i.g_objWrapper,r=i.g_arrItems,m=jQuery.extend(m,t),1==(h=m.strip_vertical_type)&amp;&amp;(m=jQuery.extend(m,o),m=jQuery.extend(m,t),t.thumb_resize_by="width"),p.init(e,t),v()},this.run=function(){e()},this.positionInnerStrip=function(e,t){void 0===t&amp;&amp;(t=!1),e=0==h?{left:e+"px"}:{top:e+"px"},0==t?(l.css(e),_.triggerStripMoveEvent()):(_.triggerStripMoveEvent(),l.stop(!0).animate(e,{duration:m.strip_scroll_to_thumb_duration,easing:m.strip_scroll_to_thumb_easing,queue:!1,progress:function(){_.triggerStripMoveEvent()},always:function(){_.triggerStripMoveEvent()}}))},this.triggerStripMoveEvent=function(){jQuery(_).trigger(_.events.STRIP_MOVE)},this.isTouchMotionActive=function(){return!!d&amp;&amp;d.isTouchActive()},this.isItemThumbVisible=function(e){var t,i,n=e.objThumbWrapper,r=n.position(),e=-1*_.getInnerStripPos();return e&lt;=(0==h?(t=e+b.stripSize,i=r.left,r.left+n.width()):(t=e+b.stripSize,i=r.top,r.top+n.height()))&amp;&amp;i&lt;=t?!0:!1},this.getInnerStripPos=function(){return 0==h?l.position().left:l.position().top},this.getInnerStripLimits=function(){var e={};return e.maxPos=0==h?m.strip_padding_left:m.strip_padding_top,e.minPos=-(b.stripInnerSize-b.stripActiveSize),e},this.fixInnerStripLimits=function(e){var t=_.getInnerStripLimits();return e&gt;t.maxPos&amp;&amp;(e=t.maxPos),e&lt;t.minPos&amp;&amp;(e=t.minPos),e},this.scrollForeward=function(){t(-b.stripSize)},this.scrollBack=function(){t(b.stripSize)},this.________EXTERNAL_SETTERS___________=function(){},this.setOptions=function(e){m=jQuery.extend(m,e),p.setOptions(e),v()},this.setSizeVertical=function(e){if(0==h)throw new Error("setSizeVertical error, the strip size is not vertical");var t=b.thumbSecondSize,i={};i.width=t+"px",i.height=e+"px",s.css(i),y(e);e={};e.width=t+"px",e.left="0px",e.top="0px",l.css(e),f.is_placed=!0,x()},this.setSizeHorizontal=function(e){if(1==h)throw new Error("setSizeHorizontal error, the strip size is not horizontal");var t=b.thumbSecondSize+m.strip_padding_top+m.strip_padding_bottom,i={};i.width=e+"px",i.height=t+"px",s.css(i),y(e);i=m.strip_padding_left,e={};e.height=t+"px",e.left=i+"px",e.top="0px",l.css(e),f.is_placed=!0,x()},this.setPosition=function(e,t,i,n){c.placeElement(s,e,t,i,n)},this.resize=function(e){var t;0==h?(s.width(e),b.stripActiveSize=e-m.strip_padding_left-m.strip_padding_right):(s.height(e),b.stripActiveSize=e-m.strip_padding_top-m.strip_padding_bottom),y(e),x(),0==j()||(t=_.getInnerStripPos())!=(t=_.fixInnerStripLimits(t))&amp;&amp;_.positionInnerStrip(t,!0),j()||(0==h?c.placeElement(l,m.strip_thumbs_align,0):c.placeElement(l,0,m.strip_thumbs_align)),null!=(t=g.getSelectedItem())&amp;&amp;(t=t.objThumbWrapper)&amp;&amp;T(t),u&amp;&amp;u.onResize()},this.setThumbUnselected=function(e){p.setThumbUnselected(e)},this.setCustomThumbs=function(e){p.setCustomThumbs(e)},this.________EXTERNAL_GETTERS___________=function(){},this.getObjects=function(){var e=p.getOptions(),e=jQuery.extend(m,e);return{g_gallery:g,g_objGallery:a,g_objWrapper:n,g_arrItems:r,g_objStrip:s,g_objStripInner:l,g_aviaControl:u,g_touchThumbsControl:d,isVertical:h,g_options:e,g_thumbs:p}},this.getObjThumbs=function(){return p},this.getSelectedThumb=function(){var e=g.getSelectedItemIndex();return-1==e?null:p.getThumbByIndex(e)},this.getSizeAndPosition=function(){return c.getElementSize(s)},this.getHeight=function(){return s.outerHeight()},this.getWidth=function(){return s.outerWidth()},this.getSizes=function(){return b},this.isVertical=function(){return h},this.isPlaced=function(){return f.is_placed},this.isMoveEnabled=function(){return j()}}function UGTouchThumbsControl(){var _,t,i,g,n,c,r=new UGFunctions,h={touch_portion_time:200,thumb_touch_slowFactor:0,minDeltaTime:70,minPath:10,limitsBreakAddition:30,returnAnimateSpeed:500,animationEasing:"easeOutCubic",returnAnimationEasing:"easeOutCubic"},p={touch_active:!1,loop_active:!1,mousePos:0,innerPos:0,startPos:0,startTime:0,lastTime:0,buttonReleaseTime:0,lastPos:0,lastPortionPos:0,lastDeltaTime:0,lastDeltaPos:0,speed:0,handle:"",touchEnabled:!1,isControlEnabled:!0};function o(){var e=jQuery.now(),t={};return t.passedTime=p.lastTime-p.startTime,t.lastActiveTime=e-p.buttonReleaseTime,t.passedDistance=p.lastPos-p.startPos,t.passedDistanceAbs=Math.abs(t.passedDistance),t}function a(e){return 0==c?r.getMousePosition(e).pageX:r.getMousePosition(e).pageY}function s(){var e=jQuery.now();e-p.lastTime&gt;=h.touch_portion_time&amp;&amp;(p.lastDeltaTime=e-p.lastTime,p.lastDeltaTime&gt;h.touch_portion_time&amp;&amp;(p.lastDeltaTime=h.touch_portion_time),p.lastDeltaPos=p.lastPos-p.lastPortionPos,p.lastPortionPos=p.lastPos,p.lastTime=e)}function m(){p.lastPos=_.getInnerStripPos(),_.triggerStripMoveEvent()}function l(e){if(0==p.loop_active)return 1;e&amp;&amp;(a(e),function(){var e=h.thumb_touch_slowFactor,t=h.minDeltaTime,i=h.minPath,n=_.getInnerStripPos(),r=jQuery.now()-p.lastTime,o=n-p.lastPortionPos;r&lt;t&amp;&amp;0&lt;p.lastDeltaTime&amp;&amp;(r=p.lastDeltaTime,o=p.lastDeltaPos+o),r&lt;t&amp;&amp;(r=t);var a=0;0&lt;r&amp;&amp;(a=o/r);var s=a*a/(2*e)*(0&lt;o?1:-1);Math.abs(s)&lt;=i&amp;&amp;(s=0);var l=_.getInnerStripPos(),u=l+s,n=_.fixInnerStripLimits(u),t=_.getInnerStripLimits(),r=h.limitsBreakAddition,o=!1,i=n;u&gt;t.maxPos&amp;&amp;(o=!0,u&lt;(n=r)&amp;&amp;(n=u)),u&lt;t.minPos&amp;&amp;(o=!0,n=(d=t.minPos-r)&lt;u?u:d);var d=n-l,e=Math.abs(Math.round(a/e));0!=s&amp;&amp;(e=e*d/s),l!=n&amp;&amp;(n=1==c?{top:n+"px"}:{left:n+"px"},g.animate(n,{duration:e,easing:h.animationEasing,queue:!0,progress:m})),1==o&amp;&amp;(o=h.returnAnimateSpeed,i=1==c?{top:i+"px"}:{left:i+"px"},g.animate(i,{duration:o,easing:h.returnAnimationEasing,queue:!0,progress:m}))}()),p.loop_active=!1,p.handle=clearInterval(p.handle)}function u(e){return 0==p.isControlEnabled||(p.buttonReleaseTime=jQuery.now(),0==p.touch_active?(l(e),!0):(e.preventDefault(),p.touch_active=!1,l(e),void i.removeClass("ug-dragging")))}function d(e){if(0==p.isControlEnabled)return!0;e.preventDefault(),p.touch_active=!0;var t=a(e);g.stop(!0),e=t,t=_.getInnerStripPos(),p.mousePos=e,p.innerPos=t,p.lastPortionPos=t,p.lastDeltaTime=0,p.lastDeltaPos=0,p.startTime=jQuery.now(),p.startPos=p.innerPos,p.lastTime=p.startTime,p.lastPos=p.startPos,p.speed=0,1!=p.loop_active&amp;&amp;(p.loop_active=!0,p.handle=setInterval(s,10)),i.addClass("ug-dragging")}function f(e){if(0==p.isControlEnabled)return!0;if(0==p.touch_active)return!0;if(e.preventDefault(),0==e.buttons)return p.touch_active=!1,l(e),!0;var t,i=a(e);p.lastPos=_.getInnerStripPos(),e=i,i=p.mousePos-e,e=p.innerPos-i,i=_.getInnerStripLimits(),e&gt;i.maxPos&amp;&amp;(t=e-i.maxPos,e=i.maxPos+t/3),e&lt;i.minPos&amp;&amp;(t=i.minPos-e,e=i.minPos-t/3),_.positionInnerStrip(e),s()}this.enable=function(){p.isControlEnabled=!0},this.disable=function(){p.isControlEnabled=!1},this.init=function(e){t=(_=e).getObjects(),t.g_gallery,t.g_objGallery,i=t.g_objStrip,g=t.g_objStripInner,n=t.g_options,c=t.isVertical,h.thumb_touch_slowFactor=r.normalizeSetting(5e-5,.01,1,100,n.strip_thumb_touch_sensetivity,!0),i.bind("mousedown touchstart",d),jQuery(window).add("body").bind("mouseup touchend",u),jQuery("body").bind("mousemove touchmove",f)},this.isSignificantPassed=function(){var e=o();return 300&lt;e.passedTime||30&lt;e.passedDistanceAbs},this.isTouchActive=function(){return 1==p.touch_active||(1==g.is(":animated")||o().lastActiveTime&lt;50)},this.destroy=function(){i.unbind("mousedown"),i.unbind("touchstart"),jQuery(window).add("body").unbind("mouseup").unbind("touchend"),jQuery("body").unbind("mousemove").unbind("touchmove")}}function UGPanelsBase(){var o,a,n,s,l,t,u,d=new UniteGalleryMain,i=this,r=new UGFunctions;function _(e,t){switch(o.orientation){case"right":case"left":var i={left:e+"px"};break;case"top":case"bottom":i={top:e+"px"}}n.stop(!0).animate(i,{duration:300,easing:"easeInOutQuad",queue:!1,complete:function(){t&amp;&amp;t()}})}function g(e){switch(o.orientation){case"right":case"left":r.placeElement(n,e,null);break;case"top":case"bottom":r.placeElement(n,null,e)}}function c(){l.trigger(a.events.FINISH_MOVE)}this.init=function(e,t,i,n,r){o=t,a=i,d=e,s=n,l=r,u=jQuery(d)},this.setHtml=function(e){n=e,e="strip"==o.panelType?s.strippanel_enable_handle:s.gridpanel_enable_handle,"default"==s.gallery_theme&amp;&amp;(e=!1),1==e&amp;&amp;((t=new UGPanelHandle).init(a,n,s,o.panelType,d),t.setHtml()),!0===o.isDisabledAtStart&amp;&amp;(n.append("&lt;div class='ug-overlay-disabled'&gt;&lt;/div&gt;"),setTimeout(function(){n.children(".ug-overlay-disabled").hide()},o.disabledAtStartTimeout))},this.placeElements=function(){t&amp;&amp;t.placeHandle()},this.initEvents=function(){t&amp;&amp;(t.initEvents(),u.on(d.events.SLIDER_ACTION_START,function(){t.hideHandle()}),u.on(d.events.SLIDER_ACTION_END,function(){t.showHandle()}))},this.destroy=function(){t&amp;&amp;(t.destroy(),u.off(d.events.SLIDER_ACTION_START),u.off(d.events.SLIDER_ACTION_END))},this.openPanel=function(e){return e=e||!1,!n.is(":animated")&amp;&amp;(0!=o.isClosed&amp;&amp;(o.isClosed=!1,l.trigger(a.events.OPEN_PANEL),void(!1===e?_(o.originalPos,c):(g(o.originalPos),c()))))},this.closePanel=function(e){if(e=e||!1,n.is(":animated"))return!1;if(1==o.isClosed)return!1;var t=i.getClosedPanelDest();o.isClosed=!0,l.trigger(a.events.CLOSE_PANEL),!1===e?_(t,c):(g(t),c())},this.setClosedState=function(e){o.originalPos=e,l.trigger(a.events.CLOSE_PANEL),o.isClosed=!0},this.setOpenedState=function(e){l.trigger(a.events.OPEN_PANEL),o.isClosed=!1},this.getClosedPanelDest=function(){var e=r.getElementSize(n);switch(o.orientation){case"left":o.originalPos=e.left,t=-o.panelWidth;break;case"right":o.originalPos=e.left;var t=d.getSize().width;break;case"top":o.originalPos=e.top,t=-o.panelHeight;break;case"bottom":o.originalPos=e.top,t=d.getSize().height}return t},this.isPanelClosed=function(){return o.isClosed},this.setDisabledAtStart=function(e){if(e&lt;=0)return!1;o.isDisabledAtStart=!0,o.disabledAtStartTimeout=e}}function UGPanelHandle(){var o,a,i,n=new UGFunctions,s={panel_handle_align:"top",panel_handle_offset:0,panel_handle_skin:0};function e(){i.removeClass("ug-button-hover")}function t(e){if(e.stopPropagation(),e.stopImmediatePropagation(),0==n.validateClickTouchstartEvent(e.type))return!0;a.isPanelClosed()?a.openPanel():a.closePanel(),i.trigger("handle_tip_clicked")}this.init=function(e,t,i,n,r){switch(a=e,o=t,n){case"grid":s.panel_handle_align=i.gridpanel_handle_align,s.panel_handle_offset=i.gridpanel_handle_offset,s.panel_handle_skin=i.gridpanel_handle_skin;break;case"strip":s.panel_handle_align=i.strippanel_handle_align,s.panel_handle_offset=i.strippanel_handle_offset,s.panel_handle_skin=i.strippanel_handle_skin;break;default:throw new Error("Panel handle error: wrong panel type: "+n)}r=r.getOptions().gallery_skin;""==s.panel_handle_skin&amp;&amp;(s.panel_handle_skin=r)},this.setHtml=function(){var e,t="ug-panel-handle-tip";switch(a.getOrientation()){case"right":t+=" ug-handle-tip-left",e='&lt;svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="12px" height="12px" viewBox="0 0 12 12"&gt;&lt;g stroke-width="2" transform="translate(0, 0)"&gt;&lt;polyline points="3.5 0.5 9.5 6 3.5 11.5" fill="none" stroke="#ffffff" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"&gt;&lt;/polyline&gt;&lt;/g&gt;&lt;/svg&gt;';break;case"left":t+=" ug-handle-tip-right",e='&lt;svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="12px" height="12px" viewBox="0 0 12 12"&gt;&lt;g stroke-width="2" transform="translate(0, 0)"&gt;&lt;polyline points="7.5 0.5 3.5 6 7.5 11.5" fill="none" stroke="#ffffff" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"&gt;&lt;/polyline&gt;&lt;/g&gt;&lt;/svg&gt;';break;case"bottom":t+=" ug-handle-tip-top",e='&lt;svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="12px" height="12px" viewBox="0 0 12 12"&gt;&lt;g stroke-width="2" transform="translate(0, 0)"&gt;&lt;polyline points="0.5 3.5 6 9.5 11.5 3.5" fill="none" stroke="#ffffff" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"&gt;&lt;/polyline&gt;&lt;/g&gt;&lt;/svg&gt;';break;case"top":t+=" ug-handle-tip-bottom",e='&lt;svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="12px" height="12px" viewBox="0 0 12 12"&gt;&lt;g stroke-width="2" transform="translate(0, 0)"&gt;&lt;polyline points="0.5 8.5 6 2.5 11.5 8.5" fill="none" stroke="#ffffff" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"&gt;&lt;/polyline&gt;&lt;/g&gt;&lt;/svg&gt;'}o.append("&lt;div class='"+t+" ug-skin-"+s.panel_handle_skin+"'&gt;"+e+"&lt;/div&gt;"),i=o.children(".ug-panel-handle-tip")},this.initEvents=function(){n.addClassOnHover(i),i.bind("click touchstart",t),jQuery(a).on(a.events.OPEN_PANEL,function(){e(),i.removeClass("ug-button-closed")}),jQuery(a).on(a.events.CLOSE_PANEL,function(){e(),i.addClass("ug-button-closed")})},this.destroy=function(){n.destroyButton(i),jQuery(a).off(a.events.OPEN_PANEL),jQuery(a).off(a.events.CLOSE_PANEL)},this.placeHandle=function(){var e=n.getElementSize(i);!function(){switch(a.getOrientation()){case"right":case"left":"top"!=s.panel_handle_align&amp;&amp;"bottom"!=s.panel_handle_align&amp;&amp;(s.panel_handle_align="top");break;case"bottom":"left"!=s.panel_handle_align&amp;&amp;"right"!=s.panel_handle_align&amp;&amp;(s.panel_handle_align="left");break;case"top":"left"!=s.panel_handle_align&amp;&amp;"right"!=s.panel_handle_align&amp;&amp;(s.panel_handle_align="right")}}();var t=a.getOrientation();switch(t){case"left":n.placeElement(i,"right",s.panel_handle_align,-e.width);break;case"right":n.placeElement(i,-e.width,s.panel_handle_align,0,s.panel_handle_offset);break;case"top":n.placeElement(i,s.panel_handle_align,"bottom",s.panel_handle_offset,-e.height);break;case"bottom":n.placeElement(i,s.panel_handle_align,"top",s.panel_handle_offset,-e.height);break;default:throw new Error("Wrong panel orientation: "+t)}},this.hideHandle=function(){1==i.is(":visible")&amp;&amp;i.hide()},this.showHandle=function(){0==i.is(":visible")&amp;&amp;i.show()}}function UGStripPanel(){var i,n,r,o,a,s=this,l=jQuery(this),u=new UniteGalleryMain,d=new UGFunctions,_=new UGThumbsStrip,g=new UGPanelsBase,c={strippanel_vertical_type:!(this.events={FINISH_MOVE:"gridpanel_move_finish",OPEN_PANEL:"open_panel",CLOSE_PANEL:"close_panel"}),strippanel_padding_top:8,strippanel_padding_bottom:8,strippanel_padding_left:0,strippanel_padding_right:0,strippanel_enable_buttons:!0,strippanel_buttons_skin:"",strippanel_padding_buttons:2,strippanel_buttons_role:"scroll_strip",strippanel_enable_handle:!0,strippanel_handle_align:"top",strippanel_handle_offset:0,strippanel_handle_skin:"",strippanel_background_color:""},h={strip_vertical_type:!0,strippanel_padding_left:8,strippanel_padding_right:8,strippanel_padding_top:0,strippanel_padding_bottom:0},p={strippanel_padding_left:8,strippanel_padding_right:8,strippanel_padding_top:8,strippanel_padding_bottom:8},m={panelType:"strip",panelWidth:0,panelHeight:0,isEventsInited:!1,isClosed:!1,orientation:null,originalPos:null,isFirstRun:!0};function e(){1==m.isFirstRun&amp;&amp;0==function(){if(0==c.strippanel_vertical_type){if(0==m.panelWidth)throw new Error("Strip panel error: The width not set, please set width")}else if(0==m.panelHeight)throw new Error("Strip panel error: The height not set, please set height");if(null==m.orientation)throw new Error("Wrong orientation, please set panel orientation before run");return!0}()||(_.run(),f(),b(),1!=m.isEventsInited&amp;&amp;(m.isEventsInited=!0,o&amp;&amp;(d.addClassOnHover(o,"ug-button-hover"),d.addClassOnHover(a,"ug-button-hover"),d.setButtonOnClick(a,y),d.setButtonOnClick(o,v),"advance_item"!=c.strippanel_buttons_role?(jQuery(_).on(_.events.STRIP_MOVE,I),jQuery(_).on(_.events.INNER_SIZE_CHANGE,w),i.on(u.events.SIZE_CHANGE,w)):0==u.getOptions().gallery_carousel&amp;&amp;jQuery(u).on(u.events.ITEM_CHANGE,E)),g.initEvents()),m.isFirstRun=!1,w())}function t(e){var t,i;(e=e||n).append("&lt;div class='ug-strip-panel'&gt;&lt;/div&gt;"),r=e.children(".ug-strip-panel"),1==c.strippanel_enable_buttons&amp;&amp;(t="ug-strip-arrow-left",i="ug-strip-arrow-right",1==c.strippanel_vertical_type&amp;&amp;(t="ug-strip-arrow-up",i="ug-strip-arrow-down"),r.append("&lt;div class='ug-strip-arrow "+t+" ug-skin-"+c.strippanel_buttons_skin+'\'&gt;&lt;div class=\'ug-strip-arrow-tip\'&gt;&lt;svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="12px" height="12px" viewBox="0 0 12 12"&gt;&lt;g stroke-width="1" transform="translate(0, 0)"&gt;&lt;polyline points="7.5 0.5 3.5 6 7.5 11.5" fill="none" stroke="#ffffff" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"&gt;&lt;/polyline&gt;&lt;/g&gt;&lt;/svg&gt;&lt;/div&gt;&lt;/div&gt;'),r.append("&lt;div class='ug-strip-arrow "+i+" ug-skin-"+c.strippanel_buttons_skin+'\'&gt;&lt;div class=\'ug-strip-arrow-tip\'&gt;&lt;svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="12px" height="12px" viewBox="0 0 12 12"&gt;&lt;g stroke-width="1" transform="translate(0, 0)"&gt;&lt;polyline points="4.5 0.5 8.5 6 4.5 11.5" fill="none" stroke="#ffffff" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"&gt;&lt;/polyline&gt;&lt;/g&gt;&lt;/svg&gt;&lt;/div&gt;&lt;/div&gt;')),g.setHtml(r),_.setHtml(r),1==c.strippanel_enable_buttons&amp;&amp;(a=r.children("."+t),o=r.children("."+i)),""!=c.strippanel_background_color&amp;&amp;r.css("background-color",c.strippanel_background_color),0!=c.strippanel_enable_handle&amp;&amp;(i=r.find(".ug-panel-handle-tip"),""!=c.strippanel_background_color&amp;&amp;i.css("background-color",c.strippanel_background_color))}function f(){var e,t,i;0==c.strippanel_vertical_type?(t=_.getHeight(),i=m.panelWidth,o&amp;&amp;(a.height(t),o.height(t),e=a.children(".ug-strip-arrow-tip"),d.placeElement(e,"center","middle"),e=o.children(".ug-strip-arrow-tip"),d.placeElement(e,"center","middle")),t=t+c.strippanel_padding_top+c.strippanel_padding_bottom,r.width(i),r.height(t),m.panelHeight=t,i=i-c.strippanel_padding_left-c.strippanel_padding_right,o&amp;&amp;(i=i-2*o.outerWidth()-2*c.strippanel_padding_buttons),_.resize(i)):(e=_.getWidth(),t=m.panelHeight,o&amp;&amp;(a.width(e),o.width(e),i=a.children(".ug-strip-arrow-tip"),d.placeElement(i,"center","middle"),i=o.children(".ug-strip-arrow-tip"),d.placeElement(i,"center","middle")),e=e+c.strippanel_padding_left+c.strippanel_padding_right,r.width(e),r.height(t),m.panelWidth=e,t=t-c.strippanel_padding_top-c.strippanel_padding_bottom,o&amp;&amp;(t=t-2*o.outerHeight()-2*c.strippanel_padding_buttons),_.resize(t))}function b(){(0==c.strippanel_vertical_type?function(){o&amp;&amp;(d.placeElement(a,"left","top",c.strippanel_padding_left,c.strippanel_padding_top),d.placeElement(o,"right","top",c.strippanel_padding_right,c.strippanel_padding_top));var e=c.strippanel_padding_left;o&amp;&amp;(e+=o.outerWidth()+c.strippanel_padding_buttons),_.setPosition(e,c.strippanel_padding_top)}:function(){o&amp;&amp;(d.placeElement(a,"left","top",c.strippanel_padding_left,c.strippanel_padding_top),d.placeElement(o,"left","bottom",c.strippanel_padding_left,c.strippanel_padding_bottom));var e=c.strippanel_padding_top;o&amp;&amp;(e+=o.outerHeight()+c.strippanel_padding_buttons),_.setPosition(c.strippanel_padding_left,e)})(),g.placeElements()}function v(e){if(d.isButtonDisabled(e))return!0;"advance_item"==c.strippanel_buttons_role?u.nextItem():_.scrollForeward()}function y(e){if(d.isButtonDisabled(e))return!0;"advance_item"==c.strippanel_buttons_role?u.prevItem():_.scrollBack()}function w(){if(!o)return!0;if(0==_.isMoveEnabled())return d.disableButton(a),d.disableButton(o),!0;var e=_.getInnerStripLimits(),t=_.getInnerStripPos();t&gt;=e.maxPos?d.disableButton(a):d.enableButton(a),t&lt;=e.minPos?d.disableButton(o):d.enableButton(o)}function I(){w()}function E(){u.isLastItem()?d.disableButton(o):d.enableButton(o),u.isFirstItem()?d.disableButton(a):d.enableButton(a)}this.destroy=function(){o&amp;&amp;(d.destroyButton(o),d.destroyButton(a),jQuery(_).off(_.events.STRIP_MOVE),jQuery(u).off(u.events.ITEM_CHANGE),jQuery(u).off(u.events.SIZE_CHANGE)),g.destroy(),_.destroy()},this.getOrientation=function(){return m.orientation},this.setOrientation=function(e){m.orientation=e},this.init=function(e,t){t=t,u=e=e,i=jQuery(u),e=!1,1==(c=jQuery.extend(c,t)).strippanel_vertical_type&amp;&amp;(c=jQuery.extend(c,h),e=!0),0==c.strippanel_enable_buttons&amp;&amp;(c=jQuery.extend(c,p),e=!0),1==e&amp;&amp;(c=jQuery.extend(c,t)),t=u.getOptions().gallery_skin,""==c.strippanel_buttons_skin&amp;&amp;(c.strippanel_buttons_skin=t),n=u.getElement(),g.init(u,m,s,c,l),(_=new UGThumbsStrip).init(u,c)},this.run=function(){e()},this.setHtml=function(e){t(e)},this.getElement=function(){return r},this.getSize=function(){return d.getElementSize(r)},this.setWidth=function(e){m.panelWidth=e},this.setHeight=function(e){m.panelHeight=e},this.resize=function(e){s.setWidth(e),f(),b()},this.__________Functions_From_Base_____=function(){},this.isPanelClosed=function(){return g.isPanelClosed()},this.getClosedPanelDest=function(){return g.getClosedPanelDest()},this.openPanel=function(e){g.openPanel(e)},this.closePanel=function(e){g.closePanel(e)},this.setOpenedState=function(e){g.setOpenedState(e)},this.setClosedState=function(e){g.setClosedState(e)},this.setCustomThumbs=function(e){_.setCustomThumbs(e)},this.setDisabledAtStart=function(e){g.setDisabledAtStart(e)}}function UGGridPanel(){var i,t,u,d,n=this,r=jQuery(this),o=new UniteGalleryMain,_=new UGFunctions,g=new UGThumbsGrid,a=new UGPanelsBase,c={gridpanel_vertical_scroll:!0,gridpanel_grid_align:"middle",gridpanel_padding_border_top:10,gridpanel_padding_border_bottom:4,gridpanel_padding_border_left:10,gridpanel_padding_border_right:10,gridpanel_arrows_skin:"",gridpanel_arrows_align_vert:"middle",gridpanel_arrows_padding_vert:4,gridpanel_arrows_align_hor:"center",gridpanel_arrows_padding_hor:10,gridpanel_space_between_arrows:20,gridpanel_arrows_always_on:!(this.events={FINISH_MOVE:"gridpanel_move_finish",OPEN_PANEL:"open_panel",CLOSE_PANEL:"close_panel"}),gridpanel_enable_handle:!0,gridpanel_handle_align:"top",gridpanel_handle_offset:0,gridpanel_handle_skin:"",gridpanel_background_color:""},s={gridpanel_grid_align:"middle",gridpanel_padding_border_top:2,gridpanel_padding_border_bottom:2},l={gridpanel_grid_align:"center"},h={panelType:"grid",isHorType:!1,arrowsVisible:!1,panelHeight:0,panelWidth:0,originalPosX:null,isEventsInited:!1,isClosed:!1,orientation:null};function p(){if(null==h.orientation)throw new Error("Wrong orientation, please set panel orientation before run")}function e(){var e;p(),"center"==c.gridpanel_grid_align&amp;&amp;(c.gridpanel_grid_align="middle"),g.run(),e=!1,(1==c.gridpanel_arrows_always_on||1&lt;g.getNumPanes())&amp;&amp;(e=!0),1==e?(u.show().fadeTo(0,1),d.show().fadeTo(0,1),h.arrowsVisible=!0):(u.hide(),d.hide(),h.arrowsVisible=!1),e=g.getSize(),1==h.isHorType?h.panelHeight=e.height+c.gridpanel_padding_border_top+c.gridpanel_padding_border_bottom:h.panelWidth=e.width+c.gridpanel_padding_border_left+c.gridpanel_padding_border_right,_.setElementSize(t,h.panelWidth,h.panelHeight),(0==h.isHorType?1==c.gridpanel_vertical_scroll?1==h.arrowsVisible?function(){var e,t,i,n,r=_.getElementSize(d),o=g.getSize();switch(c.gridpanel_grid_align){default:case"top":e=c.gridpanel_padding_border_top+r.height+c.gridpanel_arrows_padding_vert;break;case"middle":e="middle";break;case"bottom":e=h.panelHeight-o.height-r.height-c.gridpanel_padding_border_bottom-c.gridpanel_arrows_padding_vert}var a=f(),s=g.getElement();switch(_.placeElement(s,a,e),o=g.getSize(),c.gridpanel_arrows_align_vert){default:case"center":case"middle":t=(o.top-r.height)/2,i=o.bottom+(h.panelHeight-o.bottom-r.height)/2,n=0;break;case"grid":t=o.top-r.height-c.gridpanel_arrows_padding_vert_vert,i=o.bottom+c.gridpanel_arrows_padding_vert,n=0;break;case"border":case"borders":t=c.gridpanel_padding_border_top,i="bottom",n=c.gridpanel_padding_border_bottom}_.placeElement(d,"center",t),_.placeElement(u,"center",i,0,n)}:b:1==h.arrowsVisible?function(){var e,t,i=_.getElementSize(d),n=g.getSize(),r=c.gridpanel_padding_border_top;switch(c.gridpanel_grid_align){case"middle":switch(c.gridpanel_arrows_align_vert){default:var o=n.height+c.gridpanel_arrows_padding_vert+i.height;r=(h.panelHeight-o)/2;break;case"border":case"borders":var a=h.panelHeight-i.height-c.gridpanel_padding_border_bottom;r=(a-n.height)/2}break;case"bottom":o=n.height+i.height+c.gridpanel_arrows_padding_vert;r=h.panelHeight-o-c.gridpanel_padding_border_bottom}var s=g.getElement(),l=f();switch(_.placeElement(s,l,r),n=g.getSize(),c.gridpanel_arrows_align_vert){default:case"center":case"middle":e=n.bottom+(h.panelHeight-n.bottom-i.height)/2,t=0;break;case"grid":e=n.bottom+c.gridpanel_arrows_padding_vert,t=0;break;case"border":case"borders":e="bottom",t=c.gridpanel_padding_border_bottom}l=-i.width/2-c.gridpanel_space_between_arrows/2,_.placeElement(d,"center",e,l,t),l=Math.abs(l),_.placeElement(u,"center",e,l,t)}:b:1==h.arrowsVisible?function(){var e,t,i,n,r=_.getElementSize(d),o=g.getSize();switch(c.gridpanel_grid_align){default:case"left":e=c.gridpanel_padding_border_left+c.gridpanel_arrows_padding_hor+r.width;break;case"middle":case"center":e="center";break;case"right":e=h.panelWidth-o.width-r.width-c.gridpanel_padding_border_right-c.gridpanel_arrows_padding_hor}var a=g.getElement();switch(_.placeElement(a,e,c.gridpanel_padding_border_top),o=g.getSize(),c.gridpanel_arrows_align_vert){default:case"center":case"middle":n=(o.height-r.height)/2+o.top;break;case"top":n=c.gridpanel_padding_border_top+c.gridpanel_arrows_padding_vert;break;case"bottom":n=h.panelHeight-c.gridpanel_padding_border_bottom-c.gridpanel_arrows_padding_vert-r.height}switch(c.gridpanel_arrows_align_hor){default:case"borders":t=c.gridpanel_padding_border_left,i=h.panelWidth-c.gridpanel_padding_border_right-r.width;break;case"grid":t=o.left-c.gridpanel_arrows_padding_hor-r.width,i=o.right+c.gridpanel_arrows_padding_hor;break;case"center":t=(o.left-r.width)/2,i=o.right+(h.panelWidth-o.right-r.width)/2}_.placeElement(d,t,n),_.placeElement(u,i,n)}:function(){var e,t=g.getSize();switch(c.gridpanel_grid_align){default:case"left":e=c.gridpanel_padding_border_left;break;case"middle":case"center":e="center";break;case"right":e=h.panelWidth-t.width-c.gridpanel_padding_border_right}var i=g.getElement();_.placeElement(i,e,c.gridpanel_padding_border_top)})(),a.placeElements(),1!=h.isEventsInited&amp;&amp;(h.isEventsInited=!0,d&amp;&amp;(_.addClassOnHover(d),g.attachPrevPaneButton(d)),u&amp;&amp;(_.addClassOnHover(u),g.attachNextPaneButton(u)),a.initEvents())}function m(){i.append("&lt;div class='ug-grid-panel'&gt;&lt;/div&gt;"),t=i.children(".ug-grid-panel"),u=h.isHorType?(t.append("&lt;div class='grid-arrow grid-arrow-left-hortype ug-skin-"+c.gridpanel_arrows_skin+"'&gt;&lt;/div&gt;"),t.append("&lt;div class='grid-arrow grid-arrow-right-hortype ug-skin-"+c.gridpanel_arrows_skin+"'&gt;&lt;/div&gt;"),d=t.children(".grid-arrow-left-hortype"),t.children(".grid-arrow-right-hortype")):0==c.gridpanel_vertical_scroll?(t.append("&lt;div class='grid-arrow grid-arrow-left ug-skin-"+c.gridpanel_arrows_skin+"'&gt;&lt;/div&gt;"),t.append("&lt;div class='grid-arrow grid-arrow-right ug-skin-"+c.gridpanel_arrows_skin+"'&gt;&lt;/div&gt;"),d=t.children(".grid-arrow-left"),t.children(".grid-arrow-right")):(t.append("&lt;div class='grid-arrow grid-arrow-up ug-skin-"+c.gridpanel_arrows_skin+"'&gt;&lt;/div&gt;"),t.append("&lt;div class='grid-arrow grid-arrow-down ug-skin-"+c.gridpanel_arrows_skin+"'&gt;&lt;/div&gt;"),d=t.children(".grid-arrow-up"),t.children(".grid-arrow-down")),a.setHtml(t),d.fadeTo(0,0),u.fadeTo(0,0),g.setHtml(t),""!=c.gridpanel_background_color&amp;&amp;t.css("background-color",c.gridpanel_background_color)}function f(){return c.gridpanel_padding_border_left}function b(){var e=c.gridpanel_grid_align,t=0;switch(e){case"top":t=c.gridpanel_padding_border_top;break;case"bottom":t=c.gridpanel_padding_border_bottom}var i=f(),n=g.getElement();_.placeElement(n,i,e,0,t)}this.destroy=function(){d&amp;&amp;_.destroyButton(d),u&amp;&amp;_.destroyButton(u),a.destroy(),g.destroy()},this.getOrientation=function(){return h.orientation},this.setOrientation=function(e){switch(h.orientation=e){case"right":case"left":h.isHorType=!1;break;case"top":case"bottom":h.isHorType=!0;break;default:throw new Error("Wrong grid panel orientation: "+e)}},this.setHeight=function(e){if(1==h.isHorType)throw new Error("setHeight is not appliable to this orientatio ("+h.orientation+"). Please use setWidth");h.panelHeight=e;var t,e=(t=c.gridpanel_padding_border_top+c.gridpanel_padding_border_bottom,e=h.panelHeight-t,0==c.gridpanel_arrows_always_on&amp;&amp;1==g.getNumPanesEstimationByHeight(e)?e:(t=_.getElementSize(u).height+c.gridpanel_arrows_padding_vert,1==c.gridpanel_vertical_scroll&amp;&amp;(t*=2),t+=c.gridpanel_padding_border_top+c.gridpanel_padding_border_bottom,e=h.panelHeight-t));g.setMaxHeight(e)},this.setWidth=function(e){if(0==h.isHorType)throw new Error("setWidth is not appliable to this orientatio ("+h.orientation+"). Please use setHeight");h.panelWidth=e;var t,e=(t=c.gridpanel_padding_border_left+c.gridpanel_padding_border_right,e=h.panelWidth-t,0==c.gridpanel_arrows_always_on&amp;&amp;1==g.getNumPanesEstimationByWidth(e)?e:(t+=2*(_.getElementSize(u).width+c.gridpanel_arrows_padding_hor),e=h.panelWidth-t));g.setMaxWidth(e)},this.init=function(e,t){t=t,o=e=e,p(),t&amp;&amp;t.vertical_scroll&amp;&amp;(c.gridpanel_vertical_scroll=t.vertical_scroll),c=jQuery.extend(c,t),1==h.isHorType?(c=jQuery.extend(c,l),c=jQuery.extend(c,t)):1==c.gridpanel_vertical_scroll&amp;&amp;(c=jQuery.extend(c,s),(c=jQuery.extend(c,t)).grid_panes_direction="bottom"),t=o.getOptions().gallery_skin,""==c.gridpanel_arrows_skin&amp;&amp;(c.gridpanel_arrows_skin=t),e=e.getObjects(),i=e.g_objWrapper,a.init(o,h,n,c,r),(g=new UGThumbsGrid).init(o,c)},this.setHtml=function(){m()},this.run=function(){e()},this.getElement=function(){return t},this.getSize=function(){return _.getElementSize(t)},this.__________Functions_From_Base_____=function(){},this.isPanelClosed=function(){return a.isPanelClosed()},this.getClosedPanelDest=function(){return a.getClosedPanelDest()},this.openPanel=function(e){a.openPanel(e)},this.closePanel=function(e){a.closePanel(e)},this.setOpenedState=function(e){a.setOpenedState(e)},this.setClosedState=function(e){a.setClosedState(e)},this.setDisabledAtStart=function(e){a.setDisabledAtStart(e)}}function UGThumbsGrid(){var n,r,o,p,m,a=this,s=jQuery(this),l=new UniteGalleryMain,f=new UGFunctions,u=new UGThumbsGeneral,d=new UGTileDesign,b={grid_panes_direction:"left",grid_num_cols:2,grid_min_cols:2,grid_num_rows:2,grid_space_between_cols:10,grid_space_between_rows:10,grid_space_between_mobile:10,grid_transition_duration:300,grid_transition_easing:"easeInOutQuad",grid_carousel:!1,grid_padding:0,grid_vertical_scroll_ondrag:!1},v={eventSizeChange:"thumb_size_change",isHorizontal:!(this.events={PANE_CHANGE:"pane_change"}),isMaxHeight:!1,isMaxWidth:!1,gridHeight:0,gridWidth:0,innerWidth:0,innerHeight:0,numPanes:0,arrPanes:0,numThumbs:0,currentPane:0,numThumbsInPane:0,isNavigationVertical:!1,touchActive:!1,startScrollPos:0,isFirstTimeRun:!0,isTilesMode:!1,storedEventID:"thumbsgrid",tileMaxWidth:null,tileMaxHeight:null,spaceBetweenCols:null,spaceBetweenRows:null};function _(e,t,i){o=e.getObjects(),(l=e).attachThumbsPanel("grid",a),n=jQuery(e),r=o.g_objWrapper,o=o.g_arrItems,!0===i&amp;&amp;(v.isTilesMode=!0),v.numThumbs=o.length,i=t,b=jQuery.extend(b,i),u.setOptions(i),v.isNavigationVertical="top"==b.grid_panes_direction||"bottom"==b.grid_panes_direction,v.spaceBetweenCols=b.grid_space_between_cols,v.spaceBetweenRows=b.grid_space_between_rows,1==v.isTilesMode?(d.setFixedMode(),d.setApproveClickFunction(S),d.init(e,b),i=d.getOptions(),v.tileMaxHeight=i.tile_height,v.tileMaxWidth=i.tile_width,u=d.getObjThumbs()):(t.thumb_fixed_size=!0,u.init(e,t))}function e(){var e,t=l.getSelectedItem();!function(){if(0==v.isHorizontal){if(0==v.gridHeight)throw new Error("You must set height before run.")}else if(0==v.gridWidth)throw new Error("You must set width before run.")}(),1==v.isFirstTimeRun?(0==v.isTilesMode?(u.initEvents(),p.find(".ug-thumb-wrapper").on("click touchend",P),n.on(l.events.ITEM_CHANGE,M)):d.initEvents(),p.bind("mousedown touchstart",j),jQuery("body").bind("mousemove touchmove",C),jQuery(window).add("body").bind("mouseup touchend",A),1==v.isTilesMode?(c(),h(),d.run()):(u.setHtmlProperties(),h(),u.loadThumbsImages())):1==v.isTilesMode&amp;&amp;1==c()&amp;&amp;(h(),d.run()),(0==v.isHorizontal?v.isNavigationVertical?function(){var e=m.children(".ug-thumb-wrapper"),t=0,i=0,n=0,r=0,o=0,a=0;v.innerWidth=0,v.numPanes=1,v.arrPanes=[],v.numThumbsInPane=0,v.arrPanes.push(o);for(var s=e.length,l=0;l&lt;s;l++){var u=jQuery(e[l]);f.placeElement(u,t,i);var d=u.outerWidth(),u=u.outerHeight();t+=d+v.spaceBetweenCols;d=i+u;n&lt;d&amp;&amp;(n=d),++r&gt;=b.grid_num_cols&amp;&amp;(i+=u+v.spaceBetweenRows,t=o,r=0),1==v.numPanes&amp;&amp;v.numThumbsInPane++,d=i+u;u=a+v.gridHeight;u&lt;d&amp;&amp;(1==v.isMaxHeight&amp;&amp;1==v.numPanes&amp;&amp;(v.gridHeight=n,p.height(v.gridHeight),u=v.gridHeight),i=u+v.spaceBetweenRows,a=i,t=o=0,r=0,l&lt;s-1&amp;&amp;(v.numPanes++,v.arrPanes.push(i)))}m.height(n),v.innerHeight=n,1==v.isMaxHeight&amp;&amp;1==v.numPanes&amp;&amp;(v.gridHeight=n,p.height(n))}:function(){var e=m.children(".ug-thumb-wrapper"),t=0,n=0,r=0,o=0,a=0,s=0;v.innerWidth=0,v.numPanes=1,v.arrPanes=[],v.numThumbsInPane=0,v.arrPanes.push(o);var l=e.length;for(i=0;i&lt;l;i++){var u=jQuery(e[i]);f.placeElement(u,t,n);var d=u.outerWidth(),_=u.outerHeight();a&lt;t&amp;&amp;(a=t);u=n+_;s&lt;u&amp;&amp;(s=u);u=a+d;u&gt;v.innerWidth&amp;&amp;(v.innerWidth=u),t+=d+v.spaceBetweenCols,++r&gt;=b.grid_num_cols&amp;&amp;(n+=_+v.spaceBetweenRows,t=o,r=0),1==v.numPanes&amp;&amp;v.numThumbsInPane++,n+_&gt;v.gridHeight&amp;&amp;(n=0,o=v.innerWidth+v.spaceBetweenCols,t=o,r=0,1==v.isMaxHeight&amp;&amp;1==v.numPanes&amp;&amp;(v.gridHeight=s,p.height(v.gridHeight)),i&lt;l-1&amp;&amp;(v.numPanes++,v.arrPanes.push(o)))}m.width(v.innerWidth),1==v.isMaxHeight&amp;&amp;1==v.numPanes&amp;&amp;(v.gridHeight=s,p.height(s))}:function(){var e=m.children(".ug-thumb-wrapper"),t=b.grid_padding,i=b.grid_padding,n=i,r=t,o=0,a=0,s=0,l=0,u=0;v.innerWidth=0,v.numPanes=1,v.arrPanes=[],v.numThumbsInPane=0,v.arrPanes.push(t-b.grid_padding);for(var d=e.length,_=0;_&lt;d;_++){var g=jQuery(e[_]),c=g.outerWidth(),h=g.outerHeight();r-t+c&gt;v.gridWidth&amp;&amp;(n=0,++u&gt;=b.grid_num_rows?(t=r,n=i,s=u=0,1==v.numPanes&amp;&amp;(v.gridWidth=o+b.grid_padding,p.width(v.gridWidth),v.gridHeight=l+b.grid_padding,p.height(v.gridHeight)),v.numPanes++,v.arrPanes.push(t-b.grid_padding)):(r=t,n=s+v.spaceBetweenRows)),f.placeElement(g,r,n);g=r+c;o&lt;g&amp;&amp;(o=g);h=n+h;s&lt;h&amp;&amp;(s=h),l&lt;h&amp;&amp;(l=h),a&lt;h&amp;&amp;(a=h),(g=o+c)&gt;v.innerWidth&amp;&amp;(v.innerWidth=g),r+=c+v.spaceBetweenCols,1==v.numPanes&amp;&amp;v.numThumbsInPane++}v.innerWidth=o+b.grid_padding,v.innerHeight=l+b.grid_padding,m.width(v.innerWidth),m.height(v.innerHeight),1==v.numPanes&amp;&amp;(v.gridWidth=o+b.grid_padding,v.gridHeight=l+b.grid_padding,p.width(v.gridWidth),p.height(v.gridHeight))})(),1==v.isFirstTimeRun&amp;&amp;v.isTilesMode&amp;&amp;((e=u.getThumbs()).each(function(e,t){r.trigger(v.eventSizeChange,jQuery(t))}),e.fadeTo(0,1)),null!=t&amp;&amp;y(t.index),s.trigger(a.events.PANE_CHANGE,v.currentPane),v.isFirstTimeRun=!1}function g(){return 1==v.isTilesMode?d.getGlobalTileSize():u.getGlobalThumbSize()}function c(){if(0==v.isTilesMode)throw new Error("Dynamic size can be set only in tiles mode");var e=!1,t=l.isMobileMode(),i=v.spaceBetweenCols;1==t?(v.spaceBetweenCols=b.grid_space_between_mobile,v.spaceBetweenRows=b.grid_space_between_mobile):(v.spaceBetweenCols=b.grid_space_between_cols,v.spaceBetweenRows=b.grid_space_between_rows),v.spaceBetweenCols!=i&amp;&amp;(e=!0);t=g().width,i=v.tileMaxWidth;return f.getNumItemsInSpace(v.gridWidth,v.tileMaxWidth,v.spaceBetweenCols)&lt;b.grid_min_cols&amp;&amp;(i=f.getItemSizeInSpace(v.gridWidth,b.grid_min_cols,v.spaceBetweenCols)),d.setTileSizeOptions(i),i!=t&amp;&amp;(e=!0),e}function h(){var e,t;0==v.isHorizontal?(e=g().width,t=b.grid_num_cols*e+(b.grid_num_cols-1)*v.spaceBetweenCols+2*b.grid_padding,e=v.gridHeight,v.gridWidth=t,f.setElementSize(p,t,e),f.setElementSize(m,t,e),v.innerWidth=t,v.innerHeight=e):(t=g().height,e=v.gridWidth,t=b.grid_num_rows*t+(b.grid_num_rows-1)*v.spaceBetweenRows+2*b.grid_padding,v.gridHeight=t,f.setElementSize(p,e,t),f.setElementSize(m,e,t),v.innerWidth=e,v.innerHeight=t)}function y(e){e=T(e);-1!=e&amp;&amp;a.gotoPane(e,"scroll")}function w(e){e=I(e);0!=e&amp;&amp;m.stop(!0).animate(e,{duration:b.grid_transition_duration,easing:b.grid_transition_easing,queue:!1})}function t(){w(-v.arrPanes[v.currentPane])}function I(e){var t={};return 1==v.isNavigationVertical?t.top=e+"px":t.left=e+"px",t}function E(){var e=f.getElementSize(m);return 1==v.isNavigationVertical?e.top:e.left}function T(e){return 0==function(e){if(e&lt;0||e&gt;=v.numThumbs)throw new Error("Thumb not exists: "+e);return!0}(e)?-1:Math.floor(e/v.numThumbsInPane)}function x(){var e=f.getStoredEventData(v.storedEventID),t=E(),i=Math.abs(e.startInnerPos-t),t=1==v.isNavigationVertical?v.gridHeight:v.gridWidth;return Math.round(3*t/8)&lt;=i||e.diffTime&lt;300&amp;&amp;25&lt;i}function S(){return 1==v.numPanes||f.isApproveStoredEventClick(v.storedEventID,v.isNavigationVertical)}function P(e){if(1==function(){if(1==v.numPanes)return!1;var e=f.getStoredEventData(v.storedEventID),t=e.diffTime,i=E();return 30&lt;(e=Math.abs(i-e.startInnerPos))||5&lt;e&amp;&amp;300&lt;t}())return!0;var t=jQuery(this),t=u.getItemByThumb(t);l.selectItem(t)}function j(e){if(1==v.numPanes)return!0;if(1==v.touchActive)return!0;0==v.isTilesMode&amp;&amp;e.preventDefault(),v.touchActive=!0;var t={startInnerPos:E()};f.storeEventData(e,v.storedEventID,t)}function C(e){if(0==v.touchActive)return!0;e.preventDefault(),f.updateStoredEventData(e,v.storedEventID);var t=f.getStoredEventData(v.storedEventID,v.isNavigationVertical);if(0!=b.grid_vertical_scroll_ondrag&amp;&amp;(1!=v.isNavigationVertical&amp;&amp;"vert"===f.handleScrollTop(v.storedEventID)))return!0;var i=t.diffMousePos,n=t.startInnerPos+i,r=0&lt;i?"prev":"next",e=v.arrPanes[v.numPanes-1];0==b.grid_carousel&amp;&amp;0&lt;n&amp;&amp;"prev"==r&amp;&amp;(n/=3),0==b.grid_carousel&amp;&amp;n&lt;-e&amp;&amp;"next"==r&amp;&amp;(n=t.startInnerPos+i/3),0!=(n=I(n=n))&amp;&amp;m.css(n)}function A(e){if(0==v.touchActive)return!0;f.updateStoredEventData(e,v.storedEventID);e=f.getStoredEventData(v.storedEventID,v.isNavigationVertical);if(v.touchActive=!1,0==x())return t(),!0;"next"==(0&lt;E()-e.startInnerPos?"prev":"next")?0==b.grid_carousel&amp;&amp;a.isLastPane()?t():a.nextPane():0==b.grid_carousel&amp;&amp;a.isFirstPane()?t():a.prevPane()}function M(){var e=l.getSelectedItem();u.setThumbSelected(e.objThumbWrapper),y(e.index)}this.destroy=function(){var e;0==v.isTilesMode?((e=p.find(".ug-thumb-wrapper")).off("click"),e.off("touchend"),n.on(l.events.ITEM_CHANGE),u.destroy()):d.destroy(),p.unbind("mousedown"),p.unbind("touchstart"),jQuery("body").unbind("mousemove"),jQuery("body").unbind("touchmove"),jQuery(window).add("body").unbind("touchend"),jQuery(window).add("body").unbind("mouseup"),s.off(a.events.PANE_CHANGE)},this.__________EXTERNAL_GENERAL_________=function(){},this.setThumbUnselected=function(e){u.setThumbUnselected(e)},this.isItemThumbVisible=function(e){return T(e.index)==v.currentPane},this.__________EXTERNAL_API_________=function(){},this.getNumPanesEstimationByHeight=function(e){var t;t=1==v.isTilesMode?b.tile_height:u.getOptions().thumb_height;var i=u.getNumThumbs(),i=Math.ceil(i/b.grid_num_cols),i=i*t+(i-1)*v.spaceBetweenRows;return Math.ceil(i/e)},this.getNumPanesEstimationByWidth=function(e){var t;t=v.isTilesMode?b.tile_width:u.getOptions().thumb_width;var i=u.getNumThumbs(),i=Math.ceil(i/b.grid_num_rows),i=i*t+(i-1)*v.spaceBetweenCols;return Math.ceil(i/e)},this.getHeightEstimationByWidth=function(e){if(0==v.isTilesMode)throw new Error("This function works only with tiles mode");var t=u.getNumThumbs(),e=f.getNumItemsInSpace(e,b.tile_width,v.spaceBetweenCols),e=Math.ceil(t/e);e&gt;b.grid_num_rows&amp;&amp;(e=b.grid_num_rows);e=f.getSpaceByNumItems(e,b.tile_height,v.spaceBetweenRows);return e+=2*b.grid_padding},this.getElement=function(){return p},this.getSize=function(){return f.getElementSize(p)},this.getNumPanes=function(){return v.numPanes},this.isFirstPane=function(){return 0==v.currentPane},this.isLastPane=function(){return v.currentPane==v.numPanes-1},this.getPaneInfo=function(){return{pane:v.currentPane,total:v.numPanes}},this.getPane=function(){return v.currentPane},this.setWidth=function(e){v.gridWidth=e,v.isHorizontal=!0},this.setMaxWidth=function(e){v.gridWidth=e,v.isMaxWidth=!0,v.isHorizontal=!0},this.setHeight=function(e){v.gridHeight=e,v.isHorizontal=!1},this.setMaxHeight=function(e){v.gridHeight=e,v.isMaxHeight=!0,v.isHorizontal=!1},this.gotoPane=function(e,t){if(0==function(e){if(e&gt;=v.numPanes||e&lt;0)throw new Error("Pane "+index+" doesn't exists.");return!0}(e))return!1;if(e==v.currentPane)return!1;var i=-v.arrPanes[e];v.currentPane=e,w(i),s.trigger(a.events.PANE_CHANGE,e)},this.nextPane=function(){var e=v.currentPane+1;if(e&gt;=v.numPanes){if(0==b.grid_carousel)return!0;e=0}a.gotoPane(e,"next")},this.prevPane=function(){var e=v.currentPane-1;if(e&lt;0&amp;&amp;(e=v.numPanes-1,0==b.grid_carousel))return!1;a.gotoPane(e,"prev")},this.attachNextPaneButton=function(e){if(f.setButtonOnClick(e,a.nextPane),1==b.grid_carousel)return!0;a.isLastPane()&amp;&amp;e.addClass("ug-button-disabled"),s.on(a.events.PANE_CHANGE,function(){a.isLastPane()?e.addClass("ug-button-disabled"):e.removeClass("ug-button-disabled")})},this.attachPrevPaneButton=function(e){if(f.setButtonOnClick(e,a.prevPane),1==b.grid_carousel)return!0;a.isFirstPane()&amp;&amp;e.addClass("ug-button-disabled"),s.on(a.events.PANE_CHANGE,function(){a.isFirstPane()?e.addClass("ug-button-disabled"):e.removeClass("ug-button-disabled")})},this.attachBullets=function(i){i.setActive(v.currentPane),jQuery(i).on(i.events.BULLET_CLICK,function(e,t){a.gotoPane(t,"theme"),i.setActive(t)}),jQuery(a).on(a.events.PANE_CHANGE,function(e,t){i.setActive(t)})},this.getObjTileDesign=function(){return d},this.init=function(e,t,i){_(e,t,i)},this.run=function(){e()},this.setHtml=function(e){(e=(e=e)||r).append("&lt;div class='ug-thumbs-grid'&gt;&lt;div class='ug-thumbs-grid-inner'&gt;&lt;/div&gt;&lt;/div&gt;"),p=e.children(".ug-thumbs-grid"),m=p.children(".ug-thumbs-grid-inner"),1==v.isTilesMode?d.setHtml(m):u.setHtmlThumbs(m)}}function UGTileDesign(){var i,n,_=this,r=jQuery(this),g=new UniteGalleryMain,c=new UGFunctions,o=new UGThumbsGeneral;this.resizemode={FULL:"full",WRAPPER_ONLY:"wrapper_only",VISIBLE_ELEMENTS:"visible_elements"},this.sizeby={GLOBAL_RATIO:"global_ratio",TILE_RATIO:"tile_ratio",IMAGE_RATIO:"image_ratio",CUSTOM:"custom"},this.events={TILE_CLICK:"tile_click"};var h={tile_width:250,tile_height:200,tile_size_by:_.sizeby.IMAGE_RATIO,tile_visible_before_image:!1,tile_enable_background:!0,tile_background_color:"#F0F0F0",tile_enable_border:!1,tile_border_width:3,tile_border_color:"#F0F0F0",tile_border_radius:0,tile_enable_outline:!1,tile_outline_color:"#8B8B8B",tile_enable_shadow:!1,tile_shadow_h:1,tile_shadow_v:1,tile_shadow_blur:3,tile_shadow_spread:2,tile_shadow_color:"#8B8B8B",tile_enable_action:!0,tile_as_link:!1,tile_link_newpage:!0,tile_enable_overlay:!0,tile_overlay_opacity:.4,tile_overlay_color:"#000000",tile_enable_icons:!0,tile_show_link_icon:!1,tile_videoplay_icon_always_on:"never",tile_space_between_icons:26,tile_enable_image_effect:!1,tile_image_effect_type:"bw",tile_image_effect_reverse:!1,tile_enable_textpanel:!1,tile_textpanel_source:"title",tile_textpanel_always_on:!1,tile_textpanel_appear_type:"slide",tile_textpanel_position:"inside_bottom",tile_textpanel_offset:0},a={thumb_color_overlay_effect:!0,thumb_overlay_reverse:!0,thumb_image_overlay_effect:!1,tile_textpanel_enable_description:!1,tile_textpanel_bg_opacity:.6,tile_textpanel_padding_top:8,tile_textpanel_padding_bottom:8},p={ratioByHeight:0,ratioByWidth:0,eventSizeChange:"thumb_size_change",funcCustomTileHtml:null,funcCustomPositionElements:null,funcParentApproveClick:null,isSaparateIcons:!1,tileInnerReduce:0,isTextpanelOutside:!1,hasImageContainer:!1,isVideoplayIconAlwaysOn:!1,isTextPanelHidden:!1};function s(e,t){g=e,jQuery(e);var i=g.getObjects();n=i.g_objWrapper,g.getArrItems(),h=jQuery.extend(h,a),h=jQuery.extend(h,t),function(){if(1==h.tile_enable_overlay?(h.thumb_overlay_opacity=h.tile_overlay_opacity,h.thumb_overlay_color=h.tile_overlay_color):0==h.tile_enable_icons?h.thumb_color_overlay_effect=!1:h.thumb_overlay_opacity=0,h.tile_as_link&amp;&amp;(h.thumb_wrapper_as_link=!0,h.thumb_link_newpage=h.tile_link_newpage),1==h.tile_enable_outline&amp;&amp;0==h.tile_enable_border&amp;&amp;(h.tile_enable_outline=!1),p.tileInnerReduce=0,h.tile_enable_border&amp;&amp;(p.tileInnerReduce=2*h.tile_border_width,o.setThumbInnerReduce(p.tileInnerReduce)),p.isSaparateIcons=!c.isRgbaSupported(),1==h.tile_enable_textpanel){switch(h.tile_textpanel_position){case"top":h.tile_textpanel_align="top";case"bottom":p.isTextpanelOutside=!0,h.tile_textpanel_always_on=!0,h.tile_textpanel_offset=0;break;case"inside_top":h.tile_textpanel_align="top";break;case"middle":h.tile_textpanel_align="middle",h.tile_textpanel_appear_type="fade"}0==h.tile_textpanel_always_on&amp;&amp;(p.isSaparateIcons=!0)}0!=h.tile_textpanel_offset&amp;&amp;(h.tile_textpanel_appear_type="fade",h.tile_textpanel_margin=h.tile_textpanel_offset),"title_and_desc"==h.tile_textpanel_source&amp;&amp;(h.tile_textpanel_enable_description=!0,h.tile_textpanel_desc_style_as_title=!0)}(),o.init(e,h);e=["overlay"];p.funcCustomTileHtml&amp;&amp;(e=[]),o.setCustomThumbs(u,e,{allow_onresize:!1});e=o.getOptions();h=jQuery.extend(h,e),p.ratioByWidth=h.tile_width/h.tile_height,p.ratioByHeight=h.tile_height/h.tile_width,h.tile_size_by==_.sizeby.GLOBAL_RATIO&amp;&amp;p.isTextpanelOutside&amp;&amp;(p.hasImageContainer=!0)}function l(){var e=g.isMobileMode();switch(p.isTextPanelHidden=!1,1==e&amp;&amp;0==h.tile_textpanel_always_on&amp;&amp;(p.isTextPanelHidden=!0),p.isVideoplayIconAlwaysOn=h.tile_videoplay_icon_always_on,h.tile_videoplay_icon_always_on){case"always":p.isVideoplayIconAlwaysOn=!0;break;case"never":p.isVideoplayIconAlwaysOn=!1;break;case"mobile_only":p.isVideoplayIconAlwaysOn=1==e;break;case"desktop_only":p.isVideoplayIconAlwaysOn=0==e}}function u(e,t){if(e.addClass("ug-tile"),p.funcCustomTileHtml)return p.funcCustomTileHtml(e,t),!1;var i="";1==p.hasImageContainer&amp;&amp;(i+="&lt;div class='ug-image-container ug-trans-enabled'&gt;");var n="ug-thumb-image";0!=h.tile_enable_image_effect&amp;&amp;1!=h.tile_image_effect_reverse||(n+=" ug-trans-enabled");var r=c.stripTags(t.title),r=c.htmlentitles(r);i+='&lt;img src="'+c.escapeDoubleSlash(t.urlThumb)+"\" alt='"+r+"' class='"+n+"'&gt;",1==p.hasImageContainer&amp;&amp;(i+="&lt;/div&gt;"),e.append(i),h.tile_size_by==_.sizeby.GLOBAL_RATIO&amp;&amp;e.fadeTo(0,0);n={};1==h.tile_enable_background&amp;&amp;(n["background-color"]=h.tile_background_color),1==h.tile_enable_border&amp;&amp;(n["border-width"]=h.tile_border_width+"px",n["border-style"]="solid",n["border-color"]=h.tile_border_color,h.tile_border_radius&amp;&amp;(n["border-radius"]=h.tile_border_radius+"px")),1==h.tile_enable_outline&amp;&amp;(n.outline="1px solid "+h.tile_outline_color),1==h.tile_enable_shadow&amp;&amp;(i=h.tile_shadow_h+"px ",i+=h.tile_shadow_v+"px ",i+=h.tile_shadow_blur+"px ",i+=h.tile_shadow_spread+"px ",i+=h.tile_shadow_color,n["box-shadow"]=i),e.css(n);var o,a,n="";if(h.tile_enable_icons?(0==h.tile_as_link&amp;&amp;1==h.tile_enable_action&amp;&amp;(o="ug-button-play ug-icon-zoom","image"!=t.type&amp;&amp;(o="ug-button-play ug-icon-play"),n+="&lt;div class='ug-tile-icon "+o+"' style='display:none'&gt;&lt;/div&gt;"),(t.link&amp;&amp;1==h.tile_show_link_icon||1==h.tile_as_link)&amp;&amp;(0==h.tile_as_link?(a="",1==h.tile_link_newpage&amp;&amp;(a=" target='_blank'"),n+="&lt;a href='"+t.link+"'"+a+" class='ug-tile-icon ug-icon-link'&gt;&lt;/a&gt;"):n+="&lt;div class='ug-tile-icon ug-icon-link' style='display:none'&gt;&lt;/div&gt;"),0==(a=p.isSaparateIcons)&amp;&amp;"image"!=t.type&amp;&amp;1==p.isVideoplayIconAlwaysOn&amp;&amp;(a=!0),(a=a?e:e.children(".ug-thumb-overlay")).append(n),0==(o=a.children("."+o)).length?o=null:o.hide(),0==(a=a.children(".ug-icon-link")).length?a=null:a.hide(),a||1!=h.tile_enable_action||e.addClass("ug-tile-clickable")):1==h.tile_enable_action&amp;&amp;e.addClass("ug-tile-clickable"),1==h.tile_enable_image_effect&amp;&amp;(s="",0==h.tile_image_effect_reverse&amp;&amp;(s=" ug-trans-enabled"),l="&lt;div class='ug-tile-image-overlay"+s+"' &gt;",a=" ug-"+h.tile_image_effect_type+"-effect",l+='&lt;img src="'+c.escapeDoubleSlash(t.urlThumb)+"\" alt='"+t.title+"' class='"+a+s+"'&gt;",l+="&lt;/div&gt;",e.append(l),1==h.tile_image_effect_reverse&amp;&amp;e.children(".ug-tile-image-overlay").fadeTo(0,0)),1==h.tile_enable_textpanel){var s=new UGTextPanel;s.init(g,h,"tile");var l="";1!=h.tile_textpanel_always_on&amp;&amp;1!=p.isTextpanelOutside||(l="ug-trans-enabled"),s.appendHTML(e,l);var u=t.title,d="";switch(h.tile_textpanel_source){case"desc":case"description":u=t.description;break;case"desc_title":""!=t.description&amp;&amp;(u=t.description);break;case"title_and_desc":u=t.title,d=t.description}s.setTextPlain(u,d),0==h.tile_textpanel_always_on&amp;&amp;s.getElement().fadeTo(0,0),e.data("objTextPanel",s),1==h.tile_textpanel_always_on&amp;&amp;f(e).css("z-index",2),1==p.isTextpanelOutside&amp;&amp;(e.append("&lt;div class='ug-tile-cloneswrapper'&gt;&lt;/div&gt;"),l=e.children(".ug-tile-cloneswrapper"),(s=new UGTextPanel).init(g,h,"tile"),s.appendHTML(l),s.setTextPlain(u,d),e.data("objTextPanelClone",s))}null!==t.addHtml&amp;&amp;e.append(t.addHtml)}function d(e){return e.children(".ug-tile-image-overlay")}function m(e){return e.data("objTextPanel")}function f(e){return e.children(".ug-textpanel")}function b(e){return(e=(1==p.isTextpanelOutside?function(e){if(0==(e=e.find(".ug-tile-cloneswrapper .ug-textpanel")).length)throw new Error("text panel cloned element not found");return e}:f)(e))?c.getElementSize(e).height:0}function v(e){e=e.find(".ug-icon-link");return 0==e.length?null:e}function y(e){e=e.find(".ug-button-play");return 0==e.length?null:e}function w(e){return!!e.hasClass("ug-thumb-over")}function I(e){return e.hasClass("ug-tile-clickable")}function E(e){return 1==h.tile_enable_icons&amp;&amp;1==p.isVideoplayIconAlwaysOn&amp;&amp;"image"!=e.type}function T(e,t,i,n){var r=d(e),o=_.getTileImage(e),a=e.find(".ug-tile-image-overlay img");t-=p.tileInnerReduce,i-=p.tileInnerReduce;var s,l,u=null;1==p.isTextpanelOutside&amp;&amp;(i-=s=b(e),"top"==h.tile_textpanel_position&amp;&amp;(u=s),1==p.hasImageContainer&amp;&amp;(l=e,l=0==p.hasImageContainer?null:l.children(".ug-image-container"),c.setElementSize(l,t,i),null!==u&amp;&amp;c.placeElement(l,0,u))),0==h.tile_enable_image_effect?(c.scaleImageCoverParent(o,t,i),0==p.hasImageContainer&amp;&amp;null!==u&amp;&amp;c.placeElement(o,0,u)):(l="nothing",!0===n&amp;&amp;0==p.isTextpanelOutside&amp;&amp;(l=1==h.tile_image_effect_reverse?"effect":"image"),"effect"!=l&amp;&amp;(c.setElementSize(r,t,i),null!==u&amp;&amp;c.placeElement(r,0,u),c.scaleImageCoverParent(a,t,i)),"image"!=l&amp;&amp;(1==p.hasImageContainer?c.scaleImageCoverParent(o,t,i):"effect"==l?(c.scaleImageCoverParent(o,t,i),null!==u&amp;&amp;c.placeElement(o,0,u)):c.cloneElementSizeAndPos(a,o,!1,null,u)))}function x(e,t,i,n){var r=null;if(i&amp;&amp;(r=i-p.tileInnerReduce),n&amp;&amp;(n-=p.tileInnerReduce),"clone"==t)return e.data("objTextPanelClone").refresh(!0,!0,r),void(_.getItemByTile(e).textPanelCloneSizeSet=!0);i=m(e);i&amp;&amp;(t=null,1==p.isTextpanelOutside&amp;&amp;(t=b(e)),i.refresh(!1,!0,r,t),1!=h.tile_textpanel_always_on&amp;&amp;"fade"!=h.tile_textpanel_appear_type||(1==p.isTextpanelOutside&amp;&amp;n&amp;&amp;"bottom"==h.tile_textpanel_position?(t=n-t,i.positionPanel(t)):i.positionPanel()))}function S(e){_.getItemByTile(e);var t=y(e),i=v(e),n=c.getElementSize(e);T(e,n.width,n.height),1==h.tile_enable_textpanel&amp;&amp;x(e,"regular",n.width,n.height);var r=n.width-p.tileInnerReduce,o=n.height-p.tileInnerReduce,a=0;1==p.isTextpanelOutside&amp;&amp;(o-=d=b(e),"top"==h.tile_textpanel_position&amp;&amp;(a=d));var s,l,u,d=e.children(".ug-thumb-overlay");c.setElementSizeAndPosition(d,0,a,r,o),(t||i)&amp;&amp;(s=0,1==h.tile_enable_textpanel&amp;&amp;0==p.isTextPanelHidden&amp;&amp;0==p.isTextpanelOutside&amp;&amp;(l=f(e),0&lt;(u=c.getElementSize(l)).height&amp;&amp;(s=Math.floor(u.height/2*-1)))),t&amp;&amp;i?(r=c.getElementSize(t),o=c.getElementSize(i),e=h.tile_space_between_icons,l=r.width+e+o.width,(u=Math.floor((n.width-l)/2))&lt;e&amp;&amp;(e=Math.floor((n.width-r.width-o.width)/3),l=r.width+e+o.width,u=Math.floor((n.width-l)/2)),c.placeElement(t,u,"middle",0,s),c.placeElement(i,u+r.width+e,"middle",0,s)):(t&amp;&amp;c.placeElement(t,"center","middle",0,s),i&amp;&amp;c.placeElement(i,"center","middle",0,s)),t&amp;&amp;t.show(),i&amp;&amp;i.show()}function P(e,t){_.getItemByTile(e);var i=d(e),n=h.thumb_transition_duration;0==h.tile_image_effect_reverse?(e=_.getTileImage(e),t?(e.fadeTo(0,1),i.stop(!0).fadeTo(n,0)):i.stop(!0).fadeTo(n,1)):t?i.stop(!0).fadeTo(n,1):i.stop(!0).fadeTo(n,0)}function j(e,t){var i,n,r,o=h.thumb_transition_duration,a=f(e);if(!a)return 1;"slide"==h.tile_textpanel_appear_type?0!=(r=c.getElementSize(a)).width&amp;&amp;(i=-r.height,n={},e={},r="bottom","inside_top"==h.tile_textpanel_position&amp;&amp;(r="top"),n[r]=i+"px",e[r]="0px",1==t?(a.fadeTo(0,1),0==a.is(":animated")&amp;&amp;a.css(n),e.opacity=1,a.stop(!0).animate(e,o)):a.stop(!0).animate(n,o)):1==t?a.stop(!0).fadeTo(o,1):a.stop(!0).fadeTo(o,0)}function C(e,t,i){var n=h.thumb_transition_duration;i&amp;&amp;!0===i&amp;&amp;(n=0);i=y(e),e=v(e),t=t?1:0;i&amp;&amp;i.stop(!0).fadeTo(n,t),e&amp;&amp;e.stop(!0).fadeTo(n,t)}function e(e,t){var i;t=jQuery(t),h.tile_enable_image_effect&amp;&amp;P(t,!0),1==h.tile_enable_textpanel&amp;&amp;0==h.tile_textpanel_always_on&amp;&amp;0==p.isTextPanelHidden&amp;&amp;j(t,!0),p.isSaparateIcons&amp;&amp;1==h.tile_enable_icons&amp;&amp;(i=1==h.thumb_overlay_reverse,0==E(_.getItemByTile(t))&amp;&amp;C(t,i,!1))}function t(e,t){var i;t=jQuery(t),h.tile_enable_image_effect&amp;&amp;P(t,!1),1==h.tile_enable_textpanel&amp;&amp;0==h.tile_textpanel_always_on&amp;&amp;j(t,!1),1==p.isSaparateIcons&amp;&amp;1==h.tile_enable_icons&amp;&amp;(i=1!=h.thumb_overlay_reverse,0==E(_.getItemByTile(t))?C(t,i,!1):C(t,!0,!0))}function A(e,t,i){if(t=jQuery(t),1==h.tile_visible_before_image&amp;&amp;!0!==t.data("image_placed")&amp;&amp;!0!==i)return!0;S(t),o.setThumbNormalStyle(t)}function M(e,t,i){S(t),i.fadeTo(0,1),t.data("image_placed",!0)}function O(e){if(1==I(e))return r.trigger(_.events.TILE_CLICK,e),1;var t;0==w(e)&amp;&amp;(t=e,o.getThumbs().not(t).each(function(e,t){o.setThumbNormalStyle(jQuery(t))}),o.setThumbOverStyle(e))}function z(e){var t=jQuery(this),i=t.prop("tagName").toLowerCase(),n=!0;if(p.funcParentApproveClick&amp;&amp;0==p.funcParentApproveClick()&amp;&amp;(n=!1),"a"==i)0==n&amp;&amp;e.preventDefault();else if(0==w(t))1==n&amp;&amp;O(t);else{if(0==I(t))return!0;1==n&amp;&amp;r.trigger(_.events.TILE_CLICK,t)}}function k(e){e.stopPropagation();var t=jQuery(this).parents(".ug-tile"),e=!0;return p.funcParentApproveClick&amp;&amp;0==p.funcParentApproveClick()&amp;&amp;(e=!1),0==w(t)?(O(t),!0):1==e?(r.trigger(_.events.TILE_CLICK,t),!1):void 0}function L(e){var t=jQuery(this).parents(".ug-tile");p.funcParentApproveClick&amp;&amp;0==p.funcParentApproveClick()&amp;&amp;e.preventDefault(),0==w(t)&amp;&amp;0==h.tile_as_link&amp;&amp;(e.preventDefault(),O(t))}this.loadTileImage=function(i){var e=_.getTileImage(i);c.checkImagesLoaded(e,null,function(e,t){M(0,i,jQuery(e))})},this.setHtml=function(e,t){i=e,!0!==t&amp;&amp;l(),o.setHtmlThumbs(e,t)},this.initEvents=function(){o.initEvents(),jQuery(o).on(o.events.SETOVERSTYLE,e),jQuery(o).on(o.events.SETNORMALSTYLE,t),jQuery(o).on(o.events.PLACEIMAGE,M),n.on(p.eventSizeChange,A),i.on("click",".ug-tile",z),i.on("click",".ug-tile .ug-button-play",k),i.on("click",".ug-tile .ug-icon-link",L)},this.destroy=function(){var e;i.off("click",".ug-tile"),i.off("click",".ug-tile .ug-button-play"),i.off("click",".ug-tile .ug-icon-link"),jQuery(o).off(o.events.SETOVERSTYLE),jQuery(o).off(o.events.SETNORMALSTYLE),jQuery(o).off(o.events.PLACEIMAGE),n.off(p.eventSizeChange),1==h.tile_enable_textpanel&amp;&amp;(e=o.getThumbs(),jQuery.each(e,function(e,t){t=m(jQuery(t));t&amp;&amp;t.destroy()})),o.destroy()},this.init=function(e,t,i){s(e,t)},this.setFixedMode=function(){h.tile_size_by=_.sizeby.GLOBAL_RATIO,h.tile_visible_before_image=!0},this.setApproveClickFunction=function(e){p.funcParentApproveClick=e},this.resizeTile=function(e,t,i,n){switch(1==p.isTextpanelOutside&amp;&amp;x(e,"clone",t),i=t?i||_.getTileHeightByWidth(t,e):(t=h.tile_width,h.tile_height),c.setElementSize(e,t,i),n){default:case _.resizemode.FULL:_.triggerSizeChangeEvent(e,!0);break;case _.resizemode.WRAPPER_ONLY:return!0;case _.resizemode.VISIBLE_ELEMENTS:if(p.funcCustomTileHtml)return _.triggerSizeChangeEvent(e,!0),!0;T(e,t,i,!0),1==h.tile_enable_textpanel&amp;&amp;1==h.tile_textpanel_always_on&amp;&amp;t&amp;&amp;x(e,"regular",t,i)}},this.resizeAllTiles=function(i,n,e){l();var r=null;h.tile_size_by==_.sizeby.GLOBAL_RATIO&amp;&amp;(r=_.getTileHeightByWidth(i)),(e=e||o.getThumbs()).each(function(e,t){_.resizeTile(jQuery(t),i,r,n)})},this.triggerSizeChangeEvent=function(e,t){if(!e)return!1;t=t||!1,n.trigger(p.eventSizeChange,[e,t])},this.triggerSizeChangeEventAllTiles=function(t){o.getThumbs().each(function(){var e=jQuery(this);_.triggerSizeChangeEvent(e,t)})},this.disableEvents=function(){o.getThumbs().css("pointer-events","none")},this.enableEvents=function(){o.getThumbs().css("pointer-events","auto")},this.setOptions=function(e){h=jQuery.extend(h,e),o.setOptions(e)},this.setTileSizeOptions=function(e){if(h.tile_size_by!==_.sizeby.GLOBAL_RATIO)throw new Error("setNewTileOptions works with global ration only");h.tile_width=e,h.tile_height=Math.floor(e*p.ratioByHeight)},this.setCustomFunctions=function(e,t){p.funcCustomTileHtml=e,p.funcCustomPositionElements=t},this.run=function(e){var t=o.type.GET_THUMBS_ALL;!0===e&amp;&amp;(t=o.type.GET_THUMBS_NEW);t=o.getThumbs(t);h.tile_size_by==_.sizeby.GLOBAL_RATIO&amp;&amp;_.resizeAllTiles(h.tile_width,_.resizemode.WRAPPER_ONLY,t),1==h.tile_enable_image_effect&amp;&amp;0==h.tile_image_effect_reverse&amp;&amp;t.children(".ug-thumb-image").fadeTo(0,0),o.setHtmlProperties(t),1==h.tile_visible_before_image&amp;&amp;(t.children(".ug-thumb-image").fadeTo(0,0),o.loadThumbsImages())},this._____________EXTERNAL_GETTERS____________=function(){},this.getObjThumbs=function(){return o},this.getOptions=function(){return h},this.getTileImage=function(e){return e.find("img.ug-thumb-image")},this.getItemByTile=function(e){return o.getItemByThumb(e)},this.getTileHeightByWidth=function(e,t){var i=function(e){var t=p.ratioByHeight;switch(h.tile_size_by){default:t=p.ratioByHeight;break;case _.sizeby.IMAGE_RATIO:if(!e)throw new Error("tile should be given for tile ratio");var i=_.getItemByTile(e);if(void 0!==i.thumbRatioByHeight){if(0==i.thumbRatioByHeight)throw trace(i),new Error("the item ratio not inited yet");t=i.thumbRatioByHeight}break;case _.sizeby.CUSTOM:return null}return t}(t);if(null===i)return null;i=Math.floor((e-p.tileInnerReduce)*i)+p.tileInnerReduce;return t&amp;&amp;1==p.isTextpanelOutside&amp;&amp;h.tile_size_by==_.sizeby.IMAGE_RATIO&amp;&amp;(i+=b(t)),i},this.getTileImageSize=function(e){e=_.getItemByTile(e);if(!e.thumbWidth||!e.thumbHeight)throw new Error("Can't get image size - image not inited.");return{width:e.thumbWidth,height:e.thumbHeight}},this.getGlobalTileSize=function(){if(h.tile_size_by!=_.sizeby.GLOBAL_RATIO)throw new Error("The size has to be global ratio");return{width:h.tile_width,height:h.tile_height}}}function UGTiles(){var n,r,d,_,h,i,o=this,a=jQuery(this),s=new UniteGalleryMain,g=new UGFunctions,c=new UGTileDesign,b=new UGThumbsGeneral,l={},v={tiles_type:"columns",tiles_col_width:250,tiles_align:"center",tiles_exact_width:!1,tiles_space_between_cols:3,tiles_space_between_cols_mobile:3,tiles_include_padding:!0,tiles_min_columns:2,tiles_max_columns:0,tiles_keep_order:!1,tiles_set_initial_height:!0,tiles_justified_row_height:150,tiles_justified_space_between:3,tiles_nested_optimal_tile_width:250,tiles_nested_col_width:null,tiles_nested_debug:!1,tiles_enable_transition:!0},u={isFirstTimeRun:!0,handle:null,isTransActive:!(this.events={THUMB_SIZE_CHANGE:"thumb_size_change",TILES_FIRST_PLACED:"tiles_first_placed",ALL_TILES_LOADED:"all_tiles_loaded"}),isTransInited:!1,isFirstPlaced:!0,isAllLoaded:!1},p={colWidth:null,nestedOptimalCols:5,gridY:0,maxColumns:0,columnsValueToEnableHeightResize:3,resizeLeftRightToColumn:!0,currentItem:0,currentGap:null,optimalTileWidth:null,maxGridY:0};function m(e,t){i=e.getObjects(),s=e,n=jQuery(e),r=i.g_objWrapper,i.g_arrItems,(v=jQuery.extend(v,t)).tiles_min_columns&lt;1&amp;&amp;(v.tiles_min_columns=1),0!=v.tiles_max_columns&amp;&amp;v.tiles_max_columns&lt;v.tiles_min_columns&amp;&amp;(v.tiles_max_columns=v.tiles_min_columns),c.init(e,v),b=c.getObjThumbs()}function f(){var e;d.addClass("ug-tiles-rest-mode"),u.isTransInited=!0,1==v.tiles_enable_transition&amp;&amp;(d.addClass("ug-tiles-transit"),1==(e=c.getOptions()).tile_enable_image_effect&amp;&amp;0==e.tile_image_effect_reverse&amp;&amp;d.addClass("ug-tiles-transit-overlays"),u.isTransActive=!0)}function y(){return g.getElementSize(d).width}function w(){0!=u.isTransInited&amp;&amp;(d.addClass("ug-tiles-transition-active"),d.removeClass("ug-tiles-rest-mode"),0!=u.isTransActive&amp;&amp;c.disableEvents())}function e(){0!=u.isTransInited&amp;&amp;(d.removeClass("ug-tiles-transition-active"),d.addClass("ug-tiles-rest-mode"))}function I(){1==u.isTransActive?(setTimeout(function(){c.enableEvents(),c.triggerSizeChangeEventAllTiles(),e()},800),u.handle&amp;&amp;clearTimeout(u.handle),u.handle=setTimeout(function(){e(),c.triggerSizeChangeEventAllTiles(),u.handle=null},2e3)):(c.triggerSizeChangeEventAllTiles(),e())}function E(){l.colWidth=(l.availWidth-l.colGap*(l.numCols-1))/l.numCols,l.colWidth=Math.floor(l.colWidth),l.totalWidth=g.getSpaceByNumItems(l.numCols,l.colWidth,l.colGap)}function T(){var e;switch(l.colWidth=v.tiles_col_width,l.minCols=v.tiles_min_columns,l.maxCols=v.tiles_max_columns,0==s.isMobileMode()?l.colGap=v.tiles_space_between_cols:l.colGap=v.tiles_space_between_cols_mobile,l.galleryWidth=y(),l.availWidth=l.galleryWidth,1==v.tiles_include_padding&amp;&amp;(l.availWidth=l.galleryWidth-2*l.colGap),1==v.tiles_exact_width?(l.numCols=g.getNumItemsInSpace(l.availWidth,l.colWidth,l.colGap),0&lt;l.maxCols&amp;&amp;l.numCols&gt;l.maxCols&amp;&amp;(l.numCols=l.maxCols),l.numCols&lt;l.minCols?(l.numCols=l.minCols,E()):l.totalWidth=l.numCols*(l.colWidth+l.colGap)-l.colGap):((e=g.getNumItemsInSpaceRound(l.availWidth,l.colWidth,l.colGap))&lt;l.minCols?e=l.minCols:0!=l.maxCols&amp;&amp;e&gt;l.maxCols&amp;&amp;(e=l.maxCols),l.numCols=e,E()),v.tiles_align){case"center":default:l.addX=Math.round((l.galleryWidth-l.totalWidth)/2);break;case"left":l.addX=0;break;case"right":l.addX=l.galleryWidth-l.totalWidth}l.arrPosx=[];for(var t=0;t&lt;l.numCols;t++){var i=g.getColX(t,l.colWidth,l.colGap);l.arrPosx[t]=i+l.addX}}function x(){l.maxColHeight=0,l.colHeights=[0]}function S(e,t,i,n){null==n&amp;&amp;(n=function(){for(var e=0,t=999999999,i=0;i&lt;l.numCols;i++){if(null==l.colHeights[i]||0==l.colHeights[i])return i;l.colHeights[i]&lt;t&amp;&amp;(e=i,t=l.colHeights[i])}return e}());var r=0;if(void 0!==l.colHeights[n]&amp;&amp;(r=l.colHeights[n]),null===(o=c.getTileHeightByWidth(l.colWidth,e))){if(1==v.tiles_enable_transition)throw new Error("Can't know tile height, please turn off transition");var o=g.getElementSize(e).height}var a=l.arrPosx[n];g.placeElement(e,a,r);o=r+o;l.colHeights[n]=o+l.colGap,l.maxColHeight&lt;o&amp;&amp;(l.maxColHeight=o),1==t&amp;&amp;e.show().fadeTo(0,1),1==i&amp;&amp;d.height(l.maxColHeight)}function P(e){e=e||!1,T(),x();var t=b.getThumbs(b.type.GET_THUMBS_RATIO);w(),c.resizeAllTiles(l.colWidth,c.resizemode.VISIBLE_ELEMENTS,t);for(var i=0;i&lt;t.length;i++){var n=jQuery(t[i]),r=void 0;1==v.tiles_keep_order&amp;&amp;(r=g.getColByIndex(l.numCols,i)),S(n,e,!1,r)}I();var o=d.height();1==u.isTransActive&amp;&amp;o&gt;l.maxColHeight?setTimeout(function(){d.height(l.maxColHeight)},700):d.height(l.maxColHeight)}function j(e,t){if(!0!==t&amp;&amp;0==(n=(n=e).index(),!0!==s.getItem(n).ordered_placed&amp;&amp;((n=g.getPrevRowSameColIndex(n,l.numCols))&lt;0||!0===s.getItem(n).ordered_placed)))return;var i=e.index(),t=g.getColByIndex(l.numCols,i),n=s.getItem(i);c.resizeTile(e,l.colWidth),S(e,!0,!0,t),n.ordered_placed=!0;n=s.getNumItems(),i=g.getNextRowSameColIndex(i,l.numCols);n&lt;=i||(n=b.getThumbByIndex(i),i=s.getItem(i),b.isThumbLoaded(n),b.isThumbLoaded(n)&amp;&amp;!i.ordered_placed&amp;&amp;j(n,!0))}function C(){var e,t,i,n=b.getThumbs(b.type.GET_THUMBS_NO_RATIO);n&amp;&amp;0!=n.length&amp;&amp;(u.isAllLoaded=!1,1==u.isFirstPlaced&amp;&amp;(T(),x(),e=Math.abs(l.galleryWidth-l.totalWidth),1==v.tiles_set_initial_height&amp;&amp;0==g.isScrollbarExists()&amp;&amp;e&lt;25&amp;&amp;(n.length,e=Math.ceil(n.length/l.numCols)*v.tiles_col_width*.75,d.height(e),T())),n.fadeTo(0,0),n=n.find("img.ug-thumb-image"),t=l.numCols,i=l.galleryWidth,g.checkImagesLoaded(n,function(){T(),t==l.numCols&amp;&amp;i==l.galleryWidth||P(!1),f(),a.trigger(o.events.ALL_TILES_LOADED)},function(e,t){1==u.isFirstPlaced&amp;&amp;s.triggerEvent(o.events.TILES_FIRST_PLACED),e=e,1!=(t=t)&amp;&amp;(e=jQuery(e),t=jQuery(e).parent(),b.triggerImageLoadedEvent(t,e),1==v.tiles_keep_order?j(t):(c.resizeTile(t,l.colWidth),S(t,!0,!0)))}))}function t(){var l=y(),e=b.getThumbs(!0),u=v.tiles_justified_row_height,d=[],n=0,_=v.tiles_justified_space_between,t=e.length;jQuery.each(e,function(e,t){t=jQuery(t);var i=b.getItemByThumb(t),t=i.thumbWidth;i.thumbHeight!==u&amp;&amp;(t=Math.floor(i.thumbRatioByWidth*u)),d[e]=t,n+=t});var i=Math.ceil(n/l);t&lt;i&amp;&amp;(i=t);var r=n/i,o=[],a=0,g=[],s=[],c=0,h=0;jQuery.each(e,function(e,t){e=d[e];(h+1)*r&lt;c+e/2&amp;&amp;(g[o.length]=a,o.push(s),s=[],a=0,h++),c+=e,a+=e,s.push(t)}),g[o.length]=a,o.push(s);var p=[],m=[],f=0;return jQuery.each(o,function(e,t){t.length;var i=g[e],n=(t.length-1)*_,i=(l-n)/i,i=Math.round(u*i);f+=i,0&lt;e&amp;&amp;(f+=_),m.push(i);var r=i/u,o=[],a=n;jQuery.each(t,function(e,t){t=jQuery(t).index(),t=d[t],t=Math.round(t*r);o[e]=t,a+=t});var s=a-l;jQuery.each(o,function(e,t){return 0!=s&amp;&amp;(s&lt;0?(o[e]=t+1,s++):(o[e]=t-1,s--),void(e==o.length-1&amp;&amp;0!=s&amp;&amp;(o[e]-=s)))}),p[e]=o}),{arrRows:o,arrRowWidths:p,arrRowHeights:m,gap:_,totalHeight:f}}function A(a){a=a||!1;var e=y(),s=t();d.height(s.totalHeight),y()!=e&amp;&amp;(s=t()),w();var l=0,u=0;jQuery.each(s.arrRows,function(e,t){var n=s.arrRowWidths[e],r=s.arrRowHeights[e],o=0;jQuery.each(t,function(e,t){var i=jQuery(t),e=n[e];c.resizeTile(i,e,r,c.resizemode.VISIBLE_ELEMENTS),g.placeElement(i,o,l),u&lt;(o+=e)&amp;&amp;(u=o),o+=s.gap,1==a&amp;&amp;jQuery(t).show()}),l+=r+s.gap}),I()}function M(){var e=y();switch(p.galleryWidth=e,_={},p.colWidth=v.tiles_nested_col_width,p.optimalTileWidth=v.tiles_nested_optimal_tile_width,p.currentGap=v.tiles_space_between_cols,1==s.isMobileMode()&amp;&amp;(p.currentGap=v.tiles_space_between_cols_mobile),null==p.colWidth?p.colWidth=Math.floor(p.optimalTileWidth/p.nestedOptimalCols):p.optimalTileWidth&gt;p.colWidth?p.nestedOptimalCols=Math.ceil(p.optimalTileWidth/p.colWidth):p.nestedOptimalCols=1,p.maxColumns=g.getNumItemsInSpace(e,p.colWidth,p.currentGap),p.colWidth=g.getItemSizeInSpace(e,p.maxColumns,p.currentGap),p.gridY=0,h=[],b.getThumbs(!0).each(function(){var e=function(e){var t,i,n={},r=p.colWidth,o=p.currentGap,a=c.getTileImageSize(e),s=e.index(),l=Math.ceil(function(e){return Math.abs(Math.sin(Math.abs(1e3*Math.sin(e))))}(s)*(+p.nestedOptimalCols/3)+2*p.nestedOptimalCols/3),e=a.width,s=a.height,a=e/s;s&lt;e?(t=l,0==(i=Math.round(t/a))&amp;&amp;(i=1)):(i=l,0==(t=Math.round(i*a))&amp;&amp;(t=1));return n.dimWidth=t,n.dimHeight=i,n.width=t*r+o*(t-1),n.height=i*r+o*(i-1),n.imgWidth=e,n.imgHeight=s,n.left=0,n.top=0,n}(jQuery(this));h.push(e)}),p.optimalTileWidth&gt;p.colWidth?p.nestedOptimalCols=Math.ceil(p.optimalTileWidth/p.colWidth):p.nestedOptimalCols=1,p.totalWidth=p.maxColumns*(p.colWidth+p.currentGap)-p.currentGap,v.tiles_align){case"center":default:p.addX=Math.round((p.galleryWidth-p.totalWidth)/2);break;case"left":p.addX=0;break;case"right":p.addX=p.galleryWidth-p.totalWidth}p.maxGridY=0}function O(e){var t=y();M(),z();var i=p.maxGridY*(p.colWidth+p.currentGap)-p.currentGap;d.height(i),y()!=t&amp;&amp;(M(),z()),0==v.tiles_nested_debug&amp;&amp;function(e){e=e||!1,w();for(var t=0;t&lt;h.length;t++)B(t,e);d.height(p.maxColHeight),I()}(e)}function z(t){if(1==v.tiles_nested_debug)return void 0===t&amp;&amp;(t=!0),void function(){if(0==t){for(var e=p.currentItem;e&lt;h.length;e++)k(e);p.currentItem=h.length-1}else k(p.currentItem);for(e=0;e&lt;=p.currentItem;e++)B(e,!0);p.currentItem++}();for(var e=0;e&lt;h.length;e++)k(e)}function k(e){p.maxColHeight=0;for(var t=g.getObjectLength(_),i=p.gridY;i&lt;=t+1;i++){for(var n=0;n&lt;p.maxColumns;n++)if(0==D(p.gridY)||0==W(p.gridY,n))return void function(e,t,i){var n=jQuery.extend(!0,{},h[e]),r=n.dimWidth,o=t-n.dimWidth,a=p.nestedOptimalCols;if(t&lt;=n.dimWidth||o&lt;=.33*a||t&lt;=a)N(e,t);else if(o&lt;=a)4&lt;=a?1==R(Math.floor(t/2),i)?N(e,Math.floor(t/2)+1):N(e,Math.floor(t/2)):N(objImage,t);else if(1==R(r,i))switch(a&lt;=r){case!0:N(e,r-1);break;case!1:N(e,r+1)}n=jQuery.extend(!0,{},h[e]);var s=function(e,t,i){var n=p.gridY-1,r=0,o=0,a=1,s=[],l=[];if(s.push(e),0&lt;=n){for(o=0;0&lt;=n;){if(r=_[n][i],void 0!==_[n][i-1]&amp;&amp;_[n][i-1]==_[n][i]||void 0!==_[n][i+t]&amp;&amp;_[n][i+t-1]==_[n][i+t]||_[n][i]!=_[n][i+t-1])return l.push(a),l.push(s),l;o!=r&amp;&amp;(a++,s.push(r)),n--,o=r}return l.push(a),l.push(s),l}return[0,[]]}(e,n.dimWidth,i);if(p.columnsValueToEnableHeightResize&lt;=s[0]&amp;&amp;p.maxColumns&gt;=2*p.nestedOptimalCols){var l=function(e,t){var i=0,n=0,r=t.dimWidth,o=t.dimHeight,a=0,s=0,l=jQuery.map(_,function(e,t){return[e]});if(void 0===l[p.gridY]||void 0===l[p.gridY][e-1])n=0;else for(var u=0;void 0!==_[p.gridY+u]&amp;&amp;-1!=_[p.gridY+u][e-1];)a=_[p.gridY+u][e-2],u++,n++;if(void 0===l[p.gridY]||void 0===l[p.gridY][e+r])i=0;else for(u=0;void 0!==_[p.gridY+u]&amp;&amp;-1!=_[p.gridY+u][e+r];)s=_[p.gridY+u][e+r+1],u++,i++;t=0,l=0;Math.abs(o-n)&lt;Math.abs(o-i)&amp;&amp;0!=n?(t=n,l=a):0!=i?(t=i,l=s):t=o;return{newHeight:t,idToResize:l}}(i,n),o=H(e,l.newHeight,!0);h[e].dimHeight=o.dimHeight;t=function(e,t){for(var i=0,n=0,r=[],o=0,a=0,s=0;s&lt;e[1].length;s++){var l,u=e[1][s],d=h[e[1][s]];n+=d.dimHeight,0!=s?(i+=d.dimHeight,r.push([u,d.dimHeight])):(l=N(u,t,!0),i+=l.dimHeight,r.push([e[1][s],l.dimHeight]))}o=d.left,a=d.top;for(var _,g=n,c=[],s=r.length-1;0&lt;=s;s--){u=r[s][0];0!=s?(_=Math.max(Math.round(+n/3),Math.floor(r[s][1]*(n/i))),g-=_,(l=H(u,_,!0)).left=o,l.top=a,c.push({tileID:u,sizes:l}),a+=l.dimHeight):((l=H(u,_=g,!0)).left=o,l.top=a,c.push({tileID:u,sizes:l}))}return c}(s,o.dimWidth),a=2&lt;=function(e){for(var t=0,i=0,n=0;n&lt;e.length-1;n++){var r=e[n].sizes,o=-1,a=-1;D(r.top+r.dimHeight)&amp;&amp;p.maxColumns&gt;r.left+r.dimWidth&amp;&amp;(o=_[r.top+r.dimHeight-1][r.left+r.dimWidth],a=_[r.top+r.dimHeight][r.left+r.dimWidth]),o!=a&amp;&amp;t++}for(n=0;n&lt;e.length-1;n++){r=e[n].sizes,o=-1,a=-1;D(r.top+r.dimHeight)&amp;&amp;0&lt;=r.left-1&amp;&amp;(o=_[r.top+r.dimHeight-1][r.left-1],a=_[r.top+r.dimHeight][r.left-1]),o!=a&amp;&amp;i++}return Math.max(i,t)}(t)?!0:!1;l.newHeight&gt;=n.dimHeight&amp;&amp;(n=H(e,l.newHeight,!0));s=function(e,t,i){var n=h[e],r=n.dimHeight,o=(n.dimWidth,n.left),n=n.top,t=(parseInt(n/(p.colWidth+p.currentGap)),parseInt(o/(p.colWidth+p.currentGap)),H(e,r-t+i,!0)),i=[];return i.push({tileID:e,sizes:t}),i}(l.idToResize,l.newHeight,n.dimHeight);n.top=p.gridY,n.left=i,s.push({tileID:e,sizes:n});o=G(s),l=G(t);return o&lt;l||1==a?L(s):L(t)}n.left=i,n.top=p.gridY,h[e]=n,Q(e,n,i,p.gridY),p.maxGridY=n.top+n.dimHeight}(e,function(e){var t=e,i=0;if(1==D(p.gridY))for(;0==W(p.gridY,t);)i++,t++;else i=p.maxColumns;return i}(n),n);p.gridY++}}function L(e){for(var t=0;t&lt;e.length;t++){var i=e[t].sizes,n=e[t].tileID;h[n]=jQuery.extend(!0,{},i),Q(n,i,i.left,i.top)}}function N(e,t,i){i=i||!1;var n=p.colWidth,r=p.currentGap,o=h[e],e=o.imgWidth/o.imgHeight,t=t,e=Math.round(t/e);if(1==i){i=jQuery.extend(!0,{},o);return i.dimWidth=t,i.dimHeight=e,i.width=t*n+r*(t-1),i.height=e*n+r*(e-1),i}o.dimWidth=t,o.dimHeight=e,o.width=t*n+r*(t-1),o.height=e*n+r*(e-1)}function H(e,t,i){i=i||!1;var n=h[e],r=n.dimWidth,o=p.colWidth,e=p.currentGap;if(1==i){i=jQuery.extend(!0,{},n);return i.dimHeight=t,i.width=r*o+e*(r-1),i.height=t*o+e*(t-1),i}n.dimHeight=t,n.width=r*o+e*(r-1),n.height=t*o+e*(t-1)}function G(e){for(var t=0,i=0,n=0;n&lt;e.length;n++){var r=h[e[n].tileID];if(0==r.dimHeight||0==r.height)return;r=r.dimWidth/r.dimHeight/(r.imgWidth/r.imgHeight);r&lt;1&amp;&amp;(r=1/r),t+=r,i++}return t/i}function R(e,t){var i=p.gridY-1;return!(i&lt;=0||0==D(i))&amp;&amp;_[i][t+e-1]!=_[i][t+e]}function D(e){return void 0!==_[e]}function Q(e,t,i,n){for(var r,o,a=0;a&lt;t.dimHeight;a++)for(var s=0;s&lt;t.dimWidth;s++)0==D(n+a)&amp;&amp;function(e){_[e]=new Object;for(var t=0;t&lt;p.maxColumns;t++)_[e][t]=-1}(n+a),r=i+s,o=e,_[n+a][r]=o}function W(e,t){return-1!=_[e][t]}function B(e,t){var i=b.getThumbByIndex(e),n=h[e],r=n.top*(p.colWidth+p.currentGap),e=p.addX+n.left*(p.colWidth+p.currentGap);c.resizeTile(i,n.width,n.height,c.resizemode.VISIBLE_ELEMENTS),g.placeElement(i,e,r),r+n.height&gt;p.maxColHeight&amp;&amp;(p.maxColHeight=r+n.height),1==t&amp;&amp;i.fadeTo(0,1)}function F(){if(1==u.isFirstTimeRun)return!0;if(0==u.isAllLoaded)return!1;switch(v.tiles_type){case"columns":P(!1);break;case"justified":A(!1);break;case"nested":(1==s.isMobileMode()?P:O)(!1)}}function Y(){switch(r.children(".ug-tile").show(),1==u.isFirstTimeRun&amp;&amp;(a.on(o.events.ALL_TILES_LOADED,function(){u.isAllLoaded=!0}),n.on(s.events.SIZE_CHANGE,F),n.on(o.events.TILES_FIRST_PLACED,function(){u.isFirstPlaced=!1}),c.initEvents()),c.run(),v.tiles_type){default:case"columns":C();break;case"justified":t=jQuery(r).find("img.ug-thumb-image"),i=b.getThumbs(),u.isAllLoaded=!1,i.fadeTo(0,0),g.checkImagesLoaded(t,function(){setTimeout(function(){A(!0),i.fadeTo(0,1),s.triggerEvent(o.events.TILES_FIRST_PLACED),f(),a.trigger(o.events.ALL_TILES_LOADED)})},function(e,t){e=jQuery(e);var i=jQuery(e).parent();b.triggerImageLoadedEvent(i,e)});break;case"nested":e=jQuery(r).find("img.ug-thumb-image"),t=b.getThumbs(),u.isAllLoaded=!1,t.fadeTo(0,0),g.checkImagesLoaded(e,function(){(1==s.isMobileMode()?P:O)(!0),s.triggerEvent(o.events.TILES_FIRST_PLACED),f(),a.trigger(o.events.ALL_TILES_LOADED)},function(e,t){e=jQuery(e);var i=jQuery(e).parent();b.triggerImageLoadedEvent(i,e)})}var e,t,i;u.isFirstTimeRun=!1}this.destroy=function(){n.off(s.events.SIZE_CHANGE),c.destroy(),n.off(o.events.TILES_FIRST_PLACED)},this.init=function(e,t){m(e,t)},this.setHtml=function(e){!function(e){d=e=e||(d||r);var t=v.tiles_type;e.addClass("ug-tiletype-"+t),c.setHtml(e),e.children(".ug-thumb-wrapper").hide()}(e)},this.getObjTileDesign=function(){return c},this.run=function(){Y()},this.runNewItems=function(){if(!d)throw new Error("Can't run new items - parent not set");switch(c.setHtml(d,!0),c.run(!0),v.tiles_type){case"columns":C();break;default:case"justified":case"nested":throw new Error("Tiles type: "+v.tiles_type+" not support load more yet")}}}function UGAviaControl(){var a,t,s,o,l,u,d={touchEnabled:!1,isMouseInsideStrip:!1,strip_finalPos:0,handle_timeout:"",handle_request_frame:0,isStripMoving:!1,isControlEnabled:!0,strip_speed:10,area_thumb_sizes:1};function i(){u=!0}function n(){u=!1,g()}function r(e){if(0==d.isControlEnabled)return!0;if(1==d.touchEnabled)return jQuery("body").off("mousemove"),!0;d.isMouseInsideStrip=s.ismouseover();var t,i,n,r=a.isTouchMotionActive();if(1==u&amp;&amp;0==r){var e=function(e){var t=a.getSizes().thumbSize;if(200&lt;(t=d.area_thumb_sizes*t)&amp;&amp;(t=200),0!=l)return i=s.offset().top,n=i+s.height(),r=i+t,o=n-t,i&lt;e&amp;&amp;e&lt;r?"start":e&lt;n&amp;&amp;o&lt;e?"stop":null;var i=s.offset().left,n=i+s.width(),r=i+t,o=n-t;return i&lt;e&amp;&amp;e&lt;r?"start":e&lt;n&amp;&amp;o&lt;e?"stop":null}((e=e,0==l?e.pageX:e.pageY));if(!e)return g(),!1;e=e,0==l&amp;&amp;(i=o.width(),n=s.width(),"start"==e&amp;&amp;(t=0),"stop"==e&amp;&amp;(t=-(i-n))),1==l&amp;&amp;(i=o.height(),n=s.height(),"start"==e&amp;&amp;(t=0),"stop"==e&amp;&amp;(t=-(i-n))),t=Math.floor(t),d.is_strip_moving=!0,d.strip_finalPos=t,!void(1!=d.isStripMoving&amp;&amp;(d.isStripMoving=!0,d.handle_request_frame=requestAnimationFrame(_)))}else g()}function _(){if(0==d.is_strip_moving)return!1;var e=a.getInnerStripPos();Math.floor(e)==Math.floor(d.strip_finalPos)&amp;&amp;g();var t=Math.abs(d.strip_finalPos-e),i=d.strip_speed;d.strip_finalPos&lt;e&amp;&amp;(i*=-1);e+=i;if(d.strip_finalPos&gt;e&amp;&amp;i&lt;0&amp;&amp;(e=d.strip_finalPos),0==t)return g(),!1;a.positionInnerStrip(e),d.handle_request_frame=requestAnimationFrame(_)}function g(){0!=d.isStripMoving&amp;&amp;(d.isStripMoving=!1,cancelAnimationFrame(d.handle_request_frame))}this.enable=function(){d.isControlEnabled=!0},this.disable=function(){d.isControlEnabled=!1},this.onResize=function(){},this.init=function(e){t=(a=e).getObjects(),t.g_gallery,s=t.g_objStrip,o=t.g_objStripInner,t.g_options,l=t.isVertical,jQuery("body").on("touchstart",function(e){return 0==d.isControlEnabled||void(d.touchEnabled=!0)}),jQuery("body").mousemove(r),s.on("mouseover",i),s.on("mouseleave",n)},this.destroy=function(){jQuery("body").off("touchstart"),jQuery("body").off("mousemove")}}function UGSlider(){var r,o,a,l,s,u,d,n,_,i,t,g,c,h=this,p=jQuery(h),m=new UniteGalleryMain,f=null,b=null,v=null,y=new UGVideoPlayer,w=new UGFunctions,I=null,E=null,T={slider_scale_mode:"fill",slider_scale_mode_media:"fill",slider_scale_mode_fullscreen:"down",slider_item_padding_top:0,slider_item_padding_bottom:0,slider_item_padding_left:0,slider_item_padding_right:0,slider_background_color:"",slider_background_opacity:1,slider_image_padding_top:0,slider_image_padding_bottom:0,slider_image_padding_left:0,slider_image_padding_right:0,slider_image_border:!(this.events={ITEM_CHANGED:"item_changed",BEFORE_SWITCH_SLIDES:"before_switch",BEFORE_RETURN:"before_return",AFTER_RETURN:"after_return",ZOOM_START:"slider_zoom_start",ZOOM_END:"slider_zoom_end",ZOOMING:"slider_zooming",ZOOM_CHANGE:"slider_zoom_change",START_DRAG:"start_drag",AFTER_DRAG_CHANGE:"after_drag_change",ACTION_START:"action_start",ACTION_END:"action_end",CLICK:"slider_click",TRANSITION_START:"slider_transition_start",TRANSITION_END:"slider_transition_end",AFTER_PUT_IMAGE:"after_put_image",IMAGE_MOUSEENTER:"slider_image_mouseenter",IMAGE_MOUSELEAVE:"slider_image_mouseleave",CURRENTSLIDE_LOAD_START:"slider_current_loadstart",CURRENTSLIDE_LOAD_END:"slider_current_loadend"}),slider_image_border_width:10,slider_image_border_color:"#ffffff",slider_image_border_radius:0,slider_image_border_maxratio:.35,slider_image_shadow:!1,slider_video_constantsize:!1,slider_video_constantsize_scalemode:"fit",slider_video_constantsize_width:854,slider_video_constantsize_height:480,slider_video_padding_top:0,slider_video_padding_bottom:0,slider_video_padding_left:0,slider_video_padding_right:0,slider_video_enable_closebutton:!0,slider_transition:"slide",slider_transition_speed:300,slider_transition_easing:"easeInOutQuad",slider_control_swipe:!0,slider_control_zoom:!0,slider_zoom_mousewheel:!0,slider_vertical_scroll_ondrag:!1,slider_loader_type:1,slider_loader_color:"white",slider_enable_links:!0,slider_links_newpage:!1,slider_enable_bullets:!1,slider_bullets_size:"",slider_bullets_color:"",slider_bullets_color_reverse:!1,slider_bullets_space_between:-1,slider_bullets_align_hor:"center",slider_bullets_align_vert:"bottom",slider_bullets_offset_hor:0,slider_bullets_offset_vert:10,slider_enable_arrows:!0,slider_arrows_skin:"",slider_arrows_width:2,slider_arrow_left_align_hor:"left",slider_arrow_left_align_vert:"middle",slider_arrow_left_offset_hor:10,slider_arrow_left_offset_vert:0,slider_arrow_right_align_hor:"right",slider_arrow_right_align_vert:"middle",slider_arrow_right_offset_hor:10,slider_arrow_right_offset_vert:0,slider_enable_progress_indicator:!0,slider_progress_indicator_type:"pie",slider_progress_indicator_align_hor:"right",slider_progress_indicator_align_vert:"top",slider_progress_indicator_offset_hor:10,slider_progress_indicator_offset_vert:10,slider_enable_play_button:!0,slider_play_button_skin:"",slider_play_button_align_hor:"left",slider_play_button_align_vert:"top",slider_play_button_offset_hor:40,slider_play_button_offset_vert:8,slider_play_button_mobilehide:!1,slider_enable_fullscreen_button:!0,slider_fullscreen_button_skin:"",slider_fullscreen_button_align_hor:"left",slider_fullscreen_button_align_vert:"top",slider_fullscreen_button_offset_hor:11,slider_fullscreen_button_offset_vert:9,slider_fullscreen_button_mobilehide:!1,slider_enable_zoom_panel:!0,slider_zoompanel_skin:"",slider_zoompanel_align_hor:"left",slider_zoompanel_align_vert:"top",slider_zoompanel_offset_hor:12,slider_zoompanel_offset_vert:92,slider_zoompanel_mobilehide:!1,slider_controls_always_on:!1,slider_controls_appear_ontap:!0,slider_controls_appear_duration:300,slider_enable_text_panel:!0,slider_textpanel_always_on:!0,slider_videoplay_button_type:"square",slider_video_autoplay:!1,slider_video_muted:!1},x={slider_progress_indicator_align_hor:"left",slider_progress_indicator_align_vert:"bottom",slider_progress_indicator_offset_hor:0,slider_progress_indicator_offset_vert:0},S={isRunOnce:!1,isTextPanelSaparateHover:!1,numPrev:1,numCurrent:2,numNext:3,isControlsVisible:!0,currentControlsMode:"image"};function P(e,t,i){m=e,i&amp;&amp;(c=i,t=w.convertCustomPrefixOptions(t,c,"slider")),r=jQuery(e);e=m.getObjects();o=e.g_objWrapper,e.g_objThumbs,t.hasOwnProperty("slider_progress_indicator_type")&amp;&amp;(T.slider_progress_indicator_type=t.slider_progress_indicator_type),"bar"==T.slider_progress_indicator_type&amp;&amp;(T=jQuery.extend(T,x)),t&amp;&amp;h.setOptions(t),e=m.getOptions(),t=e.gallery_skin,""==T.slider_arrows_skin&amp;&amp;(T.slider_arrows_skin=t),""==T.slider_zoompanel_skin&amp;&amp;(T.slider_zoompanel_skin=t),""==T.slider_play_button_skin&amp;&amp;(T.slider_play_button_skin=t),""==T.slider_fullscreen_button_skin&amp;&amp;(T.slider_fullscreen_button_skin=t),T.video_enable_closebutton=T.slider_video_enable_closebutton,"zoom"!=e.gallery_mousewheel_role&amp;&amp;(T.slider_zoom_mousewheel=!1),1==T.slider_enable_bullets&amp;&amp;(v=new UGBullets,n={bullets_size:T.slider_bullets_size,bullets_color:T.slider_bullets_color,bullets_color_reverse:T.slider_bullets_color_reverse,bullets_space_between:T.slider_bullets_space_between},v.init(m,n)),T.slider_enable_text_panel&amp;&amp;(E=new UGTextPanel).init(m,T,"slider"),T.slider_enable_zoom_panel&amp;&amp;(g=new UGZoomButtonsPanel).init(h,T);var n=m.getGalleryID();y.init(T,!1,n)}function e(){var e;1!=S.isRunOnce&amp;&amp;(S.isRunOnce=!0,T.slider_background_color?(e=T.slider_background_color,1!=T.slider_background_opacity&amp;&amp;(e=w.convertHexToRGB(e,T.slider_background_opacity)),a.css("background-color",e)):1!=T.slider_background_opacity&amp;&amp;(e=w.convertHexToRGB("#000000",T.slider_background_opacity),a.css("background-color",e)),1==T.slider_control_swipe&amp;&amp;(i=new UGTouchSliderControl).init(h,T),1==T.slider_control_zoom&amp;&amp;(t=new UGZoomSliderControl).init(h,T),E&amp;&amp;E.run(),r.on(m.events.ITEM_IMAGE_UPDATED,se),r.on(m.events.ITEM_CHANGE,K),v&amp;&amp;jQuery(v).on(v.events.BULLET_CLICK,J),1==T.slider_enable_arrows&amp;&amp;(w.addClassOnHover(_,"ug-arrow-hover"),w.addClassOnHover(n,"ug-arrow-hover"),m.setNextButton(_),m.setPrevButton(n)),0==T.slider_controls_always_on&amp;&amp;a.hover(ie,ne),a.on("touchend click",$),p.on(h.events.CLICK,ee),E&amp;&amp;1==S.isTextPanelSaparateHover&amp;&amp;a.hover(D,R),f&amp;&amp;(w.addClassOnHover(f,"ug-button-hover"),m.setPlayButton(f)),b&amp;&amp;(w.addClassOnHover(b,"ug-button-hover"),m.setFullScreenToggleButton(b)),t&amp;&amp;p.on(h.events.ZOOM_CHANGE,te),g&amp;&amp;g.initEvents(),y.initEvents(),jQuery(y).on(y.events.SHOW,oe),jQuery(y).on(y.events.HIDE,ae),ue(s),ue(u),ue(d),p.on(h.events.AFTER_PUT_IMAGE,le),a.on("mouseenter",".ug-item-wrapper img",function(e){p.trigger(h.events.IMAGE_MOUSEENTER)}),a.on("mouseleave",".ug-item-wrapper img",function(e){0==h.isMouseInsideSlideImage(e)&amp;&amp;p.trigger(h.events.IMAGE_MOUSELEAVE)}))}function j(e,t){var i="ug-type-square";"round"==T.slider_videoplay_button_type&amp;&amp;(i="ug-type-round");var n="";return n+="&lt;div class='ug-slide-wrapper ug-slide"+t+"'&gt;",n+="&lt;div class='ug-item-wrapper'&gt;&lt;/div&gt;",n+="&lt;div class='ug-slider-preloader "+e+"'&gt;&lt;/div&gt;",n+="&lt;div class='ug-button-videoplay "+i+'\' style=\'display:none\'&gt;&lt;svg width="32" height="32" viewBox="0 0 32 32" fill="none" xmlns="http://www.w3.org/2000/svg"&gt;&lt;g clip-path="url(#clip0_19_2)"&gt;&lt;path d="M28 15.998C28 15.346 27.682 14.734 27.146 14.36L7.146 0.360047C6.538 -0.0679528 5.738 -0.115953 5.076 0.224047C4.414 0.570047 4 1.25205 4 1.99805V30C4 30.746 4.414 31.43 5.076 31.774C5.738 32.114 6.536 32.066 7.146 31.638L27.146 17.638C27.682 17.266 28 16.654 28 16.002C28 16 28 16 28 15.998C28 16 28 16 28 15.998Z" fill="white"/&gt;&lt;/g&gt;&lt;defs&gt;&lt;clipPath id="clip0_19_2"&gt;&lt;rect width="32" height="32" fill="white"/&gt;&lt;/clipPath&gt;&lt;/defs&gt;&lt;/svg&gt;&lt;/div&gt;',n+="&lt;/div&gt;"}function C(e){e&amp;&amp;(o=e);var t=function(){var e;switch(T.slider_loader_type){default:case 1:e="ug-loader1";break;case 2:e="ug-loader2";break;case 3:e="ug-loader3";break;case 4:e="ug-loader4";break;case 5:e="ug-loader5";break;case 6:e="ug-loader6";break;case 7:e="ug-loader7";break;case 8:e="ug-loader8";break;case 9:e="ug-loader9"}"black"==T.slider_loader_color&amp;&amp;(e+=" ug-loader-black");return e}(),i=(m.getOptions(),"&lt;div class='ug-slider-wrapper'&gt;");i+="&lt;div class='ug-slider-inner'&gt;",i+=j(t,1),i+=j(t,2),i+=j(t,3),i+="&lt;/div&gt;",1==T.slider_enable_arrows&amp;&amp;(t='&lt;svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="32px" height="32px" viewBox="0 0 48 48"&gt;&lt;g stroke-width="'+(e=T.slider_arrows_width)+'" transform="translate(0.5, 0.5)"&gt;&lt;polyline fill="none" stroke="#ffffff" stroke-width="'+e+'" stroke-linecap="square" stroke-miterlimit="10" points="31,3 17,24 31,45 " stroke-linejoin="miter"&gt;&lt;/polyline&gt;&lt;/g&gt;&lt;/svg&gt;',e='&lt;svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="32px" height="32px" viewBox="0 0 48 48"&gt;&lt;g stroke-width="'+e+'" transform="translate(0.5, 0.5)"&gt;&lt;polyline fill="none" stroke="#ffffff" stroke-width="'+e+'" stroke-linecap="square" stroke-miterlimit="10" points="17,3 31,24 17,45 " stroke-linejoin="miter"&gt;&lt;/polyline&gt;&lt;/g&gt;&lt;/svg&gt;',i+="&lt;div class='ug-slider-control ug-arrow-left ug-skin-"+T.slider_arrows_skin+"'&gt;"+t+"&lt;/div&gt;",i+="&lt;div class='ug-slider-control ug-arrow-right ug-skin-"+T.slider_arrows_skin+"'&gt;"+e+"&lt;/div&gt;"),1==T.slider_enable_play_button&amp;&amp;(i+="&lt;div class='ug-slider-control ug-button-play ug-skin-"+T.slider_play_button_skin+'\'&gt;&lt;svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="16px" height="16px" viewBox="0 0 16 16"&gt;&lt;g transform="translate(0, 0)"&gt;&lt;path fill="#ffffff" d="M14,7.999c0-0.326-0.159-0.632-0.427-0.819l-10-7C3.269-0.034,2.869-0.058,2.538,0.112C2.207,0.285,2,0.626,2,0.999v14.001c0,0.373,0.207,0.715,0.538,0.887c0.331,0.17,0.73,0.146,1.035-0.068l10-7C13.841,8.633,14,8.327,14,8.001C14,8,14,8,14,7.999C14,8,14,8,14,7.999z"&gt;&lt;/path&gt;&lt;/g&gt;&lt;/svg&gt;&lt;/div&gt;'),1==T.slider_enable_fullscreen_button&amp;&amp;(i+="&lt;div class='ug-slider-control ug-button-fullscreen ug-skin-"+T.slider_fullscreen_button_skin+'\'&gt;&lt;svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="16px" height="16px" viewBox="0 0 16 16"&gt;&lt;g transform="translate(0, 0)"&gt;&lt;polyline fill="none" stroke="#ffffff" stroke-linecap="round" stroke-linejoin="round" stroke-miterlimit="10" points="10.5,0.5 15.5,0.5 15.5,5.5 "&gt;&lt;/polyline&gt;&lt;polyline fill="none" stroke="#ffffff" stroke-linecap="round" stroke-linejoin="round" stroke-miterlimit="10" points="0.5,10.5 0.5,15.5 5.5,15.5 "&gt;&lt;/polyline&gt;&lt;line fill="none" stroke="#ffffff" stroke-linecap="round" stroke-linejoin="round" stroke-miterlimit="10" x1="15.5" y1="0.5" x2="11.5" y2="4.5"&gt;&lt;/line&gt;&lt;line fill="none" stroke="#ffffff" stroke-linecap="round" stroke-linejoin="round" stroke-miterlimit="10" x1="4.5" y1="11.5" x2="0.5" y2="15.5"&gt;&lt;/line&gt;&lt;polyline fill="none" stroke="#ffffff" stroke-linecap="round" stroke-linejoin="round" stroke-miterlimit="10" points="5.5,0.5 0.5,0.5 0.5,5.5 "&gt;&lt;/polyline&gt;&lt;line fill="none" stroke="#ffffff" stroke-linecap="round" stroke-linejoin="round" stroke-miterlimit="10" x1="0.5" y1="0.5" x2="4.5" y2="4.5"&gt;&lt;/line&gt;&lt;polyline fill="none" stroke="#ffffff" stroke-linecap="round" stroke-linejoin="round" stroke-miterlimit="10" points="15.5,10.5 15.5,15.5 10.5,15.5 "&gt;&lt;/polyline&gt;&lt;line fill="none" stroke="#ffffff" stroke-linecap="round" stroke-linejoin="round" stroke-miterlimit="10" x1="11.5" y1="11.5" x2="15.5" y2="15.5"&gt;&lt;/line&gt;&lt;circle fill="#ffffff" cx="8" cy="8" r="2" data-cap="butt" data-color="color-2" data-stroke="none"&gt;&lt;/circle&gt;&lt;/g&gt;&lt;/svg&gt;&lt;/div&gt;'),i+="&lt;/div&gt;",o.append(i),a=o.children(".ug-slider-wrapper"),l=a.children(".ug-slider-inner"),s=l.children(".ug-slide1"),u=l.children(".ug-slide2"),d=l.children(".ug-slide3"),s.data("slidenum",1),u.data("slidenum",2),d.data("slidenum",3),v&amp;&amp;v.appendHTML(a),1==T.slider_enable_arrows&amp;&amp;(n=a.children(".ug-arrow-left"),_=a.children(".ug-arrow-right")),1==T.slider_enable_play_button&amp;&amp;(f=a.children(".ug-button-play")),1==T.slider_enable_fullscreen_button&amp;&amp;(b=a.children(".ug-button-fullscreen")),1==T.slider_enable_progress_indicator&amp;&amp;("bar"==(I=w.initProgressIndicator(T.slider_progress_indicator_type,T,a)).getType()&amp;&amp;"pie"==T.slider_progress_indicator_type&amp;&amp;(T.slider_progress_indicator_type="bar",T=jQuery.extend(T,x)),m.setProgressIndicator(I)),1==T.slider_enable_text_panel&amp;&amp;(E.appendHTML(a),0==T.slider_textpanel_always_on&amp;&amp;(E.getElement().hide().data("isHidden",!0),S.isTextPanelSaparateHover=!0)),1==T.slider_enable_zoom_panel&amp;&amp;g.appendHTML(a),y.setHtml(l)}function A(e){var t=ge(e);w.placeElementInParentCenter(t);e=ce(e);w.placeElementInParentCenter(e)}function M(){var e,t;v&amp;&amp;(e=v.getElement(),w.placeElement(e,T.slider_bullets_align_hor,T.slider_bullets_align_vert,T.slider_bullets_offset_hor,T.slider_bullets_offset_vert),w.placeElement(e,T.slider_bullets_align_hor,T.slider_bullets_align_vert,T.slider_bullets_offset_hor,T.slider_bullets_offset_vert)),1==T.slider_enable_arrows&amp;&amp;(w.placeElement(n,T.slider_arrow_left_align_hor,T.slider_arrow_left_align_vert,T.slider_arrow_left_offset_hor,T.slider_arrow_left_offset_vert),w.placeElement(_,T.slider_arrow_right_align_hor,T.slider_arrow_left_align_vert,T.slider_arrow_right_offset_hor,T.slider_arrow_right_offset_vert)),0==T.slider_controls_always_on&amp;&amp;X(!0),I&amp;&amp;(t=I.getElement(),"bar"==T.slider_progress_indicator_type?(e=a.width(),I.setSize(e),w.placeElement(t,"left",T.slider_progress_indicator_align_vert,0,T.slider_progress_indicator_offset_vert)):w.placeElement(t,T.slider_progress_indicator_align_hor,T.slider_progress_indicator_align_vert,T.slider_progress_indicator_offset_hor,T.slider_progress_indicator_offset_vert)),E&amp;&amp;E.positionPanel(),f&amp;&amp;w.placeElement(f,T.slider_play_button_align_hor,T.slider_play_button_align_vert,T.slider_play_button_offset_hor,T.slider_play_button_offset_vert),b&amp;&amp;w.placeElement(b,T.slider_fullscreen_button_align_hor,T.slider_fullscreen_button_align_vert,T.slider_fullscreen_button_offset_hor,T.slider_fullscreen_button_offset_vert),g&amp;&amp;(t=g.getElement(),w.placeElement(t,T.slider_zoompanel_align_hor,T.slider_zoompanel_align_vert,T.slider_zoompanel_offset_hor,T.slider_zoompanel_offset_vert)),A(s),A(u),A(d),m.isMobileMode()?(1==T.slider_fullscreen_button_mobilehide&amp;&amp;b&amp;&amp;b.hide(),1==T.slider_play_button_mobilehide&amp;&amp;f&amp;&amp;f.hide(),1==T.slider_zoompanel_mobilehide&amp;&amp;g&amp;&amp;g.getElement().hide()):(1==T.slider_fullscreen_button_mobilehide&amp;&amp;b&amp;&amp;b.show(),1==T.slider_play_button_mobilehide&amp;&amp;f&amp;&amp;f.show(),1==T.slider_zoompanel_mobilehide&amp;&amp;g&amp;&amp;g.getElement().show())}function O(){var e,t,i=h.getSlidesReference(),n=0,r=h.isSlideHasItem(i.objNextSlide),o=h.isSlideHasItem(i.objPrevSlide);o?(n=i.objPrevSlide.outerWidth(),i.objPrevSlide.css("z-index",1)):i.objPrevSlide.hide(),e=t=n+i.objCurrentSlide.outerWidth(),r?(e=t+i.objNextSlide.outerWidth(),i.objPrevSlide.css("z-index",2)):i.objNextSlide.hide(),i.objCurrentSlide.css("z-index",3),w.placeElement(i.objCurrentSlide,n,0),l.css({left:-n+"px",width:e+"px"}),o&amp;&amp;(w.placeElement(i.objPrevSlide,0,0),w.showElement(i.objPrevSlide)),r&amp;&amp;(w.showElement(i.objNextSlide),w.placeElement(i.objNextSlide,t,0))}function z(e){var t=e.data("index");void 0===t||null==t||(t=m.getItem(t))&amp;&amp;G(e,t)}function k(e){e.stop(!0).hide(100)}function L(e,t,i){var n={};1==T.slider_image_border&amp;&amp;(n["border-style"]="solid",i=function(e,t){if((n=T.slider_image_border_width)&lt;=10)return n;var e=(i=w.getElementSize(e)).width,i=i.height;if(t&amp;&amp;(t.hasOwnProperty("imageWidth")&amp;&amp;(e=t.imageWidth),t.hasOwnProperty("imageHeight")&amp;&amp;(i=t.imageHeight)),e&lt;=0)return n;if(2*n/(i=e&lt;i?e:i)&lt;T.slider_image_border_maxratio)return n;var n=i*T.slider_image_border_maxratio/2;return n=Math.round(n)}(e,i),n["border-width"]=i+"px",n["border-color"]=T.slider_image_border_color,n["border-radius"]=T.slider_image_border_radius),"image"!=t&amp;&amp;1==T.slider_video_constantsize&amp;&amp;(n["background-color"]="#000000"),1==T.slider_image_shadow&amp;&amp;(n["box-shadow"]="3px 3px 10px 0px #353535"),e.css(n)}function N(e,t){var i=T.slider_video_constantsize_width,n=T.slider_video_constantsize_height,r=T.slider_video_constantsize_scalemode;return w.scaleImageExactSizeInParent(e,t.imageWidth,t.imageHeight,i,n,r)}function H(e,t,i){var n=e.children(".ug-item-wrapper"),r=ge(e);if(void 0===t.urlImage||""==t.urlImage)throw new Error("The slide don't have big image defined ( data-image='imageurl' ). Please check gallery items.","showbig");var o=t.urlImage,a=e.data("urlImage");e.data("urlImage",o);var s,l,u=h.getScaleMode(e),d=h.getSlideType(e),_=h.getObjImagePadding(),g="";"string"==typeof t.description&amp;&amp;(g=t.description),a==o&amp;&amp;!0!==i?((s=n.children("img")).attr("alt",g),0!=t.imageWidth&amp;&amp;0!=t.imageHeight||m.checkFillImageSize(s,t),l={},L(s,d,l="image"!=d&amp;&amp;1==T.slider_video_constantsize?N(s,t):w.scaleImageFitParent(s,t.imageWidth,t.imageHeight,u,_)),p.trigger(h.events.AFTER_PUT_IMAGE,e)):((s=w.placeImageInsideParent(o,n,t.imageWidth,t.imageHeight,u,_)).attr("alt",g),1==t.isBigImageLoaded?(s.fadeTo(0,1),k(r),l="image"!=d&amp;&amp;1==T.slider_video_constantsize?N(s,t):w.getImageInsideParentData(n,t.imageWidth,t.imageHeight,u,_),s.css("width",l.imageWidth+"px"),L(s,d,l),p.trigger(h.events.AFTER_PUT_IMAGE,e)):(s.fadeTo(0,0),r.stop(!0).show(100),e.data("isLoading",!0),h.isSlideCurrent(e)&amp;&amp;p.trigger(h.events.CURRENTSLIDE_LOAD_START),s.data("itemIndex",t.index),s.on("load",function(){var e=jQuery(this),t=e.data("itemIndex");e.fadeTo(0,1);var i=e.parent().parent(),n=h.getSlideType(i),r=ge(i),o=h.getObjImagePadding(),a=h.getScaleMode(i);k(r),i.data("isLoading",!1),h.isSlideCurrent(i)&amp;&amp;p.trigger(h.events.CURRENTSLIDE_LOAD_END),m.onItemBigImageLoaded(null,e);r=m.getItem(t),t={};"image"!=n&amp;&amp;1==T.slider_video_constantsize?N(e,r):t=w.scaleImageFitParent(e,r.imageWidth,r.imageHeight,a,o),e.fadeTo(0,1),L(e,n,t),p.trigger(h.events.AFTER_PUT_IMAGE,i)})))}function G(e,t){try{var i=e.children(".ug-item-wrapper");if(null==t)return i.html(""),e.removeData("index"),e.removeData("type"),void e.removeData("urlImage");e.data("index");e.data("index",t.index),e.data("type",t.type),1==T.slider_enable_links&amp;&amp;"image"==t.type&amp;&amp;(t.link?e.addClass("ug-slide-clickable"):e.removeClass("ug-slide-clickable")),H(e,t);var n=ce(e);"image"===t.type?n.hide():n.show()}catch(e){throw void 0!==e.fileName&amp;&amp;"showbig"==e.fileName&amp;&amp;m.showErrorMessageReplaceGallery(e.message),i.html(""),new Error(e)}}function R(){if(!E)return!1;if(1==Q())return!1;var e=E.getElement(),t=0;1!=S.isTextPanelSaparateHover&amp;&amp;1!=T.slider_textpanel_always_on||(t=T.slider_controls_appear_duration),e.stop().fadeTo(t,0),e.data("isHidden",!0)}function D(){if(!E)return!1;if(0==Q())return!1;var e=E.getElement(),t=0;1!=S.isTextPanelSaparateHover&amp;&amp;1!=T.slider_textpanel_always_on||(e.show(),E.positionElements(),t=T.slider_controls_appear_duration),e.stop().show().fadeTo(t,1),e.data("isHidden",!1)}function Q(){return!1!==E.getElement().data("isHidden")}function W(){var e=h.getCurrentSlide(),t=h.getSlideImage(e),i=w.getElementSize(e),e=i.left,i=i.top;1==T.slider_video_constantsize?(e+=(t=w.getElementSize(t)).left,i+=t.top):(e+=T.slider_video_padding_left,i+=T.slider_video_padding_top),y.setPosition(e,i)}function B(){var e=T.slider_video_constantsize_width,t=T.slider_video_constantsize_height;y.setSize(e,t),L(y.getObject(),"video")}function F(e,t,i){p.trigger(h.events.TRANSITION_START);var n=T.slider_transition;switch(i&amp;&amp;(n=i),h.stopSlideAction(null,!0),n){default:case"fade":U(t);break;case"slide":!function t(e,i){var n=h.isAnimating();if(1==n)return S.itemWaiting=i,!0;null!=S.itemWaiting&amp;&amp;(S.itemWaiting=null);var r=h.getSlidesReference();switch(e){case"right":G(r.objPrevSlide,i),O();var o=w.getElementSize(r.objPrevSlide),a=-o.left;h.switchSlideNums("right");break;case"left":G(r.objNextSlide,i),O();var o=w.getElementSize(r.objNextSlide),a=-o.left;h.switchSlideNums("left");break;default:throw new Error("wrong direction: "+e)}var s=T.slider_transition_speed;n=T.slider_transition_easing;var n={duration:s,easing:n,queue:!1,always:function(){var e;h.stopSlideAction(),y.hide(),null!=S.itemWaiting?(e=_e(S.itemWaiting),t(e,S.itemWaiting)):(h.placeNabourItems(),p.trigger(h.events.TRANSITION_END))}};l.animate({left:a+"px"},n)}(e,t);break;case"lightbox_open":U(t,!1,!0)}}function Y(e,t,i){i?e.fadeTo(T.slider_transition_speed,t,i):e.fadeTo(T.slider_transition_speed,t)}function U(e,t,i){t=t||!1;var n=h.getSlidesReference();G(n.objNextSlide,e);e=w.getElementSize(n.objCurrentSlide);w.placeElement(n.objNextSlide,e.left,e.top);e=S.numCurrent;S.numCurrent=S.numNext,S.numNext=e,p.trigger(h.events.ITEM_CHANGED),n.objNextSlide.stop(!0),n.objCurrentSlide.stop(!0),1==t?(n.objCurrentSlide.fadeTo(0,0),n.objNextSlide.fadeTo(0,1),h.placeNabourItems(),p.trigger(h.events.TRANSITION_END),!0!==i&amp;&amp;y.hide()):(n.objNextSlide.fadeTo(0,0),Y(n.objCurrentSlide,0,function(){h.placeNabourItems(),p.trigger(h.events.TRANSITION_END),!0!==i&amp;&amp;y.hide()}),1==y.isVisible()&amp;&amp;Y(y.getObject(),0),Y(n.objNextSlide,1))}function V(){return a.children(".ug-slider-control")}function X(e){var t;0!=w.isTimePassed("sliderControlsToggle")&amp;&amp;0!=S.isControlsVisible&amp;&amp;(e=e||!1,t=V(),!0===e?t.stop().fadeTo(0,0).hide():t.stop().fadeTo(T.slider_controls_appear_duration,0,function(){t.hide()}),S.isControlsVisible=!1)}function Z(e){if(0!=w.isTimePassed("sliderControlsToggle")){if(1==S.isControlsVisible)return 1;e=e||!1;var t=V();!0===e?t.stop().show():(t.stop().show().fadeTo(0,0),t.fadeTo(T.slider_controls_appear_duration,1)),S.isControlsVisible=!0}}function q(e){if(e!=S.currentControlsMode){switch(e){case"image":g&amp;&amp;g.getElement().show();break;case"video":g&amp;&amp;g.getElement().hide();break;default:throw new Error("wrong controld mode: "+e)}S.currentControlsMode=e}}function K(e,t,i){var n=m.getSelectedItem();h.setItem(n,!1,i);i=n.index;1==T.slider_video_autoplay&amp;&amp;setTimeout(function(){re(ce(h.getCurrentSlide()))},500),v&amp;&amp;v.setActive(i),E&amp;&amp;0==S.isTextPanelSaparateHover&amp;&amp;D(),"image"==n.type?q("image"):q("video")}function J(e,t){m.selectItem(t)}function $(e){if(i&amp;&amp;0==i.isTapEventOccured(e))return!0;p.trigger(h.events.CLICK,e)}function ee(){var e=h.getCurrentSlide().hasClass("ug-slide-clickable"),t=h.getCurrentItem();if(e)return 0==T.slider_links_newpage?location.href=t.link:window.open(t.link,"_blank"),!0;0==T.slider_controls_always_on&amp;&amp;1==T.slider_controls_appear_ontap&amp;&amp;1==h.isCurrentSlideType("image")&amp;&amp;((0==S.isControlsVisible?Z:X)(),E&amp;&amp;1==T.slider_textpanel_always_on&amp;&amp;h.isCurrentSlideType("image")&amp;&amp;h.isCurrentSlideImageFit()&amp;&amp;D())}function te(e){E&amp;&amp;h.isCurrentSlideType("image")&amp;&amp;0==h.isCurrentSlideImageFit()&amp;&amp;R()}function ie(){Z()}function ne(){X()}function re(e){e=e.parent();h.startSlideAction(e)}function oe(){m.isPlayMode()&amp;&amp;m.pausePlaying(),p.trigger(h.events.ACTION_START)}function ae(){m.isPlayMode()&amp;&amp;m.continuePlaying(),p.trigger(h.events.ACTION_END)}function se(e,t,i){s.data("index")==t&amp;&amp;(objItem=m.getItem(t),H(s,objItem,!0)),u.data("index")==t&amp;&amp;(objItem=m.getItem(t),H(u,objItem,!0)),d.data("index")==t&amp;&amp;(objItem=m.getItem(t),H(d,objItem,!0))}function le(e,t){t=jQuery(t);var i=h.getSlideImage(t),n=ce(t),t=w.getElementSize(i);w.placeElement(n,"center","middle",t.left,t.top,i)}function ue(e){e=ce(e);w.addClassOnHover(e),w.setButtonOnClick(e,re)}function de(e){switch(e){case 1:return s;case 2:return u;case 3:return d;default:throw new Error("wrong num: "+e)}}function _e(e){var t=h.getSlidesReference().objCurrentSlide.data("index");return e.index&lt;t?"right":"left"}function ge(e){return(e=e||h.getCurrentSlide()).children(".ug-slider-preloader")}function ce(e){return e.children(".ug-button-videoplay")}function he(e){e=(e=e||h.getCurrentSlide()).data("index");return null==e?null:m.getItem(e)}this.switchSlideNums=function(e){switch(p.trigger(h.events.BEFORE_SWITCH_SLIDES),e){case"left":var t=S.numCurrent;S.numCurrent=S.numNext,S.numNext=S.numPrev,S.numPrev=t;break;case"right":t=S.numCurrent;S.numCurrent=S.numPrev,S.numPrev=S.numNext,S.numNext=t;break;default:throw new Error("wrong direction: "+e)}p.trigger(h.events.ITEM_CHANGED)},this.destroy=function(){p.off(h.events.AFTER_PUT_IMAGE),r.off(m.events.ITEM_IMAGE_UPDATED),r.off(m.events.ITEM_CHANGE),v&amp;&amp;jQuery(v).on(v.events.BULLET_CLICK),a.off("mouseenter"),a.off("mouseleave"),a.off("touchend"),a.off("click"),p.off(h.events.CLICK),t&amp;&amp;p.off(h.events.ZOOM_CHANGE),p.off(h.events.BEFORE_SWITCH_SLIDES),jQuery(y).off(y.events.SHOW),jQuery(y).off(y.events.HIDE),y.destroy(),a.off("mouseenter",".ug-item-wrapper img"),a.off("mouseleave",".ug-item-wrapper img")},this.________EXTERNAL_GENERAL___________=function(){},this.init=function(e,t,i){P(e,t,i)},this.getSlideImage=function(e){return(e=e||h.getCurrentSlide()).find(".ug-item-wrapper img")},this.setHtml=function(e){C(e)},this.run=function(){e()},this.isInnerInPlace=function(){var e=h.getSlidesReference();return-w.getElementSize(e.objCurrentSlide).left==w.getElementSize(l).left},this.isAnimating=function(){return l.is(":animated")},this.isSlideCurrent=function(e){e=e.data("slidenum");return S.numCurrent==e},this.isSlideHasItem=function(e){e=e.data("index");return null!=e},this.getObjImagePadding=function(){return{padding_top:T.slider_image_padding_top,padding_bottom:T.slider_image_padding_bottom,padding_left:T.slider_image_padding_left,padding_right:T.slider_image_padding_right}},this.getSlidesReference=function(){return{objPrevSlide:de(S.numPrev),objNextSlide:de(S.numNext),objCurrentSlide:de(S.numCurrent)}},this.getCurrentSlide=function(){return h.getSlidesReference().objCurrentSlide},this.getCurrentItemIndex=function(){var e=h.getSlidesReference().objCurrentSlide.data("index");return null==e&amp;&amp;(e=-1),e},this.getCurrentItem=function(){var e=h.getCurrentItemIndex();return-1==e?null:m.getItem(e)},this.getSlideType=function(e){return null==e&amp;&amp;(e=h.getCurrentSlide()),e.data("type")},this.isMouseInsideSlideImage=function(e){var t=h.getSlideImage(),e=w.getMousePosition(e);void 0===e.pageX&amp;&amp;(e=i.getLastMousePos());e=w.getMouseElementPoint(e,t),t=w.getElementSize(t);return w.isPointInsideElement(e,t)},this.isCurrentSlideType=function(e){return h.getSlideType()==e},this.isCurrentSlideLoadingImage=function(){return!0===h.getCurrentSlide().data("isLoading")},this.setItem=function(e,t,i){var n=h.getSlidesReference(),r=n.objCurrentSlide.data("index"),o=e.index;if(o==r)return!0;null==r?(G(n.objCurrentSlide,e),h.placeNabourItems()):(n="left",m.getNumItems(),"next"==i?n="left":("prev"==i||o&lt;r||o&lt;r)&amp;&amp;(n="right"),F(n,e,t))},this.placeNabourItems=function(){var e=h.getSlidesReference(),t=e.objCurrentSlide.data("index"),i=m.getPrevItem(t),t=m.getNextItem(t);G(e.objNextSlide,t),G(e.objPrevSlide,i),O()},this.________EXTERNAL_API___________=function(){},this.stopSlideAction=function(e,t){e=e||h.getCurrentSlide(),!0===t?y.pause():y.hide()},this.startSlideAction=function(e){var t=he(e=e||h.getCurrentSlide());if("image"==t.type)return!0;1==T.slider_video_constantsize&amp;&amp;B(),W(),y.show();var i=T.slider_video_muted;switch(t.type){case"youtube":y.playYoutube(t.videoid,!0,t.video_start),1==i&amp;&amp;setTimeout(function(){y.muteVideoYoutube()},300);break;case"vimeo":y.playVimeo(t.videoid),1==i&amp;&amp;setTimeout(function(){y.muteVideoVimeo()},300);break;case"html5video":y.playHtml5Video(t.videoogv,t.videowebm,t.videomp4,t.urlImage),1==i&amp;&amp;setTimeout(function(){y.muteVideoHtml5()},300);break;case"soundcloud":y.playSoundCloud(t.trackid);break;case"wistia":y.playWistia(t.videoid),1==i&amp;&amp;setTimeout(function(){y.muteVideoWistia()},300);break;case"iframe":y.playIframe(t.videoUrl)}},this.getScaleMode=function(e){return e=e||h.getCurrentSlide(),"image"!=h.getSlideType(e)?T.slider_scale_mode_media:T.slider_scale_mode!=T.slider_scale_mode_fullscreen&amp;&amp;1==m.isFullScreen()?T.slider_scale_mode_fullscreen:T.slider_scale_mode},this.getObjects=function(){return{g_objSlider:a,g_objInner:l,g_options:T,g_objZoomSlider:t}},this.getObjZoom=function(){return t},this.getOptions=function(){return T},this.getElement=function(){return a},this.getVideoObject=function(){return y},this.isCurrentSlideImageFit=function(){var e=h.getCurrentSlide();h.getSlideType(e);!function(e,t){if(null==t&amp;&amp;(t=h.getCurrentSlide()),(t=h.getSlideType(t))!=e)throw new Error("Wrong slide type: "+t+", should be: "+e)}("image",e);e=h.getSlideImage(e);return 0!=e.length&amp;&amp;w.isImageFitParent(e)},this.isCurrentImageInPlace=function(){var e=h.getSlideImage();if(0==e.length)return!1;var t=h.getScaleMode(),i=h.getObjImagePadding(),n=he(),r=e.parent(),t=w.getImageInsideParentData(r,n.imageWidth,n.imageHeight,t,i),i=w.getElementSize(e),e=!1;return t.imageWidth==i.width&amp;&amp;(e=!0),e},this.isSlideActionActive=function(){return y.isVisible()},this.isSwiping=function(){return!!i&amp;&amp;i.isTouchActive()},this.isPreloading=function(){return!!ge().is(":visible")},this.setOptions=function(e){c&amp;&amp;(e=w.convertCustomPrefixOptions(e,c,"slider")),T=jQuery.extend(T,e)},this.setSize=function(e,t){if(e&lt;0||t&lt;0)return!0;var i={};i.width=e+"px",i.height=t+"px",a.css(i);var n={};n.height=t+"px",n.top="0px",n.left="0px",l.css(n);var r={};r.height=t+"px",r.width=e+"px",s.css(r),u.css(r),d.css(r);i=e-T.slider_item_padding_left-T.slider_item_padding_right,n=t-T.slider_item_padding_top-T.slider_item_padding_bottom,r={};r.width=i+"px",r.height=n+"px",r.top=T.slider_item_padding_top+"px",r.left=T.slider_item_padding_left+"px",a.find(".ug-item-wrapper").css(r),E&amp;&amp;E.setSizeByParent(),M(),z(s),z(u),z(d),O(),"image"!=h.getSlideType()&amp;&amp;1==T.slider_video_constantsize?B():(e=e-T.slider_video_padding_left-T.slider_video_padding_right,t=t-T.slider_video_padding_top-T.slider_video_padding_bottom,y.setSize(e,t)),W()},this.refreshSlideItems=function(){if(1==h.isAnimating())return!0;z(s),z(u),z(d),O()},this.isMouseOver=function(){return a.ismouseover()},this.setPosition=function(e,t){w.placeElement(a,e,t)},this.zoomIn=function(){if(!t)return!0;t.zoomIn()},this.zoomOut=function(){if(!t)return!0;t.zoomOut()},this.zoomBack=function(){if(!t)return!0;t.zoomBack()}}function UGTextPanel(){var r,n,o,a,s,l,u,d=this,_=new UGFunctions,g="",c={textpanel_align:"bottom",textpanel_margin:0,textpanel_text_valign:"middle",textpanel_padding_top:10,textpanel_padding_bottom:10,textpanel_height:null,textpanel_padding_title_description:5,textpanel_padding_right:11,textpanel_padding_left:11,textpanel_fade_duration:200,textpanel_enable_title:!0,textpanel_enable_description:!0,textpanel_title_as_link:!1,textpanel_title_link_newtab:!0,textpanel_enable_bg:!0,textpanel_bg_color:"#000000",textpanel_bg_opacity:.4,textpanel_title_color:null,textpanel_title_font_family:null,textpanel_title_text_align:null,textpanel_title_font_size:null,textpanel_title_bold:null,textpanel_css_title:{},textpanel_desc_color:null,textpanel_desc_font_family:null,textpanel_desc_text_align:null,textpanel_desc_font_size:null,textpanel_desc_bold:null,textpanel_css_description:{},textpanel_desc_style_as_title:!1,textpanel_bg_css:{}},h={isFirstTime:!0,setInternalHeight:!0,lastTitleBottom:0,lastDescHeight:0};function i(e,t){var i=t=t||c.textpanel_padding_top;o&amp;&amp;(_.placeElement(o,0,i),1==o.is(":visible")?0&lt;(i=_.getElementSize(o).bottom)&amp;&amp;(h.lastTitleBottom=i):(i=20,0&lt;h.lastTitleBottom&amp;&amp;(i=h.lastTitleBottom)));var n,t="";a&amp;&amp;(t=jQuery.trim(a.text())),""!=t&amp;&amp;(t=i,o&amp;&amp;(t+=c.textpanel_padding_title_description),_.placeElement(a,0,t),1==jQuery(a).is(":visible")?(i=(n=_.getElementSize(a)).bottom,0&lt;n.height&amp;&amp;(h.lastDescHeight=n.height)):(n=16,0&lt;h.lastDescHeight&amp;&amp;(n=h.lastDescHeight),i=t+n)),c.textpanel_height||1!=h.setInternalHeight||(i=i+c.textpanel_padding_bottom,i=i,1==(e=(e=e)||!1)?(s&amp;&amp;s.height()&lt;i&amp;&amp;s.height(i),e={height:i+"px"},r.add(l).animate(e,c.textpanel_fade_duration)):(s&amp;&amp;s.height(i),r.add(l).height(i)))}function p(){var e,t=0;return o&amp;&amp;(t+=o.outerHeight()),a&amp;&amp;(e="",a&amp;&amp;(e=jQuery.trim(a.text())),""!=e&amp;&amp;(o&amp;&amp;(t+=c.textpanel_padding_title_description),t+=a.outerHeight())),t}function m(){var e,t;1==c.textpanel_enable_bg&amp;&amp;((s=r.children(".ug-textpanel-bg")).fadeTo(0,c.textpanel_bg_opacity),e={"background-color":c.textpanel_bg_color},e=jQuery.extend(e,c.textpanel_bg_css),s.css(e)),1==c.textpanel_enable_title&amp;&amp;(o=l.children(".ug-textpanel-title"),t={},null!==c.textpanel_title_color&amp;&amp;(t.color=c.textpanel_title_color),null!==c.textpanel_title_font_family&amp;&amp;(t["font-family"]=c.textpanel_title_font_family),null!==c.textpanel_title_text_align&amp;&amp;(t["text-align"]=c.textpanel_title_text_align),null!==c.textpanel_title_font_size&amp;&amp;(t["font-size"]=c.textpanel_title_font_size+"px"),null!==c.textpanel_title_bold&amp;&amp;(!0===c.textpanel_title_bold?t["font-weight"]="bold":t["font-weight"]="normal"),c.textpanel_css_title&amp;&amp;(t=jQuery.extend(t,c.textpanel_css_title)),o.css(t)),1==c.textpanel_enable_description&amp;&amp;(a=l.children(".ug-textpanel-description"),t={},null!==c.textpanel_desc_color&amp;&amp;(t.color=c.textpanel_desc_color),null!==c.textpanel_desc_font_family&amp;&amp;(t["font-family"]=c.textpanel_desc_font_family),null!==c.textpanel_desc_text_align&amp;&amp;(t["text-align"]=c.textpanel_desc_text_align),null!==c.textpanel_desc_font_size&amp;&amp;(t["font-size"]=c.textpanel_desc_font_size+"px"),null!==c.textpanel_desc_bold&amp;&amp;(!0===c.textpanel_desc_bold?t["font-weight"]="bold":t["font-weight"]="normal"),c.textpanel_css_title&amp;&amp;(t=jQuery.extend(t,c.textpanel_css_description)),a.css(t))}function e(){var e=u.getSelectedItem();d.setText(e.title,e.description,e.link)}this.positionElements=function(e){if(!c.textpanel_height||"top"==c.textpanel_text_valign)return i(e),!1;switch(c.textpanel_text_valign){default:case"top":i(!1);break;case"bottom":t=p(),i(!1,l.height()-t-c.textpanel_padding_bottom);break;case"center":case"middle":t=p(),i(!1,(l.height()-t)/2)}var t},this.init=function(e,t,i){if(u=e,i&amp;&amp;(g=i,t=_.convertCustomPrefixOptions(t,g,"textpanel")),t&amp;&amp;(c=jQuery.extend(c,t)),0==c.textpanel_enable_title&amp;&amp;0==c.textpanel_enable_description)throw new Error("Textpanel Error: The title or description must be enabled");c.textpanel_height&amp;&amp;c.textpanel_height&lt;0&amp;&amp;(c.textpanel_height=null),1==c.textpanel_desc_style_as_title&amp;&amp;(c.textpanel_desc_color||(c.textpanel_desc_color=c.textpanel_title_color),c.textpanel_desc_bold||(c.textpanel_desc_bold=c.textpanel_title_bold),c.textpanel_desc_font_family||(c.textpanel_desc_font_family=c.textpanel_title_font_family),c.textpanel_desc_font_size||(c.textpanel_desc_font_size=c.textpanel_title_font_size),c.textpanel_desc_text_align||(c.textpanel_desc_text_align=c.textpanel_title_text_align))},this.appendHTML=function(e,t){n=e;var i="&lt;div class='ug-textpanel"+(t=t?" "+t:"")+"'&gt;";1==c.textpanel_enable_bg&amp;&amp;(i+="&lt;div class='ug-textpanel-bg"+t+"'&gt;&lt;/div&gt;"),i+="&lt;div class='ug-textpanel-textwrapper"+t+"'&gt;",1==c.textpanel_enable_title&amp;&amp;(i+="&lt;div class='ug-textpanel-title"+t+"'&gt;&lt;/div&gt;"),1==c.textpanel_enable_description&amp;&amp;(i+="&lt;div class='ug-textpanel-description"+t+"'&gt;&lt;/div&gt;"),i+="&lt;/div&gt;&lt;/div&gt;",e.append(i),r=e.children(".ug-textpanel"),l=r.children(".ug-textpanel-textwrapper"),m()},this.destroy=function(){jQuery(u).off(u.events.ITEM_CHANGE)},this.run=function(){d.setSizeByParent(),jQuery(u).on(u.events.ITEM_CHANGE,e)},this.setPanelSize=function(e,t){h.setInternalHeight=!0,t?h.setInternalHeight=!1:t=80,c.textpanel_height&amp;&amp;(t=c.textpanel_height),r.width(e),r.height(t),s&amp;&amp;(s.width(e),s.height(t));var i=e-c.textpanel_padding_left-c.textpanel_padding_right,e=c.textpanel_padding_left;_.setElementSizeAndPosition(l,e,0,i,t),o&amp;&amp;o.width(i),a&amp;&amp;a.width(i),0==h.isFirstTime&amp;&amp;d.positionElements(!1)},this.setSizeByParent=function(){var e=_.getElementSize(n);d.setPanelSize(e.width)},this.setTextPlain=function(e,t,i){var n;1==c.textpanel_title_as_link&amp;&amp;e&amp;&amp;i&amp;&amp;(n="",1==c.textpanel_title_link_newtab&amp;&amp;(n+=' target="blank"'),e='&lt;a class="ug-textpanel-link" href="'+i+'" '+n+"&gt;"+e+"&lt;/a&gt;"),o&amp;&amp;o.html(e),a&amp;&amp;a.html(t)},this.setText=function(e,t,i){1==h.isFirstTime?(d.setTextPlain(e,t,i),h.isFirstTime=!1,d.positionElements(!1)):l.stop().fadeTo(c.textpanel_fade_duration,0,function(){d.setTextPlain(e,t,i),d.positionElements(!0),jQuery(this).fadeTo(c.textpanel_fade_duration,1)})},this.positionPanel=function(e,t){var i={};if(null!=e)i.top=e,i.bottom="auto";else switch(c.textpanel_align){case"top":i.top=c.textpanel_margin+"px";break;case"bottom":i.top="auto",i.bottom=c.textpanel_margin+"px";break;case"middle":i.top=_.getElementRelativePos(r,"middle",c.textpanel_margin)}null!=t&amp;&amp;(i.left=t),r.css(i)},this.setOptions=function(e){g&amp;&amp;(e=_.convertCustomPrefixOptions(e,g,"textpanel")),c=jQuery.extend(c,e)},this.getElement=function(){return r},this.getSize=function(){return _.getElementSize(r)},this.refresh=function(e,t,i,n){m(),i?d.setPanelSize(i,n):d.setSizeByParent(),d.positionElements(!1),!0!==t&amp;&amp;d.positionPanel(),!0===e&amp;&amp;d.show()},this.hide=function(){r.hide()},this.show=function(){r.show()},this.getOptions=function(){return c},this.getOption=function(e){return 0==c.hasOwnProperty(e)?null:c[e]}}function UGZoomButtonsPanel(){var i,n,r,o,a=new UGSlider,e=new UGFunctions,s={slider_zoompanel_skin:""};function t(e){return!e||!!e.hasClass("ug-zoompanel-button-disabled")}function l(e){e&amp;&amp;e.addClass("ug-zoompanel-button-disabled")}function u(e){e&amp;&amp;e.removeClass("ug-zoompanel-button-disabled")}function d(){if(0==a.isCurrentSlideType("image"))return!0;1==a.isCurrentSlideImageFit()?0==t(r)&amp;&amp;(l(r),l(o)):1==t(r)&amp;&amp;(u(r),u(o))}this.init=function(e,t){a=e,t&amp;&amp;(s=jQuery.extend(s,t))},this.appendHTML=function(e){0;var t="&lt;div class='ug-slider-control ug-zoompanel ug-skin-"+s.slider_zoompanel_skin+"'&gt;";t+="&lt;div class='ug-zoompanel-button ug-zoompanel-plus'&gt;&lt;/div&gt;",t+="&lt;div class='ug-zoompanel-button ug-zoompanel-minus ug-zoompanel-button-disabled'&gt;&lt;/div&gt;",t+="&lt;div class='ug-zoompanel-button ug-zoompanel-return ug-zoompanel-button-disabled'&gt;&lt;/div&gt;",t+="&lt;/div&gt;",e.append(t),i=e.children(".ug-zoompanel"),n=i.children(".ug-zoompanel-plus"),r=i.children(".ug-zoompanel-minus"),o=i.children(".ug-zoompanel-return")},this.setObjects=function(e,t,i){n=e,o=i,(r=t)&amp;&amp;r.addClass("ug-zoompanel-button-disabled"),o&amp;&amp;o.addClass("ug-zoompanel-button-disabled")},this.getElement=function(){return i},this.initEvents=function(){e.addClassOnHover(n,"ug-button-hover"),e.addClassOnHover(r,"ug-button-hover"),e.addClassOnHover(o,"ug-button-hover"),e.setButtonOnClick(n,function(){return 1==t(n)||void a.zoomIn()}),e.setButtonOnClick(r,function(){return 1==t(r)||void a.zoomOut()}),e.setButtonOnClick(o,function(){return 1==t(o)||void a.zoomBack()}),jQuery(a).on(a.events.ZOOM_CHANGE,d),jQuery(a).on(a.events.ITEM_CHANGED,d)}}function UGBullets(){var r,o,t=this,a=0,n=new UniteGalleryMain,i=new UGFunctions,s={isInited:!1},l={bullets_size:"",bullets_color:"",bullets_color_reverse:!1,bullets_addclass:"",bullets_space_between:-1};function u(){var e="",t="";-1!=l.bullets_space_between&amp;&amp;(t=" style='margin-left:"+l.bullets_space_between+"px'");for(var i,n=0;n&lt;a;n++)e+=0==n?"&lt;div class='ug-bullet'&gt;&lt;/div&gt;":"&lt;div class='ug-bullet'"+t+"&gt;&lt;/div&gt;";r.html(e),o||(i=r.find(".ug-bullet:first-child")).length&amp;&amp;(o=i.width()),""!=l.bullets_size&amp;&amp;r.children(".ug-bullet").css({width:l.bullets_size+"px",height:l.bullets_size+"px"})}function d(e){if(1==t.isActive(e))return!0;e=e.index();jQuery(t).trigger(t.events.BULLET_CLICK,e)}function _(){var e=r.children(".ug-bullet");i.setButtonOnClick(e,d),e.on("mousedown mouseup",function(e){return!1})}function g(e){if(e&lt;0||a&lt;=e)throw new Error("wrong bullet index: "+e)}function c(){if(1==s.isInited)return 1;throw new Error("The bullets are not inited!")}this.events={BULLET_CLICK:"bullet_click"},this.init=function(e,t,i){n=e,a=i||n.getNumItems(),s.isInited=!0,l=jQuery.extend(l,t)},this.getBulletsWidth=function(){return 0!=a&amp;&amp;o?a*o+(a-1)*l.bullets_space_between:0},this.appendHTML=function(e){c();var t="";""!=l.bullets_addclass&amp;&amp;(t=" "+l.bullets_addclass);t="&lt;div class='ug-slider-control ug-bullets ug-skin-"+t+"'&gt;";t+="&lt;/div&gt;",r=jQuery(t),e.append(r),u(),_()},this.updateNumBullets=function(e){a=e,u(),_()},this.getElement=function(){return r},this.setActive=function(e){c(),g(e);var t=r.children(".ug-bullet");t.removeClass("ug-bullet-active");t=jQuery(t[e]);if(t.addClass("ug-bullet-active"),!t.hasClass("ug-bullet-active"))return!1;!function(e){if(1==l.bullets_color_reverse){if(""!=l.bullets_color)return r.children(".ug-bullet").css({"background-color":l.bullets_color,"border-color":l.bullets_color}),e.css({"background-color":"transparent"});var t=e.css("background-color");return r.children(".ug-bullet").css({"background-color":t,"border-color":t}),e.css({"background-color":"transparent"})}""!=l.bullets_color&amp;&amp;(r.children(".ug-bullet").css({"background-color":"","border-color":l.bullets_color}),e.css({"background-color":l.bullets_color}))}(t)},this.isActive=function(e){return g(e),!!("number"!=typeof e?e:r.children(".ug-bullet")[e]).hasClass("ug-bullet-active")},this.getNumBullets=function(){return a}}function UGProgressBar(){var r,i,n=this,t=0,o=new UGFunctions,a={slider_progressbar_color:"#ffffff",slider_progressbar_opacity:.6,slider_progressbar_line_width:5};this.put=function(e,t){t&amp;&amp;(a=jQuery.extend(a,t)),e.append("&lt;div class='ug-progress-bar'&gt;&lt;div class='ug-progress-bar-inner'&gt;&lt;/div&gt;&lt;/div&gt;"),r=e.children(".ug-progress-bar"),(i=r.children(".ug-progress-bar-inner")).css("background-color",a.slider_progressbar_color),r.height(a.slider_progressbar_line_width),i.height(a.slider_progressbar_line_width),i.width("0%");t=a.slider_progressbar_opacity,e=i[0];e.style.opacity=t,e.style.filter="alpha(opacity="+100*t+")"},this.putHidden=function(e,t){n.put(e,t),r.hide()},this.getElement=function(){return r},this.setSize=function(e){r.width(e),i.width(e),n.draw()},this.setPosition=function(e,t,i,n){o.placeElement(r,e,t,i,n)},this.draw=function(){var e=100*t;i.width(e+"%")},this.setProgress=function(e){t=o.normalizePercent(e),n.draw()},this.getType=function(){return"bar"}}function UGProgressPie(){var s,i=this,l=!1,n=new UGFunctions,u={slider_progresspie_type_fill:!1,slider_progresspie_color1:"#B5B5B5",slider_progresspie_color2:"#E5E5E5",slider_progresspie_stroke_width:6,slider_progresspie_width:30,slider_progresspie_height:30};function r(e){e=e||0;var t=Math.min(u.slider_progresspie_width,u.slider_progresspie_height)/2,i=s[0].getContext("2d");0==l&amp;&amp;(l=!0,i.rotate(1.5*Math.PI),i.translate(-2*t,0)),i.clearRect(0,0,u.slider_progresspie_width,u.slider_progresspie_height);var n=u.slider_progresspie_width/2,r=u.slider_progresspie_height/2,o=0,a=e*Math.PI*2;1==u.slider_progresspie_type_fill?(i.beginPath(),i.moveTo(n,r),i.arc(n,r,t,o,a)):(i.globalCompositeOperation="source-over",i.beginPath(),i.moveTo(n,r),i.arc(n,r,t,o,a),i.lineTo(n,r),i.fillStyle=u.slider_progresspie_color1,i.fill(),i.closePath(),i.globalCompositeOperation="destination-out",e=t-u.slider_progresspie_stroke_width,i.beginPath(),i.moveTo(n,r),i.arc(n,r,e,o,a)),i.lineTo(n,r),i.fillStyle=u.slider_progresspie_color1,i.fill(),i.closePath(),1==u.slider_progresspie_type_fill&amp;&amp;(o=a,a=2*Math.PI,i.beginPath(),i.arc(n,r,t,o,a),i.lineTo(n,r),i.fillStyle=u.slider_progresspie_color2,i.fill(),i.closePath())}this.put=function(e,t){t&amp;&amp;(u=jQuery.extend(u,t)),e.append("&lt;canvas class='ug-canvas-pie' width='"+u.slider_progresspie_width+"' height='"+u.slider_progresspie_height+"'&gt;&lt;/canvas&gt;"),s=e.children(".ug-canvas-pie")},this.putHidden=function(e,t){i.put(e,t),r(.1),s.hide()},this.getElement=function(){return s},this.setPosition=function(e,t){n.placeElement(s,e,t)},this.getSize=function(){return{width:u.slider_progresspie_width,height:u.slider_progresspie_height}},this.setProgress=function(e){e=n.normalizePercent(e),r(e)},this.getType=function(){return"pie"}}function UGTouchSliderControl(){var r,o,a,i,s=new UGSlider,l=new UGFunctions,u={slider_transition_continuedrag_speed:250,slider_transition_continuedrag_easing:"linear",slider_transition_return_speed:300,slider_transition_return_easing:"easeInOutQuad"},d={touch_active:!1,startMouseX:0,startMouseY:0,lastMouseX:0,lastMouseY:0,startPosx:0,startTime:0,isInitDataValid:!1,slides:null,lastNumTouches:0,isDragging:!1,storedEventID:"touchSlider",videoStartX:0,isDragVideo:!1,videoObject:null};function _(e){return e=e||s.getSlidesReference(),-l.getElementSize(e.objCurrentSlide).left-l.getElementSize(o).left}function g(e){var r;1!=s.isInnerInPlace()&amp;&amp;(a.trigger(s.events.BEFORE_RETURN),e=e||s.getSlidesReference(),r=-l.getElementSize(e.objCurrentSlide).left,o.animate({left:r+"px"},{duration:u.slider_transition_return_speed,easing:u.slider_transition_continuedrag_easing,queue:!1,progress:function(e,t,i){var n;1==d.isDragVideo&amp;&amp;(n=l.getElementSize(o).left-r,n=d.videoStartX+n,d.videoObject.css("left",n))},complete:function(){a.trigger(s.events.AFTER_RETURN)}}))}function c(){var e=s.getSlidesReference(),t=_(e);if(0!=t){var i,n=0&lt;t?"left":"right",r=!1;switch(n){case"right":s.isSlideHasItem(e.objPrevSlide)?i=-l.getElementSize(e.objPrevSlide).left:r=!0;break;case"left":s.isSlideHasItem(e.objNextSlide)?i=-l.getElementSize(e.objNextSlide).left:r=!0}1==r?g(e):o.stop().animate({left:i+"px"},{duration:u.slider_transition_continuedrag_speed,easing:u.slider_transition_continuedrag_easing,queue:!1,progress:function(){var e;1==d.isDragVideo&amp;&amp;(e=l.getElementSize(o).left-d.startPosx,e=d.videoStartX+e,d.videoObject.css("left",e))},always:function(){var e;e=n,s.getVideoObject().hide(),s.switchSlideNums(e),s.placeNabourItems(),a.trigger(s.events.AFTER_DRAG_CHANGE)}})}}function h(e){var t=l.getMousePosition(e);d.startMouseX=t.pageX,d.startMouseY=t.pageY,d.lastMouseX=d.startMouseX,d.lastMouseY=d.startMouseY,d.startTime=jQuery.now();t=l.getArrTouches(e);d.startArrTouches=l.getArrTouchPositions(t);t=l.getElementSize(o);d.startPosx=t.left,d.isInitDataValid=!0,d.isDragVideo=!1,l.storeEventData(e,d.storedEventID)}function p(){d.touch_active=!1}function m(e,t){d.touch_active=!0,h(t)}function n(e){return e.preventDefault(),d.isDragging=!1,1==s.isAnimating()&amp;&amp;o.stop(!0,!0),1&lt;l.getArrTouches(e).length?(1==d.touch_active&amp;&amp;p(),!0):1==d.touch_active||void m(0,e)}function f(e){if(0==d.touch_active)return!0;if(0==e.buttons)return p(),c(),!0;l.updateStoredEventData(e,d.storedEventID),e.preventDefault();var t=l.getMousePosition(e);d.lastMouseX=t.pageX,d.lastMouseY=t.pageY;t=null;1==u.slider_vertical_scroll_ondrag&amp;&amp;(t=l.handleScrollTop(d.storedEventID)),"vert"!==t&amp;&amp;function(e){var t=d.lastMouseX-d.startMouseX;if(0!=t){var i=t&lt;0?"left":"right",n=s.getObjZoom();if(n){if(1==n.isPanEnabled(e,i))return d.isInitDataValid=!1;if(0==d.isInitDataValid)return h(e)}e=d.startPosx+t,0&lt;t&amp;&amp;0&lt;e?e/=3:t&lt;0&amp;&amp;e+o.width()&lt;r.width()&amp;&amp;(e=d.startPosx+t/3),0==d.isDragging&amp;&amp;(d.isDragging=!0,a.trigger(s.events.START_DRAG)),o.css("left",e+"px"),1==d.isDragVideo&amp;&amp;(e=e-d.startPosx,e=d.videoStartX+e,d.videoObject.css("left",e))}}(e)}function b(e){var t,i,n,r=l.getArrTouches(e).length;if(1==s.isInnerInPlace()&amp;&amp;0==d.touch_active&amp;&amp;0==r)return!0;0==r&amp;&amp;1==d.touch_active?(p(),t=!1,0==l.wasVerticalScroll(d.storedEventID)&amp;&amp;(i=_(n=s.getSlidesReference()),n=Math.round(3*n.objCurrentSlide.width()/8),t=Math.abs(i)&gt;=n||(n=Math.abs(d.lastMouseX-d.startMouseX),Math.abs(d.lastMouseY-d.startMouseY),!(n&lt;20)&amp;&amp;jQuery.now()-d.startTime&lt;500)),(1==t?c:g)()):1==r&amp;&amp;0==d.touch_active&amp;&amp;m(0,e)}this.isTapEventOccured=function(e){var t=l.getArrTouches(e).length;if(0!=t||0!=d.lastNumTouches)return d.lastNumTouches=t,!1;d.lastNumTouches=t;_(s.getSlidesReference());var i=Math.abs(d.lastMouseX-d.startMouseX),e=Math.abs(d.lastMouseY-d.startMouseY),t=jQuery.now()-d.startTime;return i&lt;20&amp;&amp;e&lt;50&amp;&amp;t&lt;500},this.init=function(e,t){s=e,a=jQuery(s),i=e.getObjects(),r=i.g_objSlider,o=i.g_objInner,u=jQuery.extend(u,t),r.bind("mousedown touchstart",n),jQuery("body").bind("mousemove touchmove",f),jQuery(window).add("body").bind("mouseup touchend",b)},this.getLastMousePos=function(){return{pageX:d.lastMouseX,pageY:d.lastMouseY}},this.isTouchActive=function(){return d.touch_active}}function UGZoomSliderControl(){var i,s,n,l=new UGSlider,u=new UGFunctions,d={slider_zoom_step:1.2,slider_zoom_max_ratio:6,slider_zoom_return_pan_duration:400,slider_zoom_return_pan_easing:"easeOutCubic"},_={isPanActive:!1,startMouseX:0,startMouseY:0,lastMouseX:0,lastMouseY:0,startImageX:0,startImageY:0,panXActive:!1,panYActive:!1,objImage:null,objImageSize:null,objParent:null,objParentSize:null,objSlide:null,storeImageLastTime:0,isZoomActive:!1,startDistance:0,startMiddlePoint:null,imageOrientPoint:null,objFitImageSize:null,isZoomedOnce:!1};function r(e,t){l=e,s=jQuery(l),n=e.getObjects(),i=n.g_objSlider,n.g_objInner,d=jQuery.extend(d,t),i.on("mousewheel",w),i.bind("mousedown touchstart",b),jQuery("body").bind("mousemove touchmove",y),jQuery(window).add("body").bind("mouseup touchend",v),s.bind(l.events.BEFORE_RETURN,function(){f()}),s.bind(l.events.ITEM_CHANGED,function(){_.isZoomedOnce=!1}),s.bind(l.events.ZOOM_CHANGE,function(){_.isZoomedOnce=!0})}function g(){var e=l.getScaleMode();return"down"!=e&amp;&amp;(e="fit"),e}function o(){if((i=jQuery.now())-_.storeImageLastTime&lt;20)return!1;var e=l.getSlidesReference();if(_.objSlide=e.objCurrentSlide,_.objImage=e.objCurrentSlide.find("img"),0==_.objImage.length)return!1;_.objImageSize=u.getElementSize(_.objImage),_.objParent=_.objImage.parent(),_.objParentSize=u.getElementSize(_.objParent);var t=g(),e=l.getObjImagePadding();_.objFitImageSize=u.getImageInsideParentDataByImage(_.objImage,t,e);var i=jQuery.now();return _.storeImageLastTime=i,!0}function a(e,t){var i=l.getSlidesReference().objCurrentSlide.find("img"),n=g();s.trigger(l.events.ZOOM_START);var r,o=!0,a=l.getObjImagePadding();"back"==e?(r=u.getImageOriginalSize(i),u.scaleImageFitParent(i,r.width,r.height,n,a)):(e="in"==e,o=u.zoomImageInsideParent(i,e,d.slider_zoom_step,t,n,d.slider_zoom_max_ratio,a)),1==o&amp;&amp;(s.trigger(l.events.ZOOMING),s.trigger(l.events.ZOOM_CHANGE),s.trigger(l.events.ZOOM_END))}function c(e,t,i){t=u.getArrTouches(t);if(!0===i){if(1!=t.length)return!1}else if(1&lt;t.length)return!1;return!!u.isElementBiggerThenParent(e)}function h(e){_.isPanActive=!0,e=e,e=u.getMousePosition(e),_.startMouseX=e.pageX,_.startMouseY=e.pageY,_.lastMouseX=_.startMouseX,_.lastMouseY=_.startMouseY,_.startImageX=_.objImageSize.left,_.startImageY=_.objImageSize.top,_.panXActive=_.objImageSize.width&gt;_.objParentSize.width,_.panYActive=_.objImageSize.height&gt;_.objParentSize.height}function p(e){0!=_.isZoomActive&amp;&amp;2!=u.getArrTouches(e).length&amp;&amp;(_.isZoomActive=!1,s.trigger(l.events.ZOOM_END))}function m(e){if(1==_.isZoomActive)return 1;e=u.getArrTouches(e);if(2!=e.length)return 1;e=e,_.isZoomActive=!0,_.startDistance=u.getDistance(e[0].pageX,e[0].pageY,e[1].pageX,e[1].pageY),0==_.startDistance&amp;&amp;(_.startDistance=1),_.startMiddlePoint=u.getMiddlePoint(e[0].pageX,e[0].pageY,e[1].pageX,e[1].pageY),_.objImageSize=u.getElementSize(_.objImage),_.startImageX=_.objImageSize.left,_.startImageY=_.objImageSize.top,_.imageOrientPoint=u.getElementLocalPoint(_.startMiddlePoint,_.objImage),0==u.isPointInsideElement(_.imageOrientPoint,_.objImageSize)&amp;&amp;(_.imageOrientPoint=u.getElementCenterPoint(_.objImage)),s.trigger(l.events.ZOOM_START)}function f(){if(null==_.objImage||0==_.objImage.length)return 1;var e,t,i,n,r,o;u.getElementSize(_.objImage).width&lt;_.objFitImageSize.imageWidth?(_.objImage.css({position:"absolute",margin:"none"}),o={top:_.objFitImageSize.imageTop+"px",left:_.objFitImageSize.imageLeft+"px",width:_.objFitImageSize.imageWidth+"px",height:_.objFitImageSize.imageHeight+"px"},_.objImage.animate(o,{duration:d.slider_zoom_return_pan_duration,easing:d.slider_zoom_return_pan_easing,queue:!1})):(t=e=!1,n=i=0,r=u.getElementSize(_.objImage),o=l.getObjImagePadding(),o=u.getElementCenterPosition(_.objImage,o),_.panXActive=_.objImageSize.width&gt;_.objParentSize.width,_.panYActive=_.objImageSize.height&gt;_.objParentSize.height,1==_.panYActive?0&lt;r.top?t=!(n=0):r.bottom&lt;_.objParentSize.height&amp;&amp;(n=_.objParentSize.height-r.height,t=!0):r.top!=o.top&amp;&amp;(t=!0,n=o.top),1==_.panXActive?0&lt;r.left?e=!(i=0):r.right&lt;_.objParentSize.width&amp;&amp;(i=_.objParentSize.width-r.width,e=!0):r.left!=o.left&amp;&amp;(e=!0,i=o.left),o={},1==t&amp;&amp;(o.top=n+"px"),1==e&amp;&amp;(o.left=i+"px"),1!=t&amp;&amp;1!=e||_.objImage.animate(o,{duration:d.slider_zoom_return_pan_duration,easing:d.slider_zoom_return_pan_easing,queue:!1}))}function b(e){if(0==l.isCurrentSlideType("image"))return!0;o();if(null==_.objImage||0==_.objImage.length)return!0;e.preventDefault(),1==!(!_.objImage||!_.objImage.is(":animated"))&amp;&amp;_.objImage.stop(!0),(1==_.isZoomActive?p:m)(e),1==_.isZoomActive?_.isPanActive=!1:1==c(_.objImage,e)&amp;&amp;1==_.isZoomedOnce&amp;&amp;h(e)}function v(e){if(0==l.isCurrentSlideType("image"))return!0;if(1==jQuery(e.target).data("ug-button"))return!1;o();if(null==_.objImage||0==_.objImage.length)return!0;var t,i=_.isPanActive,n=_.isZoomActive;if(0==l.isInnerInPlace())return _.isZoomActive=!1,!(_.isPanActive=!1);(1==_.isZoomActive?p:m)(e),1==_.isZoomActive?_.isPanActive=!1:(t=c(_.objImage,e,!0),1==_.isPanActive?_.isPanActive=!1:1==t&amp;&amp;h(e)),(i||n)&amp;&amp;0==_.isZoomActive&amp;&amp;0==_.isPanActive&amp;&amp;f()}function y(e){if(0==l.isCurrentSlideType("image"))return!0;var t,i,n,r,o,a;1==_.isZoomActive?(t=e,i=u.getArrTouches(t),n=u.getDistance(i[0].pageX,i[0].pageY,i[1].pageX,i[1].pageY)/_.startDistance,r=u.getMiddlePoint(i[0].pageX,i[0].pageY,i[1].pageX,i[1].pageY),o=_.objImageSize.width*n,a=_.objImageSize.height*n,t=u.getImageOriginalSize(_.objImage),i=1,0&lt;t.width&amp;&amp;(i=o/t.width),i&gt;d.slider_zoom_max_ratio||(panX=-(_.imageOrientPoint.x*n-_.imageOrientPoint.x),panY=-(_.imageOrientPoint.y*n-_.imageOrientPoint.y),n=r.x-_.startMiddlePoint.x,r=r.y-_.startMiddlePoint.y,n=_.startImageX+panX+n,r=_.startImageY+panY+r,u.setElementSizeAndPosition(_.objImage,n,r,o,a),s.trigger(l.events.ZOOMING),s.trigger(l.events.ZOOM_CHANGE))):1==_.isPanActive&amp;&amp;(n=e,null!=_.objImage&amp;&amp;0!=_.objImage.length&amp;&amp;((r=u.getMousePosition(n)).pageX,_.startMouseX,r.pageY,_.startMouseY,o=r.pageX-_.lastMouseX,a=r.pageY-_.lastMouseY,e=o&lt;0?"left":"right",n=a&lt;0?"up":"down",_.lastMouseX=r.pageX,_.lastMouseY=r.pageY,r=u.getElementSize(_.objImage),0==_.panYActive?a=0:("down"==n&amp;&amp;0&lt;r.top||"up"==n&amp;&amp;r.bottom&lt;_.objParentSize.height)&amp;&amp;(a/=3),0==_.panXActive||0==l.isInnerInPlace()?o=0:("right"==e&amp;&amp;0&lt;r.left||"left"==e&amp;&amp;r.right&lt;_.objParentSize.width)&amp;&amp;(o/=3),o=r.left+o,a=r.top+a,u.placeElement(_.objImage,o,a)))}function w(e,t,i,n){return 0==d.slider_zoom_mousewheel||(0==l.isCurrentSlideType("image")||(e.preventDefault(),void a(1==0&lt;t?"in":"out",u.getMousePosition(e))))}this.________EXTERNAL_____________=function(){},this.isPanEnabled=function(e,t){if(o(),null==_.objImage||0==_.objImage.length)return!1;if(0==_.isZoomedOnce)return!1;if(0==c(_.objImage,e))return!1;if(0==l.isInnerInPlace())return!1;if("left"==t){if(_.objImageSize.right&lt;=_.objParentSize.width)return!1}else if(0&lt;=_.objImageSize.left)return!1;return!0},this.init=function(e,t){r(e,t)},this.zoomIn=function(){a("in")},this.zoomOut=function(){a("out")},this.zoomBack=function(){a("back")}}function UGWistiaAPI(){this.isAPILoaded=!1;var a,s,l=this,u=jQuery(this),d=!1;function _(){return"undefined"!=typeof Wistia}function g(e,t,i,n,r){s=null,d=!1;var o=e+"_video",a="&lt;div id='"+o+"' class='wistia_embed' style='width:"+i+";height:"+n+";' data-video-width='"+i+"' data-video-height='"+n+"'&gt;&amp;nbsp;&lt;/div&gt;";jQuery("#"+e).html(a),s=Wistia.embed(t,{version:"v1",videoWidth:i,videoHeight:n,container:o,autoPlay:r}),d=!0,s.bind("play",function(){u.trigger(l.events.START_PLAYING)}),s.bind("pause",function(){u.trigger(l.events.STOP_PLAYING)}),s.bind("end",function(){u.trigger(l.events.STOP_PLAYING),u.trigger(l.events.VIDEO_ENDED)})}this.events={START_PLAYING:"start_playing",STOP_PLAYING:"stop_playing",VIDEO_ENDED:"video_ended"},this.loadAPI=function(e){return 1==g_ugWistiaAPI.isAPILoaded||(_()?g_ugWistiaAPI.isAPILoaded=!0:(!0!==e&amp;&amp;g_ugFunctions.loadJs("fast.wistia.com/assets/external/E-v1.js",!0),void(g_ugWistiaAPI.isAPILoaded=!0)))},this.doCommand=function(e){if(null==s)return!1;if(0==d)return!1;switch(e){case"play":s.play();break;case"pause":s.pause()}},this.pause=function(){l.doCommand("pause")},this.play=function(){l.doCommand("play")},this.putVideo=function(e,t,i,n,r,o){if(_())return g(e,t,i,n,r),!0;this.loadAPI(),a=setInterval(function(){_()&amp;&amp;(g(e,t,i,n,r),clearInterval(a))},500)},this.isPlayerReady=function(){return!(!d||!s)},this.muteVideo=function(){s.mute()}}function UGIframeAPI(){this.isAPILoaded=!1;var s,l,e=this,u=(jQuery(this),!1);this.events={START_PLAYING:"start_playing",STOP_PLAYING:"stop_playing",VIDEO_ENDED:"video_ended"},this.loadAPI=function(e){if(1==g_ugIframeAPI.isAPILoaded)return!0;g_ugIframeAPI.isAPILoaded=!0},this.doCommand=function(e){if(null==l)return!1;if(0==u)return!1;switch(e){case"play":l.play();break;case"pause":l.pause()}},this.pause=function(){e.doCommand("pause")},this.play=function(){e.doCommand("play")},this.putVideo=function(n,r,o,a){this.loadAPI(),s=setInterval(function(){var e,t,i;l=null,u=!1,i="&lt;iframe id='"+((e=n)+"_video")+"' class='iframe_embed' src='"+a+"' style='width:"+(t=r)+";height:"+(i=o)+";' data-video-width='"+t+"' data-video-height='"+i+"' frameborder='0' scrolling='no' webkitallowfullscreen mozallowfullscreen allowfullscreen&gt;&lt;/iframe&gt;",jQuery("#"+e).html(i),u=!0,clearInterval(s)},500)},this.isPlayerReady=function(){return 1==g_ugIframeAPI.isAPILoaded}}function UGSoundCloudAPI(){this.isAPILoaded=!1;var o,a,s,l,u=this,d=jQuery(this);function _(){return"undefined"!=typeof SC}function g(e,t,i,n,r){a=null,l=!1;var o=e+"_iframe",t=location.protocol+"//w.soundcloud.com/player/?url=http://api.soundcloud.com/tracks/"+t;t+="&amp;amp;buying=false&amp;amp;liking=false&amp;amp;download=false&amp;amp;sharing=false&amp;amp;show_artwork=true&amp;show_comments=false&amp;amp;show_playcount=true&amp;amp;show_user=false&amp;amp;hide_related=true&amp;amp;visual=true&amp;amp;start_track=0&amp;amp;callback=true";n="&lt;iframe id='"+o+"' src="+(t+=!0===r?"&amp;amp;auto_play=true":"&amp;amp;auto_play=false")+" width='"+i+"' height='"+n+"' frameborder='0' scrolling='no' webkitallowfullscreen mozallowfullscreen allowfullscreen&gt;&lt;/iframe&gt;";jQuery("#"+e).html(n),(a=SC.Widget(o)).bind(SC.Widget.Events.READY,function(){a&amp;&amp;(l=!0,a.bind(SC.Widget.Events.PLAY,function(){d.trigger(u.events.START_PLAYING)}),a.bind(SC.Widget.Events.PAUSE,function(){d.trigger(u.events.STOP_PLAYING)}),a.bind(SC.Widget.Events.FINISH,function(){d.trigger(u.events.STOP_PLAYING),d.trigger(u.events.VIDEO_ENDED)}))}),s=e}this.events={START_PLAYING:"start_playing",STOP_PLAYING:"stop_playing",VIDEO_ENDED:"video_ended"},this.loadAPI=function(e){return 1==g_ugSoundCloudAPI.isAPILoaded||(_()?g_ugSoundCloudAPI.isAPILoaded=!0:(!0!==e&amp;&amp;g_ugFunctions.loadJs("w.soundcloud.com/player/api.js",!0),void(g_ugSoundCloudAPI.isAPILoaded=!0)))},this.putSound=function(e,t,i,n,r){if(_())return g(e,t,i,n,r),!0;this.loadAPI(),o=setInterval(function(){_()&amp;&amp;(g(e,t,i,n,r),clearInterval(o))},500)},this.doCommand=function(e){if(null==a)return!1;if(0==l)return!1;switch(e){case"play":a.play();break;case"pause":a.pause()}},this.pause=function(){u.doCommand("pause")},this.play=function(){u.doCommand("play")},this.destroy=function(){l=!1,a=null,s&amp;&amp;(jQuery("#"+s).html(""),s=null)}}function UGHtml5MediaAPI(){this.isAPILoaded=!1;var o,d,_,g=this,c=jQuery(this);function a(){return"undefined"!=typeof mejs}function s(e,t,i,n,r){d=null,_=!1;var o=location.protocol+"//cdnjs.cloudflare.com/ajax/libs/mediaelement/2.18.1/flashmediaelement-cdn.swf",a=location.protocol+"//cdnjs.cloudflare.com/ajax/libs/mediaelement/2.18.1/silverlightmediaelement.xap",s=e+"_video",l="";r&amp;&amp;!0===r&amp;&amp;(l="autoplay='autoplay'");var u="";t.posterImage&amp;&amp;(u="poster='"+t.posterImage+"'");u="&lt;video id='"+s+"' width='"+i+"' height='"+n+"'  controls='controls' controlsList='nodownload' preload='none' "+l+" "+u+"&gt;";""!=t.mp4&amp;&amp;(u+="&lt;source type='video/mp4' src='"+t.mp4+"' /&gt;"),""!=t.webm&amp;&amp;(u+="&lt;source type='video/webm' src='"+t.webm+"' /&gt;"),""!=t.ogv&amp;&amp;(u+="&lt;source type='video/ogg' src='"+t.ogv+"' /&gt;"),u+="&lt;object width='"+i+"' height='"+n+"' type='application/x-shockwave-flash' data='"+o+"'&gt;",u+="&lt;param name='movie' value='"+o+"' /&gt;",u+="&lt;param name='flashvars' value='controls=true&amp;file="+t.mp4+"' /&gt;",u+="&lt;/object&gt;",u+="&lt;/video&gt;",jQuery("#"+e).html(u),jQuery("#"+s).on("contextmenu",function(){return!1}),new MediaElement(s,{enablePluginDebug:!1,flashName:o,silverlightName:a,success:function(e,t){_=!0,d=e,0==r&amp;&amp;d.pause(),g_ugFunctions.addEvent(d,"play",function(){c.trigger(g.events.START_PLAYING)}),g_ugFunctions.addEvent(d,"pause",function(){c.trigger(g.events.STOP_PLAYING)}),g_ugFunctions.addEvent(d,"ended",function(){c.trigger(g.events.STOP_PLAYING),c.trigger(g.events.VIDEO_ENDED)})},error:function(e){trace(e)}})}this.events={START_PLAYING:"start_playing",STOP_PLAYING:"stop_playing",VIDEO_ENDED:"video_ended"},this.loadAPI=function(e){return 1==g_ugHtml5MediaAPI.isAPILoaded||(a()?g_ugHtml5MediaAPI.isAPILoaded=!0:(!0!==e&amp;&amp;(g_ugFunctions.loadJs("cdnjs.cloudflare.com/ajax/libs/mediaelement/2.18.1/mediaelement.min.js",!0),g_ugFunctions.loadCss("cdnjs.cloudflare.com/ajax/libs/mediaelement/2.18.1/mediaelementplayer.min.css",!0)),void(g_ugHtml5MediaAPI.isAPILoaded=!0)))},this.putVideo=function(e,t,i,n,r){if(a())return s(e,t,i,n,r),!0;this.loadAPI(),o=setInterval(function(){a()&amp;&amp;(s(e,t,i,n,r),clearInterval(o))},500)},this.doCommand=function(e){if(null==d)return!1;if(0==_)return!1;switch(e){case"play":d.play();break;case"pause":d.pause()}},this.pause=function(){g.doCommand("pause")},this.play=function(){g.doCommand("play")},this.muteVideo=function(){d.volume=0}}function UGVimeoAPI(){this.isAPILoaded=!1;var o,a,s=this,l=jQuery(this),u=null,d=!1,_=!1;function g(){return"object"==typeof Vimeo}function c(e,t,i,n,r){u=null,d=!1;t=location.protocol+"//player.vimeo.com/video/"+t+"?api=1";!0===r&amp;&amp;(t+="&amp;amp;byline=0&amp;amp;autoplay=1&amp;amp;title=0&amp;amp;portrait=0");n="&lt;iframe src="+t+" width='"+i+"' height='"+n+"' frameborder='0' webkitallowfullscreen mozallowfullscreen allowfullscreen&gt;&lt;/iframe&gt;";jQuery("#"+e).html(n);jQuery("#"+e+" iframe")[0];u=new Vimeo.Player(e),d=!0,u&amp;&amp;(u.on("cuechange",function(){1==_&amp;&amp;s.play()}),u.on("play",function(){l.trigger(s.events.START_PLAYING)}),u.on("pause",function(){l.trigger(s.events.STOP_PLAYING)}),u.on("ended",function(){l.trigger(s.events.STOP_PLAYING),l.trigger(s.events.VIDEO_ENDED)})),a=e}this.events={START_PLAYING:"start_playing",STOP_PLAYING:"stop_playing",VIDEO_ENDED:"video_ended"},this.loadAPI=function(e){return 1==g_ugVimeoAPI.isAPILoaded||1!=g()&amp;&amp;(!0!==e&amp;&amp;g_ugFunctions.loadJs("player.vimeo.com/api/player.js",!0),void(g_ugVimeoAPI.isAPILoaded=!0))},this.doCommand=function(e){if(null==u)return!1;if(0==d)return!1;switch(e){case"pause":u.pause();break;case"play":u.play();break;default:throw new Error("wrong command: "+e)}},this.pause=function(){s.doCommand("pause")},this.play=function(){s.doCommand("play")},this.destroy=function(){u&amp;&amp;(u.unload(),u=null,d=!1),a&amp;&amp;jQuery("#"+a).html("")},this.putVideo=function(e,t,i,n,r){if(g())return c(e,t,i,n,r),!0;this.loadAPI(),o=setInterval(function(){g()&amp;&amp;(c(e,t,i,n,r),clearInterval(o))},500)},this.isPlayerReady=function(){return!(!d||!u)},this.changeVideo=function(e,t){if(0==s.isPlayerReady())return!1;_=t,u.loadVideo(e)},this.getVideoImages=function(e,i,n){e=location.protocol+"//vimeo.com/api/v2/video/"+e+".json";jQuery.get(e,{},function(e){var t={};t.preview=e[0].thumbnail_large,t.thumb=e[0].thumbnail_medium,n(i,t)})},this.muteVideo=function(){u.ready().then(function(){u.setVolume(0)})}}function UGYoutubeAPI(){this.isAPILoaded=!1;var a,s,i=this,l=null,u=!1,t=jQuery(this),n=-1,d=new UGFunctions,_={video_youtube_showinfo:!0};function g(e,t,i,n,r,o){l&amp;&amp;u&amp;&amp;l.destroy();var a={controls:1,showinfo:_.video_youtube_showinfo,start:0,rel:0};!0===r&amp;&amp;(a.autoplay=1);o=d.getVal(o,"start");o&amp;&amp;jQuery.isNumeric(o)&amp;&amp;(a.start=o),u=!1,l=new YT.Player(e,{height:n,width:i,videoId:t,playerVars:a,events:{onReady:h,onStateChange:p}}),s=e}function c(){return"undefined"!=typeof YT&amp;&amp;void 0!==YT.Player}function h(){u=!0,1==l.muted&amp;&amp;l.mute()}function p(){if("function"!=typeof l.getPlayerState)return trace("Youtube API error: can't get player state"),!1;var e=l.getPlayerState();switch(e){case YT.PlayerState.PLAYING:t.trigger(i.events.START_PLAYING);break;case YT.PlayerState.ENDED:t.trigger(i.events.STOP_PLAYING),t.trigger(i.events.VIDEO_ENDED);break;default:n==YT.PlayerState.PLAYING&amp;&amp;t.trigger(i.events.STOP_PLAYING)}n=e}this.events={START_PLAYING:"start_playing",STOP_PLAYING:"stop_playing",VIDEO_ENDED:"video_ended"},this.setOptions=function(e){_=jQuery.extend(_,e)},this.putVideo=function(e,t,i,n,r,o){if(c())return g(e,t,i,n,r,o),!0;this.loadAPI(),a=setInterval(function(){c()&amp;&amp;(g(e,t,i,n,r,o),clearInterval(a))},500)},this.loadAPI=function(e){return 1==g_ugYoutubeAPI.isAPILoaded||("undefined"!=typeof YT?g_ugYoutubeAPI.isAPILoaded=!0:(!0!==e&amp;&amp;g_ugFunctions.loadJs("https://www.youtube.com/player_api",!1),void(g_ugYoutubeAPI.isAPILoaded=!0)))},this.doCommand=function(e,t){if(!l)return!0;if(0==u)return!1;switch(e){case"play":if("function"!=typeof l.playVideo)return!1;l.playVideo();break;case"pause":if("function"!=typeof l.pauseVideo)return!1;l.pauseVideo();break;case"seek":if("function"!=typeof l.seekTo)return!1;l.seekTo(t);break;case"stopToBeginning":var i=l.getPlayerState();switch(l.pauseVideo(),i){case YT.PlayerState.PLAYING:case YT.PlayerState.ENDED:case YT.PlayerState.PAUSED:l.seekTo(0)}}},this.play=function(){i.doCommand("play")},this.pause=function(){i.doCommand("pause")},this.destroy=function(){try{l&amp;&amp;(u=!1,l.clearVideo(),l.destroy())}catch(e){jQuery("#"+s).html("")}},this.stopToBeginning=function(){i.doCommand("stopToBeginning")},this.changeVideo=function(e,t){if(0==i.isPlayerReady())return!1;if(!l)return!1;if(t&amp;&amp;1==t)l.loadVideoById(e,0,"large");else{if(void 0===l.cueVideoById)return!1;l.cueVideoById(e,0,"large")}},this.isPlayerReady=function(){return!(!u||!l)},this.getVideoImages=function(e){var t={};return t.preview="https://i.ytimg.com/vi/"+e+"/sddefault.jpg",t.thumb="https://i.ytimg.com/vi/"+e+"/default.jpg",t},this.muteVideo=function(){l.muted=!0}}function UGVideoPlayer(){var n,i,r,o,a,s,l,u,d,t=this,e=jQuery(this),_=new UGFunctions,g=new UGYoutubeAPI,c=new UGVimeoAPI,h=new UGHtml5MediaAPI,p=new UGSoundCloudAPI,m=new UGWistiaAPI,f=new UGIframeAPI,b=null,v={video_enable_closebutton:!0},y={standAloneMode:!(this.events={SHOW:"video_show",HIDE:"video_hide",PLAY_START:"video_play_start",PLAY_STOP:"video_play_stop",VIDEO_ENDED:"video_ended"}),youtubeInnerID:"",vimeoPlayerID:"",html5PlayerID:"",wistiaPlayerID:"",iframePlayerID:"",soundCloudPlayerID:""};function w(){t.hide()}function I(){e.trigger(t.events.PLAY_START),s&amp;&amp;s.hide()}function E(){e.trigger(t.events.PLAY_STOP),s&amp;&amp;s.show()}function T(){e.trigger(t.events.VIDEO_ENDED)}function x(e){var t,i=["youtube","vimeo","html5","soundcloud","wistia","iframe"];for(t in i){var n=i[t];if(n!=e)switch(n){case"youtube":g.pause(),g.destroy(),r.hide();break;case"vimeo":c.pause(),c.destroy(),o.hide();break;case"html5":h.pause(),a.hide();break;case"soundcloud":p.pause(),p.destroy(),l.hide();break;case"wistia":m.pause(),u.hide();break;case"iframe":f.pause(),d.hide()}}}this.init=function(e,t,i){if(!(n=i))throw new Error("missing gallery ID for video player, it's a must!");v=jQuery.extend(v,e),g.setOptions(v),t&amp;&amp;1==t&amp;&amp;(y.standAloneMode=!0)},this.setHtml=function(e){y.youtubeInnerID=n+"_youtube_inner",y.vimeoPlayerID=n+"_videoplayer_vimeo",y.html5PlayerID=n+"_videoplayer_html5",y.wistiaPlayerID=n+"_videoplayer_wistia",y.iframePlayerID=n+"_videoplayer_iframe",y.soundCloudPlayerID=n+"_videoplayer_soundcloud";var t="&lt;div class='ug-videoplayer' style='display:none'&gt;";t+="&lt;div class='ug-videoplayer-wrapper ug-videoplayer-youtube' style='display:none'&gt;&lt;div id='"+y.youtubeInnerID+"'&gt;&lt;/div&gt;&lt;/div&gt;",t+="&lt;div id='"+y.vimeoPlayerID+"' class='ug-videoplayer-wrapper ug-videoplayer-vimeo' style='display:none'&gt;&lt;/div&gt;",t+="&lt;div id='"+y.html5PlayerID+"' class='ug-videoplayer-wrapper ug-videoplayer-html5'&gt;&lt;/div&gt;",t+="&lt;div id='"+y.soundCloudPlayerID+"' class='ug-videoplayer-wrapper ug-videoplayer-soundcloud'&gt;&lt;/div&gt;",t+="&lt;div id='"+y.wistiaPlayerID+"' class='ug-videoplayer-wrapper ug-videoplayer-wistia'&gt;&lt;/div&gt;",t+="&lt;div id='"+y.iframePlayerID+"' class='ug-videoplayer-wrapper ug-videoplayer-iframe'&gt;&lt;/div&gt;",0==y.standAloneMode&amp;&amp;1==v.video_enable_closebutton&amp;&amp;(t+="&lt;div class='ug-videoplayer-button-close'&gt;&lt;/div&gt;"),t+="&lt;/div&gt;",e.append(t),i=e.children(".ug-videoplayer"),r=i.children(".ug-videoplayer-youtube"),o=i.children(".ug-videoplayer-vimeo"),a=i.children(".ug-videoplayer-html5"),l=i.children(".ug-videoplayer-soundcloud"),u=i.children(".ug-videoplayer-wistia"),d=i.children(".ug-videoplayer-iframe"),0==y.standAloneMode&amp;&amp;1==v.video_enable_closebutton&amp;&amp;(s=i.children(".ug-videoplayer-button-close"))},this.destroy=function(){s&amp;&amp;(s.off("click"),s.off("touchend")),jQuery(g).off(g.events.START_PLAYING),jQuery(g).off(g.events.STOP_PLAYING),jQuery(c).off(c.events.START_PLAYING),jQuery(c).off(c.events.STOP_PLAYING),jQuery(h).off(h.events.START_PLAYING),jQuery(h).off(h.events.STOP_PLAYING),jQuery(p).off(p.events.START_PLAYING,I),jQuery(p).off(p.events.STOP_PLAYING,E),jQuery(m).off(m.events.START_PLAYING,I),jQuery(m).off(m.events.STOP_PLAYING,E),jQuery(f).off(f.events.START_PLAYING,I),jQuery(f).off(f.events.STOP_PLAYING,E),b=null},this.initEvents=function(){s&amp;&amp;(_.setButtonMobileReady(s),_.setButtonOnClick(s,w)),jQuery(g).on(g.events.START_PLAYING,I),jQuery(g).on(g.events.STOP_PLAYING,E),jQuery(g).on(g.events.VIDEO_ENDED,T),jQuery(c).on(c.events.START_PLAYING,I),jQuery(c).on(c.events.STOP_PLAYING,E),jQuery(c).on(c.events.VIDEO_ENDED,T),jQuery(h).on(h.events.START_PLAYING,I),jQuery(h).on(h.events.STOP_PLAYING,E),jQuery(h).on(h.events.VIDEO_ENDED,T),jQuery(p).on(p.events.START_PLAYING,I),jQuery(p).on(p.events.STOP_PLAYING,E),jQuery(p).on(p.events.VIDEO_ENDED,T),jQuery(m).on(m.events.START_PLAYING,I),jQuery(m).on(m.events.STOP_PLAYING,E),jQuery(m).on(m.events.VIDEO_ENDED,T),jQuery(f).on(f.events.START_PLAYING,I),jQuery(f).on(f.events.STOP_PLAYING,E),jQuery(f).on(f.events.VIDEO_ENDED,T)},this.setSize=function(e,t){_.setElementSize(i,e,t),s&amp;&amp;_.placeElement(s,"right","top")},this.setPosition=function(e,t){_.placeElement(i,e,t)},this.getObject=function(){return i},this.show=function(){if(1==t.isVisible())return!0;i.show(),i.fadeTo(0,1),s&amp;&amp;s.show(),e.trigger(t.events.SHOW)},this.hide=function(){if(0==t.isVisible())return!0;x(),b=null,i.hide(),e.trigger(t.events.HIDE)},this.getActiveAPI=function(){switch(b){case"youtube":return g;case"vimeo":return c;case"wistia":return m;case"iframe":return f;case"soundcloud":return p;case"html5":return h;default:return null}},this.pause=function(){var e=t.getActiveAPI();if(null==e)return!1;"function"==typeof e.pause&amp;&amp;e.pause()},this.isVisible=function(){return i.is(":visible")},this.playYoutube=function(e,t,i){void 0===t&amp;&amp;(t=!0),i=i||null,x("youtube"),r.show(),0==r.children("#"+y.youtubeInnerID).length&amp;&amp;r.append("&lt;div id='"+y.youtubeInnerID+"'&gt;&lt;/div&gt;");var n={};i&amp;&amp;(n.start=i),1==g.isPlayerReady()&amp;&amp;1==y.standAloneMode?g.changeVideo(e,t):g.putVideo(y.youtubeInnerID,e,"100%","100%",t,n),b="youtube"},this.muteVideoYoutube=function(){g.muteVideo()},this.playVimeo=function(e,t){void 0===t&amp;&amp;(t=!0),x("vimeo"),o.show(),c.putVideo(y.vimeoPlayerID,e,"100%","100%",t),b="vimeo"},this.muteVideoVimeo=function(){c.muteVideo()},this.playHtml5Video=function(e,t,i,n,r){void 0===r&amp;&amp;(r=!0),x("html5"),a.show();n={ogv:e,webm:t,mp4:i,posterImage:n};h.putVideo(y.html5PlayerID,n,"100%","100%",r),b="html5"},this.muteVideoHtml5=function(){h.muteVideo()},this.playSoundCloud=function(e,t){void 0===t&amp;&amp;(t=!0),x("soundcloud"),l.show(),p.putSound(y.soundCloudPlayerID,e,"100%","100%",t),b="soundcloud"},this.playWistia=function(e,t){void 0===t&amp;&amp;(t=!0),x("wistia"),u.show(),m.putVideo(y.wistiaPlayerID,e,"100%","100%",t),b="wistia"},this.muteVideoWistia=function(){m.muteVideo()},this.playIframe=function(e){x("iframe"),d.show(),f.putVideo(y.iframePlayerID,"100%","100%",e),b="iframe"}}var g_ugYoutubeAPI=new UGYoutubeAPI,g_ugVimeoAPI=new UGVimeoAPI,g_ugHtml5MediaAPI=new UGHtml5MediaAPI,g_ugSoundCloudAPI=new UGSoundCloudAPI,g_ugWistiaAPI=new UGWistiaAPI,g_ugIframeAPI=new UGIframeAPI;function ugCheckForMinJQueryVersion(){if(0==g_ugFunctions.checkMinJqueryVersion("1.8.0"))throw new Error("The gallery can run from jquery 1.8 You have jQuery "+jQuery.fn.jquery+" Please update your jQuery library.")}function ugCheckForErrors(t,i){try{"jquery"==i?(function(){if("undefined"==typeof jQuery)throw new Error("jQuery library not included")}(),ugCheckForMinJQueryVersion()):(ugCheckForMinJQueryVersion(),function(){if("function"!=typeof jQuery.fn.unitegallery){var e="You have some jquery.js library include that comes after the gallery files js include.";throw e+="&lt;br&gt; This include eliminates the gallery libraries, and make it not work.","cms"==i?(e+="&lt;br&gt;&lt;br&gt; To fix it you can:&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1. In the Gallery Settings -&gt; Troubleshooting set option:  &lt;strong&gt;&lt;b&gt;Put JS Includes To Body&lt;/b&gt;&lt;/strong&gt; option to true.",e+="&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; 2. Find the double jquery.js include and remove it."):e+="&lt;br&gt;&lt;br&gt; Please find and remove this jquery.js include and the gallery will work. &lt;br&gt; * There should be only one jquery.js include before all other js includes in the page.",new Error(e)}}())}catch(e){var n,r=e.message;return r="&lt;div style='font-size:16px;color:#BC0C06;max-width:900px;border:1px solid red;padding:10px;'&gt;"+(r="Unite Gallery Error: "+r)+"&lt;/div&gt;","jquery"==i?((n=document.getElementById(t)).innerHTML=r,n.style.display="block"):jQuery(t).show().html(r),!1}return!0}function UniteGalleryMain(){var t=this,g_galleryID,g_objGallery=jQuery(t),g_objWrapper,g_objParent,g_objThumbs,g_objSlider,g_objLightbox,g_functions=new UGFunctions,g_objTabs,g_objLoadMore,g_arrItems=[],g_numItems,g_selectedItem=null,g_selectedItemIndex=-1,g_objTheme,g_objCache={};this.events={ITEM_CHANGE:"item_change",SIZE_CHANGE:"size_change",ENTER_FULLSCREEN:"enter_fullscreen",EXIT_FULLSCREEN:"exit_fullscreen",START_PLAY:"start_play",STOP_PLAY:"stop_play",PAUSE_PLAYING:"pause_playing",CONTINUE_PLAYING:"continue_playing",SLIDER_ACTION_START:"slider_action_start",SLIDER_ACTION_END:"slider_action_end",ITEM_IMAGE_UPDATED:"item_image_updated",GALLERY_KEYPRESS:"gallery_keypress",GALLERY_BEFORE_REQUEST_ITEMS:"gallery_before_request_items",OPEN_LIGHTBOX:"open_lightbox",CLOSE_LIGHTBOX:"close_lightbox"};var g_options={gallery_width:900,gallery_height:500,gallery_height_mobile:null,gallery_min_width:150,gallery_min_height:100,gallery_theme:"default",gallery_skin:"default",gallery_images_preload_type:"minimal",gallery_autoplay:!1,gallery_play_interval:3e3,gallery_pause_on_mouseover:!0,gallery_mousewheel_role:"zoom",gallery_control_keyboard:!0,gallery_carousel:!0,gallery_preserve_ratio:!0,gallery_background_color:"",gallery_debug_errors:!1,gallery_shuffle:!1,gallery_urlajax:null,gallery_enable_tabs:!1,gallery_enable_loadmore:!1,gallery_enable_cache:!0,gallery_initial_catid:"",load_api_externally:!1},g_temp={objCustomOptions:{},isAllItemsPreloaded:!1,isFreestyleMode:!1,lastWidth:0,lastHeigh:0,handleResize:null,isInited:!1,isPlayMode:!1,isPlayModePaused:!1,playTimePassed:0,playTimeLastStep:0,playHandle:"",playStepInterval:33,objProgress:null,isFakeFullscreen:!1,thumbsType:null,isYoutubePresent:!1,isVimeoPresent:!1,isHtml5VideoPresent:!1,isIframeVideoPresent:!1,isSoundCloudPresent:!1,isWistiaPresent:!1,resizeDelay:100,isRunFirstTime:!0,originalOptions:{},funcCustomHeight:null};function __________INIT_GALLERY_______(){}function getThemeFunction(e){return-1==e.indexOf("UGTheme_")&amp;&amp;(e="UGTheme_"+e),e}function initTheme(objCustomOptions){var defaultTheme;objCustomOptions.hasOwnProperty("gallery_theme")?g_options.gallery_theme=objCustomOptions.gallery_theme:(defaultTheme=g_options.gallery_theme,0==g_ugFunctions.isThemeRegistered(defaultTheme)&amp;&amp;(g_options.gallery_theme=g_ugFunctions.getFirstRegisteredTheme()));var themeFunction=getThemeFunction(g_options.gallery_theme);try{g_options.gallery_theme=eval(themeFunction)}catch(e){}g_options.gallery_theme=eval(themeFunction),g_objTheme=new g_options.gallery_theme,g_objTheme.init(t,objCustomOptions)}function resetOptions(){g_options=jQuery.extend({},g_temp.originalOptions),g_selectedItemIndex=-1,g_selectedItem=null,g_objLightbox=g_objThumbs=g_objSlider=void 0}function checkForStartupErrors(){try{ugCheckForMinJQueryVersion()}catch(e){throwErrorShowMessage(e.message)}"object"==typeof g_objWrapper.outerWidth()&amp;&amp;throwErrorShowMessage("You have some buggy script. most chances jquery-ui.js that destroy jquery outerWidth, outerHeight functions. The gallery can't run. Please update jquery-ui.js to latest version."),setTimeout(function(){ugCheckForErrors(g_galleryID,"cms")},5e3)}function runGallery(e,i,n,r){var o="object"==typeof i;if(o&amp;&amp;(g_temp.objCustomOptions=i),1==g_temp.isRunFirstTime){if(g_galleryID=e,0==(g_objWrapper=jQuery(g_galleryID)).length)return void trace("div with id: "+g_galleryID+" not found");g_objParent=g_objWrapper.parent(),checkForStartupErrors(),g_temp.originalOptions=jQuery.extend({},g_options),o&amp;&amp;(g_options=jQuery.extend(g_options,i)),1==g_options.gallery_enable_cache&amp;&amp;g_options.gallery_initial_catid&amp;&amp;cacheItems(g_options.gallery_initial_catid),t.setSizeClass(),fillItemsArray(g_objWrapper.children()),loadAPIs(),g_objWrapper.find("img").fadeTo(0,0).hide(),g_objWrapper.show(),clearInitData()}else if(t.destroy(),resetOptions(),g_options=jQuery.extend(g_options,g_temp.objCustomOptions),n){if(r&amp;&amp;1==g_options.gallery_enable_cache&amp;&amp;cacheItems(r,n),"noitems"==n)return void showErrorMessage("No items in this category","");g_objWrapper.html(n),fillItemsArray(g_objWrapper.children()),loadAPIs(),g_objWrapper.children().fadeTo(0,0).hide(),g_objWrapper.show(),clearInitData()}1==g_temp.isRunFirstTime&amp;&amp;1==g_options.gallery_enable_tabs&amp;&amp;(g_objTabs=new UGTabs).init(t,g_options),1==g_temp.isRunFirstTime&amp;&amp;1==g_options.gallery_enable_loadmore&amp;&amp;(g_objLoadMore=new UGLoadMore).init(t,g_options),o&amp;&amp;modifyInitParams(g_temp.objCustomOptions),validateParams(),1==g_options.gallery_shuffle&amp;&amp;t.shuffleItems(),initTheme(g_temp.objCustomOptions),setGalleryHtml(),setHtmlObjectsProperties(),0==g_objWrapper.width()?g_functions.waitForWidth(g_objWrapper,runGalleryActually):runGalleryActually()}function runGalleryActually(){t.setSizeClass(),0==g_temp.isFreestyleMode&amp;&amp;1==g_options.gallery_preserve_ratio&amp;&amp;setHeightByOriginalRatio(),g_objTheme.run(),g_objTabs&amp;&amp;g_temp.isRunFirstTime&amp;&amp;g_objTabs.run(),preloadBigImages(),initEvents(),0&lt;g_numItems&amp;&amp;t.selectItem(0),1==g_options.gallery_autoplay&amp;&amp;t.startPlayMode(),g_temp.isRunFirstTime=!1}function showErrorMessage(e,t){e="&lt;div class='ug-error-message-wrapper'&gt;&lt;div class='ug-error-message'&gt;"+(e=(t=void 0===t?"&lt;b&gt;Unite Gallery Error: &lt;/b&gt;":"&lt;b&gt;"+t+": &lt;/b&gt;")+e)+"&lt;/div&gt;&lt;/div&gt;";g_objWrapper.children().remove(),g_objWrapper.html(e),g_objWrapper.show()}function throwErrorShowMessage(e){throw showErrorMessage(e),new Error(e)}function modifyInitParams(){g_options.gallery_images_preload_type||(g_options.gallery_images_preload_type="minimal"),(null==g_options.gallery_min_height||g_options.gallery_height&lt;g_options.gallery_min_height)&amp;&amp;(g_options.gallery_min_height=0),(null==g_options.gallery_min_width||g_options.gallery_width&lt;g_options.gallery_min_width)&amp;&amp;(g_options.gallery_min_width=0)}function validateParams(){if(!g_options.gallery_theme)throw new Error("The gallery can't run without theme");if(jQuery.isNumeric(g_options.gallery_height)&amp;&amp;g_options.gallery_height&lt;g_options.gallery_min_height)throw new Error("The &lt;b&gt;gallery_height&lt;/b&gt; option must be bigger then &lt;b&gt;gallery_min_height option&lt;/b&gt;");if(g_options.gallery_width&lt;g_options.gallery_min_width)throw new Error("The &lt;b&gt;gallery_width&lt;/b&gt; option must be bigger then &lt;b&gt;gallery_min_width option&lt;/b&gt;")}function setGalleryHtml(){g_objWrapper.addClass("ug-gallery-wrapper"),g_objWrapper.append("&lt;div class='ug-overlay-disabled' style='display:none'&gt;&lt;/div&gt;"),t.setSizeClass()}function clearInitData(){g_objWrapper.children().remove()}function storeLastSize(){var e=t.getSize();g_temp.lastWidth=e.width,g_temp.lastHeight=e.height}function setHeightByOriginalRatio(){var e=t.getSize();e.width/e.height!=e.orig_ratio&amp;&amp;(e=e.width/e.orig_ratio,(e=Math.round(e))&lt;g_options.gallery_min_height&amp;&amp;(e=g_options.gallery_min_height),g_objWrapper.height(e))}function setHtmlObjectsProperties(){var e,i={"max-width":g_functions.getCssSizeParam(g_options.gallery_width),"min-width":g_functions.getCssSizeParam(g_options.gallery_min_width)};0==g_temp.isFreestyleMode?(e=g_functions.getCssSizeParam(g_options.gallery_height),1==t.isMobileMode()&amp;&amp;g_options.gallery_height_mobile&amp;&amp;(e=g_functions.getCssSizeParam(g_options.gallery_height_mobile)),i.height=e):i.overflow="visible",g_options.gallery_background_color&amp;&amp;(i["background-color"]=g_options.gallery_background_color),g_objWrapper.css(i)}function fillItemByChild(e){var i=t.isMobileMode(),n=e.prop("tagName").toLowerCase();if("noscript"==n)return null;if("picture"==n){var r=e.find("img");if(0==r.length)return null;e=r,n="img"}var o=e.data("lazy-src");o&amp;&amp;e.attr("src",o);var a="";if("a"==n){a=e.attr("href");var s=e.children();if(0==(e=e.find("img")).length)return null;n="img"}var l=e.data("type");null==l&amp;&amp;(l="image");var u={};if(u.type=l,"img"==n){var d="lazyload-src",_=e.data(d);_||(d="lazy-src",_=e.data(d)),_||(d="src",_=e.data(d)),_&amp;&amp;""!=_&amp;&amp;(e.attr("src",_),jQuery.removeData(e,d));r=e.data("image"),o=e.data("thumb"),_=e.data("title");void 0===r&amp;&amp;(r=null),void 0===o&amp;&amp;(o=null);d=e.attr("src"),r=r||d;o=(o=o||d)||r,r=r||o,o&amp;&amp;-1!==o.indexOf("data:image")&amp;&amp;(o=r),u.urlThumb=o,u.urlImage=r,u.title=e.attr("alt"),_&amp;&amp;(u.title=_),u.objThumbImage=e,u.objThumbImage.attr("src",u.urlThumb)}else{if("image"==l)throw trace("Problematic gallery item found:"),trace(e),trace("Please look for some third party js script that could add this item to the gallery"),new Error("The item should not be image type");u.urlThumb=e.data("thumb"),u.title=e.data("title"),u.objThumbImage=null,u.urlImage=e.data("image")}1==i&amp;&amp;(void 0!==(g=e.data("thumb-mobile"))&amp;&amp;""!=g&amp;&amp;(u.urlThumb=g,"img"==n&amp;&amp;e.attr("src",u.urlThumb)),void 0!==(g=e.data("image-mobile"))&amp;&amp;""!=g&amp;&amp;(u.urlImage=g)),u.link=a,u.description=e.attr("title"),u.description||(u.description=e.data("description")),u.description||(u.description=""),u.isNewAdded=!1,u.isLoaded=!1,u.isThumbImageLoaded=!1,u.objPreloadImage=null,u.isBigImageLoadStarted=!1,u.isBigImageLoaded=!1,u.isBigImageLoadError=!1,u.imageWidth=0,u.imageHeight=0,u.thumbWidth=0,u.thumbHeight=0,u.thumbRatioByWidth=0,u.thumbRatioByHeight=0;var g=e.data("width"),a=e.data("height");g&amp;&amp;"number"==typeof g&amp;&amp;a&amp;&amp;"number"==typeof a&amp;&amp;(u.thumbWidth=g,u.thumbHeight=a,u.thumbRatioByWidth=g/a,u.thumbRatioByHeight=a/g);var c=(u.addHtml=null)==u.urlImage||""==u.urlImage,h=null==u.urlThumb||""==u.urlThumb;switch(u.type){case"youtube":u.videoid=e.data("videoid"),u.video_start=e.data("start"),(c||h)&amp;&amp;(p=g_ugYoutubeAPI.getVideoImages(u.videoid),c&amp;&amp;(u.urlImage=p.preview),h&amp;&amp;(u.urlThumb=p.thumb,"img"==n&amp;&amp;e.attr("src",u.urlThumb))),g_temp.isYoutubePresent=!0;break;case"vimeo":u.videoid=e.data("videoid"),g_temp.isVimeoPresent=!0;break;case"html5video":u.videoogv=e.data("videoogv"),u.videowebm=e.data("videowebm"),u.videomp4=e.data("videomp4"),g_temp.isHtml5VideoPresent=!0;break;case"soundcloud":u.trackid=e.data("trackid"),g_temp.isSoundCloudPresent=!0;break;case"wistia":u.videoid=e.data("videoid"),g_temp.isWistiaPresent=!0;break;case"iframe":u.videoUrl=e.data("videourl"),g_temp.isIframeVideoPresent=!0;break;case"custom":var p=e.children("img");p.length&amp;&amp;(p=jQuery(p[0]),u.urlThumb=p.attr("src"),u.title=p.attr("alt"),u.objThumbImage=p),(s=e.children().not("img:first-child")).length&amp;&amp;(u.addHtml=s.clone())}return u.objThumbImage&amp;&amp;(u.objThumbImage.removeAttr("data-description",""),u.objThumbImage.removeAttr("data-image",""),u.objThumbImage.removeAttr("data-thumb",""),u.objThumbImage.removeAttr("title","")),u}function fillItemsArray(e,t){if(!0!==t)g_arrItems=[];else for(var i=0;i&lt;g_numItems;i++)g_arrItems[i].isNewAdded=!1;for(i=0;i&lt;e.length;i++){var n,r=jQuery(e[i]),o=fillItemByChild(r);null!==o?(n=g_arrItems.length,o.index=n,!0===t&amp;&amp;(o.isNewAdded=!0),g_arrItems.push(o)):r.remove()}g_numItems=g_arrItems.length}function loadAPIs(){var e=g_options.load_api_externally;g_temp.isYoutubePresent&amp;&amp;g_ugYoutubeAPI.loadAPI(e),g_temp.isVimeoPresent&amp;&amp;g_ugVimeoAPI.loadAPI(e),g_temp.isHtml5VideoPresent&amp;&amp;g_ugHtml5MediaAPI.loadAPI(e),g_temp.isSoundCloudPresent&amp;&amp;g_ugSoundCloudAPI.loadAPI(e),g_temp.isWistiaPresent&amp;&amp;g_ugWistiaAPI.loadAPI(e),g_temp.isIframeVideoPresent&amp;&amp;g_ugIframeAPI.loadAPI(e)}function preloadBigImages(){if("visible"!=g_options.gallery_images_preload_type||g_objThumbs||(g_options.gallery_images_preload_type="minimal"),1==g_temp.isAllItemsPreloaded)return 1;switch(g_options.gallery_images_preload_type){default:case"minimal":break;case"all":jQuery(g_arrItems).each(function(){preloadItemImage(this)});break;case"visible":jQuery(g_arrItems).each(function(){1==g_objThumbs.isItemThumbVisible(this)&amp;&amp;preloadItemImage(this)})}}function checkPreloadItemImage(e){if(1!=e.isBigImageLoadStarted&amp;&amp;1!=e.isBigImageLoaded&amp;&amp;1!=e.isBigImageLoadError)switch(g_options.gallery_images_preload_type){default:case"minimal":break;case"all":preloadItemImage(e);break;case"visible":1==g_objThumbs.isItemThumbVisible(e)&amp;&amp;preloadItemImage(e)}}function preloadItemImage(e){if(1==e.isBigImageLoadStarted||1==e.isBigImageLoaded||1==e.isBigImageLoadError)return 1;var i=e.urlImage;""!=i&amp;&amp;null!=i?(e.isBigImageLoadStarted=!0,e.objPreloadImage=jQuery("&lt;img/&gt;").attr("src",i),e.objPreloadImage.data("itemIndex",e.index),e.objPreloadImage.on("load",t.onItemBigImageLoaded),e.objPreloadImage.on("error",function(){var e=jQuery(this).data("itemIndex"),i=g_arrItems[e];i.isBigImageLoadError=!0,i.isBigImageLoaded=!1;var n=jQuery(this).attr("src");console.log("Can't load image: "+n),g_objGallery.trigger(t.events.ITEM_IMAGE_UPDATED,[e,i.urlImage]),i.objThumbImage.attr("src",i.urlThumb)}),checkAllItemsStartedPreloading()):e.isBigImageLoadError=!0}function preloadNearBigImages(e){if(1!=g_temp.isAllItemsPreloaded){if(!(e=e||g_selectedItem))return 1;var t=e.index,e=t-1,t=t+1;0&lt;e&amp;&amp;preloadItemImage(g_arrItems[e]),t&lt;g_numItems&amp;&amp;preloadItemImage(g_arrItems[t])}}function checkAllItemsStartedPreloading(){if(1!=g_temp.isAllItemsPreloaded){for(var e in g_arrItems)if(0==g_arrItems[e].isBigImageLoadStarted)return;g_temp.isAllItemsPreloaded=!0}}function __________END_INIT_GALLERY_______(){}function __________EVENTS_____________(){}function onSliderMouseEnter(e){1==g_options.gallery_pause_on_mouseover&amp;&amp;0==t.isFullScreen()&amp;&amp;1==g_temp.isPlayMode&amp;&amp;g_objSlider&amp;&amp;0==g_objSlider.isSlideActionActive()&amp;&amp;t.pausePlaying()}function onSliderMouseLeave(e){1==g_options.gallery_pause_on_mouseover&amp;&amp;1==g_temp.isPlayMode&amp;&amp;g_objSlider&amp;&amp;0==g_objSlider.isSlideActionActive()&amp;&amp;0==g_objSlider.isCurrentSlideLoadingImage()&amp;&amp;t.continuePlaying()}function isThisGalleryForKeyAction(){if(!window.ugArrGalleriesObjects)return!0;window.ugArrGalleriesObjects.length;if(1==window.ugArrGalleriesObjects.length)return!0;var n,r=0,o=t.getGalleryID();return jQuery.each(window.ugArrGalleriesObjects,function(e,t){var i=t.getGalleryID(),t=t.getKeyPressScore();r&lt;t&amp;&amp;(r=t),i==o&amp;&amp;(n=t)}),n==r}function onKeyPress(e){var i=jQuery(e.target);if(i.is("textarea")||i.is("select")||i.is("input"))return!0;var i=e.charCode||e.keyCode||e.which||0,n=!1;switch(i){case 39:1==isThisGalleryForKeyAction()&amp;&amp;(t.nextItem(),n=!0);break;case 37:1==isThisGalleryForKeyAction()&amp;&amp;(t.prevItem(),n=!0);break;default:n=!1}1==n&amp;&amp;(e.preventDefault(),e.stopPropagation(),e.stopImmediatePropagation()),g_objGallery.trigger(t.events.GALLERY_KEYPRESS,[i,e])}function onGalleryResized(){var e,i=t.getSize();if(0==i.width)return!0;t.setSizeClass(),((i=t.getSize()).width!=g_temp.lastWidth||0==g_temp.isFreestyleMode&amp;&amp;i.height!=g_temp.lastHeight)&amp;&amp;(e=!1,!g_temp.funcCustomHeight||(i=g_temp.funcCustomHeight(i))&amp;&amp;(g_objWrapper.height(i),e=!0),0==e&amp;&amp;0==g_temp.isFreestyleMode&amp;&amp;(1==g_options.gallery_preserve_ratio?setHeightByOriginalRatio():g_options.gallery_height_mobile&amp;&amp;setHtmlObjectsProperties()),storeLastSize(),g_objGallery.trigger(t.events.SIZE_CHANGE))}function onThumbsChange(e){"visible"==g_options.gallery_images_preload_type&amp;&amp;0==g_temp.isAllItemsPreloaded&amp;&amp;preloadBigImages()}function onFullScreenChange(){var e=g_functions.isFullScreen(),i=e?t.events.ENTER_FULLSCREEN:t.events.EXIT_FULLSCREEN,n=g_functions.getGlobalData("fullscreenID");if(g_galleryID!==n)return!0;e?g_objWrapper.addClass("ug-fullscreen"):g_objWrapper.removeClass("ug-fullscreen"),g_objGallery.trigger(i),onGalleryResized()}function onItemImageUpdated(e,i){checkPreloadItemImage(t.getItem(i))}function onCurrentSlideImageLoadEnd(){1==t.isPlayMode()&amp;&amp;t.continuePlaying()}function initEvents(){if(g_objWrapper.on("dragstart",function(e){e.preventDefault()}),g_objGallery.on(t.events.ITEM_IMAGE_UPDATED,onItemImageUpdated),g_objThumbs)switch(g_temp.thumbsType){case"strip":jQuery(g_objThumbs).on(g_objThumbs.events.STRIP_MOVE,onThumbsChange);break;case"grid":jQuery(g_objThumbs).on(g_objThumbs.events.PANE_CHANGE,onThumbsChange)}"advance"==g_options.gallery_mousewheel_role&amp;&amp;0==g_temp.isFreestyleMode&amp;&amp;g_objWrapper.on("mousewheel",t.onGalleryMouseWheel),storeLastSize(),jQuery(window).resize(function(){g_objWrapper.css("width","auto"),g_functions.whenContiniousEventOver("gallery_resize",onGalleryResized,g_temp.resizeDelay)}),setTimeout(function(){setInterval(onGalleryResized,2e3)},1e4),g_functions.addFullScreenChangeEvent(onFullScreenChange),g_objSlider&amp;&amp;(jQuery(g_objSlider).on(g_objSlider.events.ITEM_CHANGED,function(){var e=g_objSlider.getCurrentItemIndex();-1!=e&amp;&amp;t.selectItem(e)}),1==g_options.gallery_pause_on_mouseover&amp;&amp;(g_objSlider.getElement().hover(onSliderMouseEnter,onSliderMouseLeave),g_objGallery.on(t.events.ENTER_FULLSCREEN,function(){onSliderMouseLeave()})),retriggerEvent(g_objSlider,g_objSlider.events.ACTION_START,t.events.SLIDER_ACTION_START),retriggerEvent(g_objSlider,g_objSlider.events.ACTION_END,t.events.SLIDER_ACTION_END),jQuery(g_objSlider).on(g_objSlider.events.CURRENTSLIDE_LOAD_END,onCurrentSlideImageLoadEnd)),1==g_options.gallery_control_keyboard&amp;&amp;jQuery(document).keydown(onKeyPress)}function __________GENERAL_______(){}function cacheItems(e,t){var i;t?"noitems"!=(i=t)&amp;&amp;(i=jQuery(t).clone()):i=g_objWrapper.children().clone(),g_objCache[e]=i}function removeAllSizeClasses(e){(e=e||g_objWrapper).removeClass("ug-under-480"),e.removeClass("ug-under-780"),e.removeClass("ug-under-960")}function retriggerEvent(e,t,i){jQuery(e).on(t,function(e){g_objGallery.trigger(i,[this])})}function advanceNextStep(){var e=jQuery.now(),i=e-g_temp.playTimeLastStep;if(g_temp.playTimeLastStep=e,0==t.isGalleryVisible())return!1;g_temp.playTimePassed+=i,g_temp.objProgress&amp;&amp;(i=g_temp.playTimePassed/g_options.gallery_play_interval,g_temp.objProgress.setProgress(i)),g_temp.playTimePassed&gt;=g_options.gallery_play_interval&amp;&amp;(t.nextItem(),g_temp.playTimePassed=0)}function unselectSeletedItem(){if(null==g_selectedItem)return 1;g_objThumbs&amp;&amp;g_objThumbs.setThumbUnselected(g_selectedItem.objThumbWrapper),g_selectedItem=null,g_selectedItemIndex=-1}function toFakeFullScreen(){jQuery("body").addClass("ug-body-fullscreen"),g_objWrapper.addClass("ug-fake-fullscreen"),g_temp.isFakeFullscreen=!0,g_objGallery.trigger(t.events.ENTER_FULLSCREEN),g_objGallery.trigger(t.events.SIZE_CHANGE)}function exitFakeFullscreen(){jQuery("body").removeClass("ug-body-fullscreen"),g_objWrapper.removeClass("ug-fake-fullscreen"),g_temp.isFakeFullscreen=!1,g_objGallery.trigger(t.events.EXIT_FULLSCREEN),g_objGallery.trigger(t.events.SIZE_CHANGE)}this.onItemBigImageLoaded=function(e,t){var i=(t=t||jQuery(this)).data("itemIndex"),i=g_arrItems[i];i.isBigImageLoaded=!0;t=g_functions.getImageOriginalSize(t);i.imageWidth=t.width,i.imageHeight=t.height},this.checkFillImageSize=function(e,t){if(!t){var i=e.data("itemIndex");if(void 0===i)throw new Error("Wrong image given to gallery.checkFillImageSize");t=g_arrItems[i]}e=g_functions.getImageOriginalSize(e);t.imageWidth=e.width,t.imageHeight=e.height},this.setFreestyleMode=function(){g_temp.isFreestyleMode=!0},this.attachThumbsPanel=function(e,t){g_temp.thumbsType=e,g_objThumbs=t},this.initSlider=function(e,i){e=e||{},e=jQuery.extend(g_temp.objCustomOptions,e),(g_objSlider=new UGSlider).init(t,e,i)},this.onGalleryMouseWheel=function(e,i,n,r){e.preventDefault(),0&lt;i?t.prevItem():t.nextItem()},this.getKeyPressScore=function(){if(t.isGalleryInsideScreen())return 1;if(g_objLightbox&amp;&amp;1==g_objLightbox.isOpened())return 2;return 0},this.getGalleryID=function(){return g_galleryID},this.destroy=function(){if(g_objWrapper.off("dragstart"),g_objGallery.off(t.events.ITEM_IMAGE_UPDATED),g_objThumbs)switch(g_temp.thumbsType){case"strip":jQuery(g_objThumbs).off(g_objThumbs.events.STRIP_MOVE);break;case"grid":jQuery(g_objThumbs).off(g_objThumbs.events.PANE_CHANGE)}var e;g_objWrapper.off("mousewheel"),jQuery(window).off("resize"),g_functions.destroyFullScreenChangeEvent(),g_objSlider&amp;&amp;(jQuery(g_objSlider).off(g_objSlider.events.ITEM_CHANGED),(e=g_objSlider.getElement()).off("mouseenter"),e.off("mouseleave"),g_objGallery.off(t.events.ENTER_FULLSCREEN),jQuery(g_objSlider).off(g_objSlider.events.ACTION_START),jQuery(g_objSlider).off(g_objSlider.events.ACTION_END),jQuery(g_objSlider).off(g_objSlider.events.CURRENTSLIDE_LOAD_END)),1==g_options.gallery_control_keyboard&amp;&amp;jQuery(document).off("keydown"),g_objTheme&amp;&amp;"function"==typeof g_objTheme.destroy&amp;&amp;g_objTheme.destroy(),g_objWrapper.html("")},this.getArrItems=function(){return g_arrItems},this.getObjects=function(){return{g_galleryID:g_galleryID,g_objWrapper:g_objWrapper,g_objThumbs:g_objThumbs,g_objSlider:g_objSlider,g_options:g_options,g_arrItems:g_arrItems,g_numItems:g_numItems}},this.getObjSlider=function(){return g_objSlider},this.getItem=function(e){if(e&lt;0)throw new Error("item with index: "+e+" not found");if(g_numItems&lt;=e)throw new Error("item with index: "+e+" not found");return g_arrItems[e]},this.getWidth=function(){return t.getSize().width},this.getHeight=function(){return t.getSize().height},this.getSize=function(){var e=g_functions.getElementSize(g_objWrapper);return e.orig_width=g_options.gallery_width,e.orig_height=g_options.gallery_height,e.orig_ratio=e.orig_width/e.orig_height,e},this.getGalleryID=function(){return g_galleryID.replace("#","")},this.getNextItem=function(e,t){"object"==typeof e&amp;&amp;(e=e.index);e+=1;if(!0!==t&amp;&amp;1==g_numItems)return null;if(g_numItems&lt;=e){if(1!=g_options.gallery_carousel&amp;&amp;!0!==t)return null;e=0}return g_arrItems[e]},this.getPrevItem=function(e){"object"==typeof e&amp;&amp;(e=e.index);--e;if(e&lt;0){if(1!=g_options.gallery_carousel)return null;e=g_numItems-1}return g_arrItems[e]},this.getSelectedItem=function(){return g_selectedItem},this.getSelectedItemIndex=function(){return g_selectedItemIndex},this.getNumItems=function(){return g_numItems},this.isLastItem=function(){return g_selectedItemIndex==g_numItems-1},this.isFirstItem=function(){return 0==g_selectedItemIndex},this.getOptions=function(){return g_options},this.getElement=function(){return g_objWrapper},this.___________SET_CONTROLS___________=function(){},this.setNextButton=function(e){e.data("ug-button",!0),g_functions.setButtonOnClick(e,t.nextItem)},this.setPrevButton=function(e){e.data("ug-button",!0),g_functions.setButtonOnClick(e,t.prevItem)},this.setFullScreenToggleButton=function(e){e.data("ug-button",!0);var i=e.html();g_functions.setButtonOnTap(e,t.toggleFullscreen),g_objGallery.on(t.events.ENTER_FULLSCREEN,function(){e.addClass("ug-fullscreenmode");e.html('&lt;svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"&gt;&lt;g clip-path="url(#clip0_23_15)"&gt;&lt;path d="M15.7799 4.88073L13.945 3.08257L15.7799 1.24771C16.0734 0.954129 16.0734 0.513762 15.7799 0.220184C15.4863 -0.0733945 15.0459 -0.0733945 14.7523 0.220184L12.9542 2.01835L11.156 0.220184C11.0092 0.0733945 10.789 0.0733945 10.6422 0.220184C10.5689 0.293578 10.5322 0.366973 10.5322 0.440367L9.72482 5.87156C9.68812 6.09174 9.8716 6.27523 10.0551 6.27523C10.0918 6.27523 10.0918 6.27523 10.1285 6.27523L15.5597 5.50459C15.7432 5.46789 15.89 5.2844 15.8533 5.10092C15.8533 5.02752 15.8166 4.95413 15.7799 4.88073Z" fill="white"/&gt;&lt;path d="M10.4955 15.5596C10.5321 15.7431 10.7156 15.8899 10.8991 15.8532C10.9725 15.8532 11.0459 15.8165 11.1193 15.7431L12.9175 13.945L14.7156 15.7431C15.0092 16.0367 15.4496 16.0367 15.7432 15.7431C16.0367 15.4495 16.0367 15.0092 15.7432 14.7156L13.945 12.9174L15.7432 11.1193C15.8899 10.9725 15.8899 10.7523 15.7432 10.6055C15.6698 10.5321 15.5964 10.4954 15.523 10.4954L10.0918 9.72478C9.90829 9.68808 9.68811 9.83487 9.68811 10.0184C9.68811 10.0551 9.68811 10.0917 9.68811 10.1284L10.4955 15.5596Z" fill="white"/&gt;&lt;path d="M0.220184 11.1192L2.01835 12.9174L0.220184 14.7156C-0.0733945 15.0091 -0.0733945 15.4495 0.220184 15.7431C0.513762 16.0367 0.954129 16.0367 1.24771 15.7431L3.04587 13.9449L4.84404 15.7431C4.99083 15.8899 5.21101 15.8899 5.3578 15.7431C5.43119 15.6697 5.46789 15.5963 5.46789 15.5229L6.23853 10.0917C6.27523 9.90823 6.12844 9.68805 5.94495 9.68805C5.90826 9.68805 5.87156 9.68805 5.83486 9.68805L0.440367 10.4954C0.256881 10.5321 0.110092 10.7156 0.146789 10.8991C0.110092 10.9725 0.146789 11.0458 0.220184 11.1192Z" fill="white"/&gt;&lt;path d="M1.24771 0.220184C0.954129 -0.0733945 0.513762 -0.0733945 0.220184 0.220184C-0.0733945 0.513762 -0.0733945 0.954129 0.220184 1.24771L2.01835 3.04587L0.220184 4.84404C0.0733945 4.99083 0.0733945 5.21101 0.220184 5.3578C0.256881 5.46789 0.330275 5.50459 0.440367 5.50459L5.87156 6.27523C6.05505 6.31193 6.27523 6.16514 6.27523 5.98165C6.27523 5.94495 6.27523 5.90826 6.27523 5.87156L5.50459 0.440367C5.46789 0.256881 5.2844 0.110092 5.10092 0.146789C5.02752 0.146789 4.95413 0.183486 4.88073 0.256881L3.08257 2.01835L1.24771 0.220184Z" fill="white"/&gt;&lt;/g&gt;&lt;defs&gt;&lt;clipPath id="clip0_23_15"&gt;&lt;rect width="16" height="16" fill="white"/&gt;&lt;/clipPath&gt;&lt;/defs&gt;&lt;/svg&gt;')}),g_objGallery.on(t.events.EXIT_FULLSCREEN,function(){e.removeClass("ug-fullscreenmode"),e.html(i)})},this.destroyFullscreenButton=function(e){g_functions.destroyButton(e),g_objGallery.off(t.events.ENTER_FULLSCREEN),g_objGallery.off(t.events.EXIT_FULLSCREEN)},this.setPlayButton=function(e){e.data("ug-button",!0);var i=e.html();g_functions.setButtonOnClick(e,t.togglePlayMode),g_objGallery.on(t.events.START_PLAY,function(){e.addClass("ug-stop-mode");e.html('&lt;svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="16px" height="16px" viewBox="0 0 16 16"&gt;&lt;g transform="translate(0, 0)"&gt;&lt;path fill="#ffffff" d="M5,1H2C1.4,1,1,1.4,1,2v12c0,0.6,0.4,1,1,1h3c0.6,0,1-0.4,1-1V2C6,1.4,5.6,1,5,1z"&gt;&lt;/path&gt;&lt;path fill="#ffffff" d="M14,1h-3c-0.6,0-1,0.4-1,1v12c0,0.6,0.4,1,1,1h3c0.6,0,1-0.4,1-1V2C15,1.4,14.6,1,14,1z"&gt;&lt;/path&gt;&lt;/g&gt;&lt;/svg&gt;')}),g_objGallery.on(t.events.STOP_PLAY,function(){e.removeClass("ug-stop-mode"),e.html(i)})},this.destroyPlayButton=function(e){g_functions.destroyButton(e),g_objGallery.off(t.events.START_PLAY),g_objGallery.off(t.events.STOP_PLAY)},this.setProgressIndicator=function(e){g_temp.objProgress=e},this.setTextContainers=function(i,n){g_objGallery.on(t.events.ITEM_CHANGE,function(){var e=t.getSelectedItem();i.html(e.title),n.html(e.description)})},this.showDisabledOverlay=function(){g_objWrapper.children(".ug-overlay-disabled").show()},this.hideDisabledOverlay=function(){g_objWrapper.children(".ug-overlay-disabled").hide()},this.___________END_SET_CONTROLS___________=function(){},this.___________PLAY_MODE___________=function(){},this.startPlayMode=function(){var e;g_temp.isPlayMode=!0,g_temp.isPlayModePaused=!1,g_temp.playTimePassed=0,g_temp.playTimeLastStep=jQuery.now(),g_temp.playHandle=setInterval(advanceNextStep,g_temp.playStepInterval),g_temp.objProgress&amp;&amp;(e=g_temp.objProgress.getElement(),g_temp.objProgress.setProgress(0),e.show()),g_objGallery.trigger(t.events.START_PLAY),g_objSlider&amp;&amp;1==g_objSlider.isCurrentSlideLoadingImage()&amp;&amp;t.pausePlaying()},this.resetPlaying=function(){if(0==g_temp.isPlayMode)return!0;g_temp.playTimePassed=0,g_temp.playTimeLastStep=jQuery.now()},this.pausePlaying=function(){if(1==g_temp.isPlayModePaused)return!0;g_temp.isPlayModePaused=!0,clearInterval(g_temp.playHandle),g_objGallery.trigger(t.events.PAUSE_PLAYING)},this.continuePlaying=function(){if(0==g_temp.isPlayModePaused)return!0;g_temp.isPlayModePaused=!1,g_temp.playTimeLastStep=jQuery.now(),g_temp.playHandle=setInterval(advanceNextStep,g_temp.playStepInterval)},this.stopPlayMode=function(){g_temp.isPlayMode=!1,clearInterval(g_temp.playHandle),g_temp.playTimePassed=0,g_temp.objProgress&amp;&amp;g_temp.objProgress.getElement().hide(),g_objGallery.trigger(t.events.STOP_PLAY)},this.isPlayMode=function(){return g_temp.isPlayMode},this.togglePlayMode=function(){0==t.isPlayMode()?t.startPlayMode():t.stopPlayMode()},this.___________GENERAL_EXTERNAL___________=function(){},this.getCurrentNumItem=function(){return g_selectedItemIndex},this.shuffleItems=function(){for(var e in g_arrItems=g_functions.arrayShuffle(g_arrItems))g_arrItems[e].index=parseInt(e)},this.setOptions=function(e){g_options=jQuery.extend(g_options,e)},this.selectItem=function(e,i){"number"==typeof e&amp;&amp;(e=t.getItem(e));var n=e.index;if(n==g_selectedItemIndex)return!0;unselectSeletedItem(),g_selectedItem=e,g_selectedItemIndex=n,g_objGallery.trigger(t.events.ITEM_CHANGE,[e,i]),1==g_temp.isPlayMode&amp;&amp;(t.resetPlaying(),1==g_objSlider.isCurrentSlideLoadingImage()&amp;&amp;t.pausePlaying())},this.nextItem=function(){var e=g_selectedItemIndex+1;return 0==g_numItems||(0==g_options.gallery_carousel&amp;&amp;g_numItems&lt;=e||(g_numItems&lt;=e&amp;&amp;(e=0),void t.selectItem(e,"next")))},this.prevItem=function(){var e=-1==g_selectedItemIndex?0:g_selectedItemIndex-1;return 0==g_numItems||(0==g_options.gallery_carousel&amp;&amp;e&lt;0||(e&lt;0&amp;&amp;(e=g_numItems-1),void t.selectItem(e,"prev")))},this.isFullScreen=function(){return 1==g_temp.isFakeFullscreen||1==g_functions.isFullScreen()},this.isFakeFullscreen=function(){return g_temp.isFakeFullscreen},this.toFullScreen=function(){g_functions.setGlobalData("fullscreenID",g_galleryID);var e=g_objWrapper.get(0);0==g_functions.toFullscreen(e)&amp;&amp;toFakeFullScreen()},this.exitFullScreen=function(){1==g_temp.isFakeFullscreen?exitFakeFullscreen():g_functions.exitFullscreen()},this.toggleFullscreen=function(){0==t.isFullScreen()?t.toFullScreen():t.exitFullScreen()},this.resize=function(e,t,i){g_objWrapper.css("width","auto"),g_objWrapper.css("max-width",e+"px"),t&amp;&amp;g_objWrapper.height(t),i||!0===i||onGalleryResized()},this.setSizeClass=function(e,i){e=e||g_objWrapper,0==(i=i||t.getSize().width)&amp;&amp;(i=jQuery(window).width());var n="";if(i&lt;=480?n="ug-under-480":i&lt;=780?n="ug-under-780":i&lt;960&amp;&amp;(n="ug-under-960"),1==e.hasClass(n))return!0;removeAllSizeClasses(e),""!=n&amp;&amp;e.addClass(n)},this.isMobileMode=function(){return!!g_objWrapper.hasClass("ug-under-780")||!!g_objWrapper.hasClass("ug-under-480")},this.isSmallWindow=function(){var e=jQuery(window).width();return!e||e&lt;=480},this.isGalleryVisible=function(){return g_objWrapper.is(":visible")},this.isGalleryInsideScreen=function(){return 1!=g_temp.isFreestyleMode&amp;&amp;(!!g_objSlider&amp;&amp;g_functions.isElementInsideScreen(g_objWrapper))},this.changeItems=function(e,t){runGallery(g_galleryID,"nochange",e=e||"noitems",t)},this.addItems=function(e){if(!e||0==e.length)return!1;var t=g_objWrapper.children(".ug-newitems-wrapper");if(0==t.length&amp;&amp;g_objWrapper.append("&lt;div class='ug-newitems-wrapper' style='display:none'&gt;&lt;/div&gt;"),(t=g_objWrapper.children(".ug-newitems-wrapper")).append(e),fillItemsArray(jQuery(t.children()),!0),loadAPIs(),!g_objTheme||"function"!=typeof g_objTheme.addItems)throw new Error("addItems function not found in the theme");t.remove(),g_objTheme.addItems()},this.getNewAddedItemsIndexes=function(){var i=[];return jQuery.each(g_arrItems,function(e,t){1==t.isNewAdded&amp;&amp;i.push(e)}),i},this.showErrorMessageReplaceGallery=function(e){showErrorMessage(e)},this.setFuncCustomHeight=function(e){g_temp.funcCustomHeight=e},this.setObjLightbox=function(e){g_objLightbox=e},this.__________EXTERNAL_EVENTS_______=function(){},this.triggerEvent=function(e,t){t?("array"!=jQuery.type(t)&amp;&amp;(t=[t]),g_objGallery.trigger(e,t)):g_objGallery.trigger(e)},this.onEvent=function(e,t){g_objGallery.on(e,t)},this.destroyEvent=function(e){g_objGallery.off(e)},this.__________AJAX_REQUEST_______=function(){},this.ajaxRequest=function(e,t,i,n){if(!i||"function"!=typeof i)throw new Error("ajaxRequest error: success function should be passed");var r=g_options.gallery_urlajax;if(!r||""==r)throw new Error("ajaxRequest error: Ajax url don't passed");void 0===t&amp;&amp;(t={});t={action:"unitegallery_ajax_action",client_action:e,galleryID:g_galleryID,data:t};jQuery.ajax({type:"post",url:g_options.gallery_urlajax,dataType:"json",data:t,success:function(e){if(!e)throw new Error("Empty ajax response!");if(-1==e||0===e)throw new Error("ajax error!!!");if(void 0===e.success)throw new Error("ajax error!!!");if(0==e.success)return showErrorMessage(e.message,"ajax error"),!1;i(e)},error:function(e,t,i){console.log("Ajax Error!!! "+t),responseText=e.responseText,(n&amp;&amp;"function"==typeof n?n:trace)(responseText)}})},this.requestNewItems=function(e,i,n){var r=g_options.gallery_enable_cache;n=n||e,1==i&amp;&amp;(r=!1),1==r&amp;&amp;g_objCache.hasOwnProperty(n)?(r=g_objCache[n],t.changeItems(r,n)):(g_objGallery.trigger(t.events.GALLERY_BEFORE_REQUEST_ITEMS),t.ajaxRequest("front_get_cat_items",{catid:e},function(e){e=e.html;t.changeItems(e,n)}))},this.run=function(e,t){if(t&amp;&amp;t.hasOwnProperty("gallery_debug_errors")&amp;&amp;(g_options.gallery_debug_errors=t.gallery_debug_errors),1==g_options.gallery_debug_errors)try{runGallery(e,t)}catch(e){var i,n,r;"object"==typeof e?(r=e.message,i=e.lineNumber,n=e.fileName,e.stack,r+=" &lt;br&gt;&lt;br&gt; in file: "+n,r+=" &lt;b&gt; line "+i+"&lt;/b&gt;",trace(e)):r=e,showErrorMessage(r=r.replace("Error:",""))}else runGallery(e,t)}}function UGLightbox(){var i,l,n,u,d,_,o,r,a=this,s=jQuery(this),g=new UniteGalleryMain,c=new UGSlider,h=new UGFunctions,p=new UGTextPanel,m={lightbox_type:"wide",lightbox_show_textpanel:!0,lightbox_textpanel_width:550,lightbox_hide_arrows_onvideoplay:!0,lightbox_arrows_position:"sides",lightbox_arrows_offset:10,lightbox_arrows_inside_offset:10,lightbox_arrows_inside_alwayson:!1,lightbox_overlay_color:null,lightbox_overlay_opacity:1,lightbox_top_panel_opacity:null,lightbox_show_numbers:!0,lightbox_numbers_size:null,lightbox_numbers_color:null,lightbox_numbers_padding_top:null,lightbox_numbers_padding_right:null,lightbox_compact_closebutton_offsetx:1,lightbox_compact_closebutton_offsety:1,lightbox_close_on_emptyspace:!0},f={topPanelHeight:44,initTextPanelHeight:26,isOpened:!(this.events={LIGHTBOX_INIT:"lightbox_init"}),isRightNowOpened:!1,putSlider:!0,isCompact:!1,fadeDuration:300,positionFrom:null,textPanelTop:null,textPanelLeft:null,isArrowsInside:!1,isArrowsOnHoverMode:!1,lastMouseX:null,lastMouseY:null,originalOptions:null,isSliderChangedOnce:!1,isTopPanelEnabled:!0},b={lightbox_slider_controls_always_on:!0,lightbox_slider_enable_bullets:!1,lightbox_slider_enable_arrows:!1,lightbox_slider_enable_progress_indicator:!1,lightbox_slider_enable_play_button:!1,lightbox_slider_enable_fullscreen_button:!1,lightbox_slider_enable_zoom_panel:!1,lightbox_slider_enable_text_panel:!1,lightbox_slider_scale_mode_media:"down",lightbox_slider_scale_mode:"down",lightbox_slider_loader_type:3,lightbox_slider_loader_color:"black",lightbox_slider_transition:"fade",lightbox_slider_image_padding_top:f.topPanelHeight,lightbox_slider_image_padding_bottom:0,lightbox_slider_video_padding_top:38,lightbox_slider_video_padding_bottom:0,lightbox_textpanel_align:"middle",lightbox_textpanel_padding_top:5,lightbox_textpanel_padding_bottom:5,slider_video_constantsize:!1,lightbox_slider_image_border:!1,lightbox_textpanel_enable_title:!0,lightbox_textpanel_enable_description:!1,lightbox_textpanel_desc_style_as_title:!0,lightbox_textpanel_enable_bg:!1,video_enable_closebutton:!1,lightbox_slider_video_enable_closebutton:!1,video_youtube_showinfo:!1,lightbox_slider_enable_links:!1},v={lightbox_overlay_opacity:.6,lightbox_slider_image_border:!0,lightbox_slider_image_shadow:!0,lightbox_slider_image_padding_top:30,lightbox_slider_image_padding_bottom:30,slider_video_constantsize:!0,lightbox_textpanel_align:"bottom",lightbox_textpanel_title_text_align:"left",lightbox_textpanel_desc_text_align:"left",lightbox_textpanel_padding_left:10,lightbox_textpanel_padding_right:10};function y(){1==f.isCompact&amp;&amp;1==m.lightbox_show_textpanel&amp;&amp;(m.lightbox_slider_image_padding_bottom=f.initTextPanelHeight),1==f.isCompact&amp;&amp;"inside"==m.lightbox_arrows_position&amp;&amp;(f.isArrowsInside=!0),1==f.isArrowsInside&amp;&amp;0==m.lightbox_arrows_inside_alwayson&amp;&amp;(f.isArrowsOnHoverMode=!0),0==m.lightbox_show_textpanel&amp;&amp;(f.isTopPanelEnabled=!1,f.topPanelHeight=0,m.lightbox_slider_image_padding_top=0)}function w(e){if(!c)return 1;e={slider_image_padding_top:e};c.setOptions(e),c.refreshSlideItems()}function I(){var e,t,i;r&amp;&amp;(!p||0!=(e=r.height())&amp;&amp;0!=r.is(":visible")&amp;&amp;(t=e,i=p.getSize().height,e!=f.topPanelHeight&amp;&amp;(t=f.topPanelHeight),t&lt;i&amp;&amp;(t=i),e!=t&amp;&amp;(r.height(t),c&amp;&amp;0==c.isAnimating()&amp;&amp;w(t))))}function E(e){if(0==f.isOpened)return!1;if(!p)return!1;if(!c)return!1;var t,i=h.getElementSize(l),n=p.getSize();if(0==n.width||120&lt;n.height)return!1;if(e||(t=c.getSlideImage(),e=h.getElementSize(t)),0==e.height||0==e.width)return!1;if(e.bottom+n.height&lt;i.height)return!1;i=c.getOptions(),n=n.height;if(n!=i.slider_image_padding_bottom){n={slider_image_padding_bottom:n};if(0==c.isAnimating())return c.setOptions(n),c.refreshSlideItems(),!0}return!1}function T(e){h.getElementSize(l);var t,i,n=c.getSlideImage(),r=h.getElementSize(n);0!=r.width&amp;&amp;(f.textPanelLeft=r.left,f.textPanelTop=r.bottom,n=r.width,o&amp;&amp;(n-=(t=h.getElementSize(o)).width,t=r.right-t.width,h.placeElement(o,t,f.textPanelTop)),p&amp;&amp;(p.show(),p.refresh(!0,!0,n),(t=r)||(n=c.getSlideImage(),t=h.getElementSize(n)),f.textPanelTop=t.bottom,!0===i&amp;&amp;p.positionPanel(f.textPanelTop,f.textPanelLeft)),0==E(r)&amp;&amp;(f.positionFrom="handleCompactTextpanelSizes",p&amp;&amp;(p.positionPanel(f.textPanelTop,f.textPanelLeft),!0===e&amp;&amp;(e(),N()))))}function x(){return 0==c.isCurrentSlideType("image")||1==c.isCurrentImageInPlace()}function S(e,t){var i,n,r,o,a,s;0!=f.isArrowsInside&amp;&amp;u&amp;&amp;(o=x(),u.show(),d.show(),f.positionFrom="positionArrowsInside",1==f.isArrowsOnHoverMode&amp;&amp;1==o&amp;&amp;0==A()&amp;&amp;M(!0),o=(r=0==o?(i=h.getElementRelativePos(u,"left",m.lightbox_arrows_offset),n=h.getElementRelativePos(u,"middle"),h.getElementRelativePos(d,"right",m.lightbox_arrows_offset)):(a=c.getSlideImage(),s=h.getElementSize(a),h.getElementSize(c.getElement()),i=h.getElementRelativePos(u,"left",0,a)+s.left+m.lightbox_arrows_inside_offset,n=h.getElementRelativePos(u,"middle",0,a)+s.top,h.getElementRelativePos(u,"right",0,a)+s.left-m.lightbox_arrows_inside_offset),n),!0===t?(a={left:i,top:n},s={left:r,top:o},u.stop().animate(a,{duration:f.fadeDuration}),d.stop().animate(s,{duration:f.fadeDuration})):(u.stop(),d.stop(),h.placeElement(u,i,n),h.placeElement(d,r,o)),1==e&amp;&amp;O(t))}function P(e,t){f.positionFrom=null;var i,n,r,o,a=x(),s=h.getElementRelativePos(_,"right",2,l);0==a?(o=2,r=s):(n=c.getSlideImage(),i=h.getElementSize(n),a=h.getElementSize(c.getElement()),n=h.getElementSize(_),a.top==a.height&amp;&amp;(a.top=0),r=a.left+i.right-n.width/2+m.lightbox_compact_closebutton_offsetx,(o=a.top+i.top-n.height/2-m.lightbox_compact_closebutton_offsety)&lt;2&amp;&amp;(o=2),s&lt;r&amp;&amp;(r=s)),!0===t?(s={left:r,top:o},_.stop().animate(s,{duration:f.fadeDuration})):(_.stop(),h.placeElement(_,r,o)),!0===e&amp;&amp;(!0!==t&amp;&amp;_.stop(),_.fadeTo(f.fadeDuration,1))}function t(){_&amp;&amp;_.stop().fadeTo(f.fadeDuration,0),e(),C(),f.positionFrom="hideCompactElements",1==f.isArrowsInside&amp;&amp;M()}function j(){var e,t=h.getElementSize(l);r&amp;&amp;h.setElementSizeAndPosition(r,0,0,t.width,f.topPanelHeight),u&amp;&amp;0==f.isArrowsInside&amp;&amp;(1==m.lightbox_hide_arrows_onvideoplay&amp;&amp;(u.show(),d.show()),h.placeElement(u,"left","middle",m.lightbox_arrows_offset),h.placeElement(d,"right","middle",m.lightbox_arrows_offset)),0==f.isCompact&amp;&amp;h.placeElement(_,"right","top",2,2),p&amp;&amp;(f.positionFrom="positionElements",0==f.isCompact?(e=t,n={},i=m.lightbox_textpanel_width,e.width-47-40&lt;i?(n.textpanel_padding_left=47,n.textpanel_padding_right=40,n.textpanel_title_text_align="center",n.textpanel_desc_text_align="center"):(n.textpanel_padding_left=Math.floor((e.width-i)/2),n.textpanel_padding_right=n.textpanel_padding_left,n.textpanel_title_text_align="left",n.textpanel_desc_text_align="left",m.lightbox_textpanel_title_text_align&amp;&amp;(n.textpanel_title_text_align=m.lightbox_textpanel_desc_text_align),m.lightbox_textpanel_desc_text_align&amp;&amp;(n.textpanel_desc_text_align=m.lightbox_textpanel_desc_text_align)),p.setOptions(n),p.refresh(!0,!0),I(),p.positionPanel()):(L(),N()));var i=t.width,n=t.height;c&amp;&amp;(r&amp;&amp;(t={slider_image_padding_top:r.height()},c.setOptions(t)),c.setSize(i,n),c.setPosition(0,0))}function e(){p&amp;&amp;p.getElement().stop().fadeTo(f.fadeDuration,0)}function C(){o&amp;&amp;o.stop().fadeTo(f.fadeDuration,0)}function A(){if(!f.lastMouseX)return!0;var e={pageX:f.lastMouseX,pageY:f.lastMouseY};return c.isMouseInsideSlideImage(e)}function M(e,t){return u&amp;&amp;(1==f.isArrowsOnHoverMode&amp;&amp;!1===t?(A(),1):void(!0===e?(u.stop().fadeTo(0,0),d.stop().fadeTo(0,0)):(u.stop().fadeTo(f.fadeDuration,0),d.stop().fadeTo(f.fadeDuration,0))))}function O(e,t){return u&amp;&amp;(1==f.isArrowsOnHoverMode&amp;&amp;!0!==t&amp;&amp;1==x()||(1==c.isSwiping()||(!0!==e&amp;&amp;(u.stop(),d.stop()),u.fadeTo(f.fadeDuration,1),void d.fadeTo(f.fadeDuration,1))))}function z(e){p&amp;&amp;(e=e||c.getCurrentItem(),p.setTextPlain(e.title,e.description))}function k(e){var t;o&amp;&amp;(e=e||c.getCurrentItem(),t=g.getNumItems(),e=e.index+1,o.html(e+" / "+t))}function L(){p&amp;&amp;p.getElement().show().stop().fadeTo(f.fadeDuration,1)}function N(){o&amp;&amp;o.stop().fadeTo(f.fadeDuration,1)}function H(){if(0==f.isCompact)return!0;t()}function G(){if(0==f.isCompact)return!0;f.positionFrom="onZoomChange",P(!1,!0),S(!1,!0),1==f.isCompact&amp;&amp;(0==(c.isCurrentSlideType("image")&amp;&amp;1==c.isCurrentImageInPlace())?(e(),C()):(f.positionFrom="onZoomChange",L(),N()))}function R(){if(0==f.isCompact)return!0;f.positionFrom="onSliderAfterReturn",P(!0),S(!0),0==E()&amp;&amp;T(),L(),N()}function D(e,t){return t=jQuery(t),0==f.isCompact||(0==c.isSlideCurrent(t)||(f.positionFrom="onSliderAfterPutImage",P(!0),S(!0),void T()))}function Q(){var e,t=c.getOptions().slider_image_padding_top;!r||(e=r.height())!=t&amp;&amp;w(e),1==f.isCompact&amp;&amp;(z(),k(),f.positionFrom="onSliderTransitionEnd",P(!0),S(!0),0==c.isSlideActionActive()&amp;&amp;0==E()&amp;&amp;T(),L(),N())}function W(e,t){0==f.isCompact?(o&amp;&amp;k(t),p&amp;&amp;(z(t),0==f.isRightNowOpened&amp;&amp;(p.positionElements(!1),I(),p.positionPanel()))):0==c.isAnimating()&amp;&amp;(p&amp;&amp;z(t),o&amp;&amp;k(t)),0==f.isSliderChangedOnce&amp;&amp;(f.isSliderChangedOnce=!0,s.trigger(a.events.LIGHTBOX_INIT))}function B(e,t){return!("image"==c.getSlideType()||0!=f.isCompact||!c.isSlideActionActive())||(1==c.isPreloading()?(a.close("slider"),!0):void(1==m.lightbox_close_on_emptyspace&amp;&amp;0==c.isMouseInsideSlideImage(t)&amp;&amp;a.close("slider_inside")))}function F(){j()}function Y(){r?r&amp;&amp;r.hide():o&amp;&amp;o.hide(),u&amp;&amp;1==m.lightbox_hide_arrows_onvideoplay&amp;&amp;(u.hide(),d.hide())}function U(){r?(r&amp;&amp;r.show(),I()):o&amp;&amp;o.show(),u&amp;&amp;1==m.lightbox_hide_arrows_onvideoplay&amp;&amp;(u.show(),d.show())}function V(e,t,i){var n=!1;switch(t){case 27:1==f.isOpened&amp;&amp;a.close("keypress");break;case 38:case 40:case 33:case 34:n=!0}1==f.isOpened&amp;&amp;1==n&amp;&amp;i.preventDefault()}function X(){1==f.isArrowsOnHoverMode&amp;&amp;O(!1,!0)}function Z(e){f.positionFrom="hideCompactElements",1==f.isArrowsOnHoverMode&amp;&amp;1==x()&amp;&amp;M(!1,!0)}function q(e){f.lastMouseX=e.pageX,f.lastMouseY=e.pageY,1==(!u||(0==u.is(":visible")||1!=u.css("opacity")))&amp;&amp;A()&amp;&amp;0==c.isAnimating()&amp;&amp;(f.positionFrom="onMouseMove",u&amp;&amp;0==u.is(":animated")&amp;&amp;O(!1,!0))}function K(e,t,i,n){if(0==f.isOpened)return!0;switch(m.gallery_mousewheel_role){default:case"zoom":"image"!=c.getSlideType()&amp;&amp;e.preventDefault();break;case"none":e.preventDefault();break;case"advance":g.onGalleryMouseWheel(e,t,i,n)}}this.destroy=function(){var e;jQuery(document).unbind("mousemove"),n.off("touchstart"),n.off("touchend"),_.off("click"),i.off(g.events.ITEM_CHANGE),c&amp;&amp;(jQuery(c).off(c.events.TRANSITION_END),jQuery(c).off(c.events.CLICK),jQuery(c).off(c.events.START_DRAG),jQuery(c).off(c.events.TRANSITION_START),jQuery(c).off(c.events.AFTER_DRAG_CHANGE),jQuery(c).off(c.events.AFTER_RETURN),e=c.getVideoObject(),jQuery(e).off(e.events.PLAY_START),jQuery(e).off(e.events.PLAY_STOP),jQuery(c).on(c.events.IMAGE_MOUSEENTER,X),jQuery(c).on(c.events.IMAGE_MOUSELEAVE,Z),c.destroy()),jQuery(window).unbind("resize"),i.off(g.events.GALLERY_KEYPRESS,V),l.off("mousewheel"),l.remove()},this.isOpened=function(){return f.isOpened},this.open=function(e){e=g.getItem(e);f.isOpened=!0,f.isRightNowOpened=!0,setTimeout(function(){f.isRightNowOpened=!1},100),c&amp;&amp;c.setItem(e,"lightbox_open"),p&amp;&amp;p.setTextPlain(e.title,e.description),n.stop().fadeTo(0,0),l.show(),l.fadeTo(0,1),n.stop().fadeTo(f.fadeDuration,m.lightbox_overlay_opacity),j(),1==f.isCompact&amp;&amp;(1==c.isPreloading()?(_&amp;&amp;_.hide(),u&amp;&amp;1==f.isArrowsInside&amp;&amp;(u.hide(),d.hide()),o&amp;&amp;o.hide(),p&amp;&amp;p.hide()):1==f.isArrowsInside&amp;&amp;(u.hide(),d.hide())),c&amp;&amp;c.startSlideAction(),i.trigger(g.events.OPEN_LIGHTBOX,e)},this.close=function(e){f.isOpened=!1,1==f.isCompact&amp;&amp;t(),c&amp;&amp;c.stopSlideAction(),"image"!=c.getSlideType()?l.hide():l.fadeTo(f.fadeDuration,0,function(){l.hide()}),i.trigger(g.events.CLOSE_LIGHTBOX)},this.init=function(e,t){t=t,g=e=e,i=jQuery(e),g.setObjLightbox(a),m=jQuery.extend(m,b),m=jQuery.extend(m,t),f.originalOptions=jQuery.extend({},m),"compact"==m.lightbox_type&amp;&amp;(f.isCompact=!0,m=jQuery.extend(m,v),m=jQuery.extend(m,t)),y(),c=1==f.putSlider?(g.initSlider(m,"lightbox"),e.getObjects().g_objSlider):null,1==m.lightbox_show_textpanel?p.init(g,m,"lightbox"):p=null},this.putHtml=function(){var e,t;g.isSmallWindow()&amp;&amp;1==f.isCompact&amp;&amp;(f.isCompact=!1,y(),f.isArrowsInside=!1,f.isArrowsOnHoverMode=!1,(m=jQuery.extend({},f.originalOptions)).lightbox_arrows_position="sides",c.setOptions(m)),t=e="",1==f.isCompact&amp;&amp;(t=" ug-lightbox-compact"),e+="&lt;div class='ug-gallery-wrapper ug-lightbox"+t+"' &gt;",e+="&lt;div class='ug-lightbox-overlay'&gt;&lt;/div&gt;",0==f.isCompact&amp;&amp;f.isTopPanelEnabled?(e+="&lt;div class='ug-lightbox-top-panel'&gt;",e+="&lt;div class='ug-lightbox-top-panel-overlay'&gt;&lt;/div&gt;",m.lightbox_show_numbers&amp;&amp;(e+="&lt;div class='ug-lightbox-numbers'&gt;&lt;/div&gt;"),e+="&lt;/div&gt;"):m.lightbox_show_numbers&amp;&amp;(e+="&lt;div class='ug-lightbox-numbers'&gt;&lt;/div&gt;"),e+="&lt;div href=\"javascript:void(0)\" class='ug-lightbox-button-close'&gt;&lt;/div&gt;",e+="&lt;div class='ug-lightbox-arrow-left'&gt;&lt;/div&gt;",e+="&lt;div class='ug-lightbox-arrow-right'&gt;&lt;/div&gt;",e+="&lt;/div&gt;",l=jQuery(e),jQuery("body").append(l),c&amp;&amp;c.setHtml(l),n=l.children(".ug-lightbox-overlay"),0==f.isCompact&amp;&amp;1==f.isTopPanelEnabled&amp;&amp;0==(r=l.children(".ug-lightbox-top-panel")).length&amp;&amp;(r=null),_=l.find(".ug-lightbox-button-close"),m.lightbox_show_numbers&amp;&amp;(o=l.find(".ug-lightbox-numbers")),u=l.children(".ug-lightbox-arrow-left"),d=l.children(".ug-lightbox-arrow-right"),p&amp;&amp;(r?p.appendHTML(r):p.appendHTML(l))},this.run=function(){var e;"none"==m.lightbox_type&amp;&amp;this.destroy(),null!==m.lightbox_overlay_color&amp;&amp;n.css("background-color",m.lightbox_overlay_color),null!==m.lightbox_overlay_opacity&amp;&amp;n.fadeTo(0,m.lightbox_overlay_opacity),r&amp;&amp;null!==m.lightbox_top_panel_opacity&amp;&amp;r.children(".ug-lightbox-top-panel-overlay").fadeTo(0,m.lightbox_top_panel_opacity),o&amp;&amp;(e={},null!==m.lightbox_numbers_size&amp;&amp;(e["font-size"]=m.lightbox_numbers_size+"px"),m.lightbox_numbers_color&amp;&amp;(e.color=m.lightbox_numbers_color),null!==m.lightbox_numbers_padding_right&amp;&amp;(e["padding-right"]=m.lightbox_numbers_padding_right+"px"),null!==m.lightbox_numbers_padding_top&amp;&amp;(e["padding-top"]=m.lightbox_numbers_padding_top+"px"),o.css(e)),c&amp;&amp;c.run(),n.on("touchstart",function(e){e.preventDefault()}),n.on("touchend",function(e){a.close("overlay")}),h.addClassOnHover(d,"ug-arrow-hover"),h.addClassOnHover(u,"ug-arrow-hover"),h.addClassOnHover(_),g.setNextButton(d),g.setPrevButton(u),_.on("click",function(){a.close("button")}),i.on(g.events.ITEM_CHANGE,W),c&amp;&amp;(jQuery(c).on(c.events.TRANSITION_END,Q),jQuery(c).on(c.events.CLICK,B),e=c.getVideoObject(),jQuery(e).on(e.events.PLAY_START,Y),jQuery(e).on(e.events.PLAY_STOP,U),jQuery(c).on(c.events.START_DRAG,H),jQuery(c).on(c.events.TRANSITION_START,H),jQuery(c).on(c.events.AFTER_DRAG_CHANGE,R),jQuery(c).on(c.events.AFTER_RETURN,R),jQuery(c).on(c.events.AFTER_PUT_IMAGE,D),jQuery(c).on(c.events.ZOOM_CHANGE,G),jQuery(c).on(c.events.IMAGE_MOUSEENTER,X),jQuery(c).on(c.events.IMAGE_MOUSELEAVE,Z)),jQuery(window).resize(function(){return 0==f.isOpened||void h.whenContiniousEventOver("lightbox_resize",F,100)}),i.on(g.events.GALLERY_KEYPRESS,V),1==f.isArrowsOnHoverMode&amp;&amp;jQuery(document).bind("mousemove",q),l.on("mousewheel",K)}}function UGCarousel(){var n,r,s,l,o,i=this,t=jQuery(this),u=new UniteGalleryMain,d=new UGFunctions,a=new UGTileDesign,_=new UGThumbsGeneral,g={carousel_padding:8,carousel_space_between_tiles:20,carousel_navigation_numtiles:3,carousel_scroll_duration:500,carousel_scroll_easing:"easeOutCubic",carousel_autoplay:!0,carousel_autoplay_timeout:3e3,carousel_autoplay_direction:"right",carousel_autoplay_pause_onhover:!0,carousel_vertical_scroll_ondrag:!1},c={eventSizeChange:"thumb_size_change",isFirstTimeRun:!0,carouselMaxWidth:null,tileWidth:0,initTileWidth:0,initTileHeight:0,sideSpace:1500,spaceActionSize:500,numCurrent:0,touchActive:!(this.events={START_PLAY:"carousel_start_play",PAUSE_PLAY:"carousel_pause_play",STOP_PLAY:"carousel_stop_play"}),startInnerPos:0,lastTime:0,startTime:0,startMousePos:0,lastMousePos:0,scrollShortDuration:200,scrollShortEasing:"easeOutQuad",handle:null,isPlayMode:!1,isPaused:!1,storedEventID:"carousel"};function h(e,t){t=t||c.initTileHeight/c.initTileWidth*e;var i={tile_width:c.tileWidth=e,tile_height:t};a.setOptions(i),g.tile_width=e,g.tile_height=t,a.resizeAllTiles(e),I(!0)}function e(){if(null===c.carouselMaxWidth)throw new Error("The carousel width not set");var e;c.tileWidth&lt;c.initTileWidth?((e=c.carouselMaxWidth-2*g.carousel_padding)&gt;c.initTileWidth&amp;&amp;(e=c.initTileWidth),h(e),t=d.getNumItemsInSpace(c.carouselMaxWidth,e,g.carousel_space_between_tiles)):(t=d.getNumItemsInSpace(c.carouselMaxWidth,c.tileWidth,g.carousel_space_between_tiles))&lt;=0&amp;&amp;(t=1,h(e=c.carouselMaxWidth-2*g.carousel_padding));var t=d.getSpaceByNumItems(t,c.tileWidth,g.carousel_space_between_tiles);t+=2*g.carousel_padding,s.width(t),1==c.isFirstTimeRun?(a.initEvents(),s.bind("mousedown touchstart",A),jQuery("body").bind("mousemove touchmove",M),jQuery(window).add("body").bind("mouseup touchend",O),s.hover(z,k),a.run(),jQuery.each(r,function(e,t){t.objThumbWrapper.data("index",e),n.trigger(c.eventSizeChange,[t.objThumbWrapper,!0]),t.objTileOriginal=t.objThumbWrapper.clone(!0,!0)}),I(!0)):(1==g.carousel_autoplay&amp;&amp;i.pauseAutoplay(),S(0,!1)),1==g.carousel_autoplay&amp;&amp;i.startAutoplay(),d.placeElement(l,0,g.carousel_padding),j(),c.isFirstTimeRun=!1}function p(){return d.getElementSize(l).left}function m(e){return d.getMousePosition(e).pageX}function f(){return l.children(".ug-thumb-wrapper")}function b(e){return d.getNumItemsInSpace(e,c.tileWidth,g.carousel_space_between_tiles)}function v(){return f().length}function y(e){E(e);var t=f();return jQuery(t[e])}function w(){return b(d.getElementSize(s).width)}function I(e){e=e||!1;var i,n=f(),r=0,o=0;return jQuery.each(n,function(e,t){t=jQuery(t),d.placeElement(t,r,0);t=d.getElementSize(t);r+=t.width+g.carousel_space_between_tiles,o=Math.max(o,t.height),e==n.length-1&amp;&amp;(i=t.right)}),l.width(i),o+=2*g.carousel_padding,!0===e&amp;&amp;(l.height(o),s.height(o)),S(c.numCurrent,!1),i}function E(e){if(e&gt;f().length-1)throw new Error("Wrogn tile number: "+e)}function T(e,i){e=function(e,t,i){if(null==(s=e.data("index")))throw new Error("every tile should have index!");for(var n,r=[],o=0;o&lt;t;o++){if(!(n="prev"==i?u.getPrevItem(s,!0):u.getNextItem(s,!0)))throw new Error("the item to add is empty");var a=n.objTileOriginal.clone(!0,!0),s=n.index;a.addClass("cloned"),r.push(a)}return r}("left"==i?l.children(".ug-thumb-wrapper").first():l.children(".ug-thumb-wrapper").last(),e,"left"==i?"prev":"next");jQuery.each(e,function(e,t){"left"==i?l.prepend(t):l.append(t),n.trigger(c.eventSizeChange,t),a.loadTileImage(t)})}function x(e,t){E(void 0);for(var i=f(),n=i.length,r=0;r&lt;e;r++)("left"==t?jQuery(i[r]):jQuery(i[n-1-r])).remove()}function S(e,t,i){if(void 0===t){t=!0;if(l.is(":animated"))return 1}var n=y(e),r={left:-d.getElementSize(n).left+g.carousel_padding+"px"};!0===t?(n=g.carousel_scroll_duration,t=g.carousel_scroll_easing,!0===i&amp;&amp;(n=c.scrollShortDuration,t=c.scrollShortEasing),l.stop(!0).animate(r,{duration:n,easing:t,queue:!1,complete:function(){c.numCurrent=e,j()}})):(c.numCurrent=e,l.css(r))}function P(){var e,t,i,n;S((e=-p(),t=b(e),i=d.getElementSize(y(t)).left,n=d.getElementSize(y(t+1)).left,Math.abs(i-e)&lt;Math.abs(n-e)?t:t+1),!0,!0)}function j(){var e=(r=-p(),c.sideSpace-r),t=(o=d.getElementSize(s),a=(a=d.getElementSize(l)).width-o.width+a.left,c.sideSpace-a),i=0,n=0,r=0,o=0,a=v();if(e&gt;c.spaceActionSize?(T(i=b(e),"left"),c.numCurrent+=i):e&lt;-c.spaceActionSize&amp;&amp;(x(r=b(Math.abs(e)),"left"),c.numCurrent-=r),t&gt;c.spaceActionSize?T(n=b(t),"right"):t&lt;-c.spaceActionSize&amp;&amp;x(o=b(Math.abs(t)),"right"),a&lt;o)throw new Error("Can't remove more then num tiles");a=!1;return(i||n||r||o)&amp;&amp;(I(),a=!0),a}function C(){"left"==g.carousel_autoplay_direction?i.scrollRight(1):i.scrollLeft(1)}function A(e){if(1==c.touchActive)return!0;c.touchActive=!0,i.pauseAutoplay(),c.startTime=jQuery.now(),c.startMousePos=m(e),c.startInnerPos=p(),c.lastTime=c.startTime,c.lastMousePos=c.startMousePos,d.storeEventData(e,c.storedEventID)}function M(e){if(0==c.touchActive)return!0;d.updateStoredEventData(e,c.storedEventID),e.preventDefault();var t=null;if(1==g.carousel_vertical_scroll_ondrag&amp;&amp;(t=d.handleScrollTop(c.storedEventID)),"vert"===t)return!0;c.lastMousePos=m(e);var i=c.lastMousePos-c.startMousePos,t=c.startInnerPos+i,e=0&lt;i?"prev":"next";0&lt;t&amp;&amp;"prev"==e&amp;&amp;(t/=3),t&lt;-d.getElementSize(l).width&amp;&amp;"next"==e&amp;&amp;(t=c.startInnerPos+i/3),t={left:(t=t)+"px"},l.css(t)}function O(e){if(0==c.touchActive)return!0;c.touchActive=!1,P(),i.unpauseAutoplay()}function z(e){if(0==g.carousel_autoplay_pause_onhover)return!0;1==c.isPlayMode&amp;&amp;0==c.isPaused&amp;&amp;i.pauseAutoplay()}function k(e){if(0==g.carousel_autoplay_pause_onhover)return!0;i.unpauseAutoplay()}function L(){var e=c.lastTime-c.startTime,t=Math.abs(c.lastMousePos-c.startMousePos);return!(300&lt;e)&amp;&amp;!(30&lt;t)}this.startAutoplay=function(){c.isPlayMode=!0,c.isPaused=!1,t.trigger(i.events.START_PLAY),c.handle&amp;&amp;clearInterval(c.handle),c.handle=setInterval(C,g.carousel_autoplay_timeout)},this.unpauseAutoplay=function(){return 0==c.isPlayMode||(0==c.isPaused||void i.startAutoplay())},this.pauseAutoplay=function(){if(0==c.isPlayMode)return!0;c.isPaused=!0,c.handle&amp;&amp;clearInterval(c.handle),t.trigger(i.events.PAUSE_PLAY)},this.stopAutoplay=function(){if(0==c.isPlayMode)return!0;c.isPaused=!1,c.isPlayMode=!1,c.handle&amp;&amp;clearInterval(c.handle),t.trigger(i.events.STOP_PLAY)},this.destroy=function(){c.handle&amp;&amp;clearInterval(c.handle),t.off(i.events.START_PLAY),t.off(i.events.STOP_PLAY),s.unbind("mousedown"),s.unbind("touchstart"),jQuery("body").unbind("mousemove"),jQuery("body").unbind("touchmove"),jQuery(window).add("body").unbind("mouseup").unbind("touchend"),s.off("mouseenter").off("mouseleave"),a.destroy()},this.init=function(e,t,i){i&amp;&amp;this.setMaxWidth(i),t=t,o=(e=e).getObjects(),u=e,jQuery(e),n=o.g_objWrapper,r=o.g_arrItems,g=jQuery.extend(g,t),a.setFixedMode(),a.setApproveClickFunction(L),a.init(e,g),_=a.getObjThumbs(),g=a.getOptions(),c.initTileWidth=g.tile_width,c.initTileHeight=g.tile_height,c.tileWidth=g.tile_width},this.setMaxWidth=function(e){c.carouselMaxWidth=e},this.setHtml=function(e){n.append("&lt;div class='ug-carousel-wrapper'&gt;&lt;div class='ug-carousel-inner'&gt;&lt;/div&gt;&lt;/div&gt;"),s=n.children(".ug-carousel-wrapper"),l=s.children(".ug-carousel-inner"),a.setHtml(l),_.getThumbs().fadeTo(0,1)},this.getElement=function(){return s},this.getObjTileDesign=function(){return a},this.getEstimatedHeight=function(){return g.tile_height+2*g.carousel_padding},this.run=function(){e()},this.scrollRight=function(e){e&amp;&amp;"object"!=typeof e||(e=g.carousel_navigation_numtiles);var t=w();t&lt;e&amp;&amp;(e=t);e=c.numCurrent-e;e&lt;=0&amp;&amp;(e=0),S(e)},this.scrollLeft=function(e){e&amp;&amp;"object"!=typeof e||(e=g.carousel_navigation_numtiles);var t=w();t&lt;e&amp;&amp;(e=t);t=v(),e=c.numCurrent+e;t&lt;=e&amp;&amp;(e=t-1),S(e)},this.setScrollLeftButton=function(e){d.setButtonMobileReady(e),d.setButtonOnClick(e,i.scrollLeft)},this.setScrollRightButton=function(e){d.setButtonMobileReady(e),d.setButtonOnClick(e,i.scrollRight)},this.setPlayPauseButton=function(e){d.setButtonMobileReady(e),1==c.isPlayMode&amp;&amp;0==c.isPaused&amp;&amp;e.addClass("ug-pause-icon"),t.on(i.events.START_PLAY,function(){e.addClass("ug-pause-icon")}),t.on(i.events.STOP_PLAY,function(){e.removeClass("ug-pause-icon")}),d.setButtonOnClick(e,function(){0==c.isPlayMode||1==c.isPaused?i.startAutoplay():i.stopAutoplay()})}}function UGLoadMore(){jQuery(this);var i,n,r,o,a=new UniteGalleryMain,s=(new UGFunctions,{isInited:!1}),l={loadmore_container:"ug_loadmore_wrapper"};function u(){i.show()}function d(){n.hide(),r.show();var e={numitems:a.getNumItems()};a.ajaxRequest("front_loadmore",e,function(e){r.hide();var t=e.html_items;1==e.show_loadmore?(n.blur().show(),r.hide()):i.hide(),a.addItems(t)},function(e){e="Ajax Error!"+e,r.hide(),o.show(),o.html(e)})}this.events={},this.destroy=function(){if(0==s.isInited)return!1},this.init=function(e,t){if(a=e,jQuery(a),l=jQuery.extend(l,t),0!=(i=jQuery("#"+l.loadmore_container)).length&amp;&amp;0!=(n=i.find(".ug-loadmore-button")).length&amp;&amp;0!=(r=i.find(".ug-loadmore-loader")).length&amp;&amp;0!=(o=i.find(".ug-loadmore-error")).length&amp;&amp;(s.isInited=!0),0==s.isInited)return trace("load more not inited, something is wrong"),!1;a.onEvent("tiles_first_placed",u),n.click(d)}}function UGTabs(){jQuery(this);var i,n,r=new UniteGalleryMain,o=(new UGFunctions,{tabs_type:"tabs",tabs_container:"#ug_tabs",tabs_class_selected:"ug-tab-selected"});function e(){"select"==o.tabs_type?n.change(s):i.click(t)}function a(e){r.requestNewItems(e)}function t(){var e=o.tabs_class_selected,t=jQuery(this);if(t.hasClass(e))return!0;i.not(t).removeClass(e),t.addClass(e);t=t.data("catid");if(!t)return!0;a(t)}function s(){var e=jQuery(this).val();if(!e)return!0;a(e)}this.events={},this.destroy=function(){n&amp;&amp;n.off("change"),i&amp;&amp;i.off("click")},this.init=function(e,t){t=t,r=e,jQuery(r),"select"==(o=jQuery.extend(o,t)).tabs_type?n=jQuery(o.tabs_container):i=jQuery(o.tabs_container+" .ug-tab")},this.run=function(){e()}}function UG_API(e){var n,r=this,o=(jQuery(r),new UniteGalleryMain),a=[];function s(e){var t,i={index:e.index,title:e.title,description:e.description,urlImage:e.urlImage,urlThumb:e.urlThumb},n=e.objThumbImage.data();for(t in n){switch(t){case"image":case"description":continue}i[t]=n[t]}return i}o=e,n=jQuery(e),this.events={API_INIT_FUNCTIONS:"api_init",API_ON_EVENT:"api_on_event"},this.on=function(e,t,i){switch(!0!==i&amp;&amp;a.push({event:e,func:t}),e){case"item_change":n.on(o.events.ITEM_CHANGE,function(){var e=s(o.getSelectedItem());t(e.index,e)});break;case"resize":n.on(o.events.SIZE_CHANGE,t);break;case"enter_fullscreen":n.on(o.events.ENTER_FULLSCREEN,t);break;case"exit_fullscreen":n.on(o.events.EXIT_FULLSCREEN,t);break;case"play":n.on(o.events.START_PLAY,t);break;case"stop":n.on(o.events.STOP_PLAY,t);break;case"pause":n.on(o.events.PAUSE_PLAYING,t);break;case"continue":n.on(o.events.CONTINUE_PLAYING,t);break;case"open_lightbox":n.on(o.events.OPEN_LIGHTBOX,t);break;case"close_lightbox":n.on(o.events.CLOSE_LIGHTBOX,t);break;default:console&amp;&amp;console.log("wrong api event: "+e)}n.trigger(r.events.API_ON_EVENT,[e,t])},this.play=function(){o.startPlayMode()},this.stop=function(){o.stopPlayMode()},this.togglePlay=function(){o.togglePlayMode()},this.enterFullscreen=function(){o.toFullScreen()},this.exitFullscreen=function(){o.exitFullScreen()},this.toggleFullscreen=function(){o.toggleFullscreen()},this.resetZoom=function(){var e=o.getObjSlider();if(!e)return!1;e.zoomBack()},this.zoomIn=function(){var e=o.getObjSlider();if(!e)return!1;e.zoomIn()},this.zoomOut=function(){var e=o.getObjSlider();if(!e)return!1;e.zoomOut()},this.nextItem=function(){o.nextItem()},this.prevItem=function(){o.prevItem()},this.selectItem=function(e){o.selectItem(e)},this.resize=function(e,t){t?o.resize(e,t):o.resize(e)},this.getItem=function(e){return s(o.getItem(e))},this.isPlaying=function(){return o.isPlayMode()},this.getNumItems=function(){return o.getNumItems()},this.getNumCurrent=function(){return o.getCurrentNumItem()},this.reloadGallery=function(e){e=e||{},o.run(null,e),a.map(function(e){r.on(e.event,e.func,!0)})},this.changeItems=function(e){o.changeItems(e)},this.addItems=function(e){o.addItems(e)},this.destroy=function(){o.destroy()},n.trigger(r.events.API_INIT_FUNCTIONS,r)}jQuery.fn.unitegallery=function(e){var t="#"+jQuery(this).attr("id");e=e||{};var i=new UniteGalleryMain;return i.run(t,e),void 0===window.ugArrGalleriesObjects&amp;&amp;(window.ugArrGalleriesObjects=[]),window.ugArrGalleriesObjects.push(i),new UG_API(i)};if(typeof g_ugFunctions!="undefined")
g_ugFunctions.registerTheme("compact");else jQuery(document).ready(function(){g_ugFunctions.registerTheme("compact")});function UGTheme_compact(){var t=this;var g_gallery=new UniteGalleryMain(),g_objGallery,g_objects,g_objWrapper;var g_objSlider;var g_functions=new UGFunctions();var g_objPanel=new UGStripPanel();var g_options={theme_load_slider:!0,theme_load_panel:!0,theme_panel_position:"bottom",theme_hide_panel_under_width:480};var g_defaults={slider_controls_always_on:!0,slider_enable_text_panel:!1,slider_vertical_scroll_ondrag:!0,strippanel_enable_buttons:!1};var g_defaults_left={slider_enable_text_panel:!0,slider_zoompanel_align_hor:"right",slider_fullscreen_button_align_hor:"right",slider_play_button_align_hor:"right",slider_zoompanel_offset_vert:9,slider_zoompanel_offset_hor:11,slider_play_button_offset_hor:88,slider_play_button_offset_vert:8,slider_fullscreen_button_offset_hor:52,slider_fullscreen_button_offset_vert:9,slider_progress_indicator_align_hor:"right",slider_progress_indicator_offset_vert:36,slider_progress_indicator_offset_hor:63}
var g_defaults_right={slider_enable_text_panel:!0,slider_zoompanel_offset_vert:9,slider_zoompanel_offset_hor:11,slider_play_button_offset_hor:88,slider_play_button_offset_vert:8,slider_fullscreen_button_offset_hor:52,slider_fullscreen_button_offset_vert:9,slider_progress_indicator_align_hor:"left",slider_progress_indicator_offset_vert:36,slider_progress_indicator_offset_hor:63}
var g_defaults_bottom={slider_zoompanel_align_hor:"right",slider_zoompanel_offset_vert:10,slider_progress_indicator_align_hor:"left",slider_progress_indicator_offset_vert:36,slider_progress_indicator_offset_hor:16}
var g_defaults_top={slider_zoompanel_align_vert:"bottom",slider_zoompanel_offset_vert:10,slider_play_button_align_hor:"right",slider_play_button_align_vert:"bottom",slider_fullscreen_button_align_vert:"bottom",slider_fullscreen_button_align_hor:"right",slider_progress_indicator_align_vert:"bottom",slider_progress_indicator_offset_vert:40}
var g_temp={isVertical:!1,isMobileModeWasEnabled:!1};function initTheme(gallery,customOptions){g_gallery=gallery;g_options=jQuery.extend(g_options,customOptions);modifyOptions(customOptions);g_gallery.setOptions(g_options);if(g_options.theme_load_panel==!0){g_objPanel.init(gallery,g_options);g_objPanel.setOrientation(g_options.theme_panel_position)}else g_objPanel=null;if(g_options.theme_load_slider==!0)
g_gallery.initSlider(g_options);g_objects=gallery.getObjects();g_objGallery=jQuery(gallery);g_objWrapper=g_objects.g_objWrapper;if(g_options.theme_load_slider==!0)
g_objSlider=g_objects.g_objSlider}
function modifyOptions(customOptions){g_options=jQuery.extend(g_options,g_defaults);if(g_options.theme_load_panel==!0){switch(g_options.theme_panel_position){case "left":case "right":g_temp.isVertical=!0;g_options.strippanel_vertical_type=!0;break}}
switch(g_options.theme_panel_position){case "left":g_options=jQuery.extend(g_options,g_defaults_left);break;case "right":g_options=jQuery.extend(g_options,g_defaults_right);break;case "top":g_options=jQuery.extend(g_options,g_defaults_top);break;case "bottom":g_options=jQuery.extend(g_options,g_defaults_bottom);break}
g_options=jQuery.extend(g_options,customOptions)}
function initAndPlaceElements(){if(g_objPanel){initThumbsPanel();placeThumbsPanel()}
if(g_objSlider){g_objSlider.run();placeSlider()}}
function runTheme(){setHtml();initAndPlaceElements();initEvents()}
function setHtml(){g_objWrapper.addClass("ug-theme-grid");if(g_objPanel)
g_objPanel.setHtml();if(g_objSlider)
g_objSlider.setHtml()}
function initThumbsPanel(){var objGallerySize=g_gallery.getSize();if(g_temp.isVertical==!1)
g_objPanel.setWidth(objGallerySize.width);else g_objPanel.setHeight(objGallerySize.height);g_objPanel.run()}
function placeThumbsPanel(){var isNeedToHide=isPanelNeedToHide();var isHidden=g_objPanel.isPanelClosed();var objPanelElement=g_objPanel.getElement();var posVert="bottom";var posHor="left";var showClosed=(isNeedToHide||isHidden);if(showClosed){var hiddenDest=g_objPanel.getClosedPanelDest();var originalPos=g_functions.getElementRelativePos(objPanelElement,g_options.theme_panel_position);g_objPanel.setClosedState(originalPos)}else{g_objPanel.setOpenedState()}
switch(g_options.theme_panel_position){case "right":case "left":posHor=g_options.theme_panel_position;if(showClosed)
posHor=hiddenDest;break;case "top":case "bottom":posVert=g_options.theme_panel_position;if(showClosed)
posVert=hiddenDest;break;default:throw new Error("Wrong panel position: "+g_options.theme_panel_position);break}
g_functions.placeElement(objPanelElement,posHor,posVert,0,0)}
function placeSlider(){var gallerySize=g_functions.getElementSize(g_objWrapper);var sliderWidth=gallerySize.width;var sliderHeight=gallerySize.height;var sliderTop=0;var sliderLeft=0;if(g_objPanel){var panelSize=g_objPanel.getSize();switch(g_options.theme_panel_position){case "left":sliderLeft=panelSize.right;sliderWidth=gallerySize.width-panelSize.right;break;case "right":sliderWidth=panelSize.left;break;case "top":sliderHeight=gallerySize.height-panelSize.bottom;sliderTop=panelSize.bottom;break;case "bottom":sliderHeight=panelSize.top;break}}
g_objSlider.setSize(sliderWidth,sliderHeight);g_objSlider.setPosition(sliderLeft,sliderTop)}
function isPanelNeedToHide(){if(!g_options.theme_hide_panel_under_width)
return(!1);var windowWidth=jQuery(window).width();var hidePanelValue=g_options.theme_hide_panel_under_width;if(windowWidth&lt;=hidePanelValue)
return(!0);return(!1)}
function checkHidePanel(){if(!g_options.theme_hide_panel_under_width)
return(!1);var needToHide=isPanelNeedToHide();if(needToHide==!0){g_objPanel.closePanel(!0);g_temp.isMobileModeWasEnabled=!0}else{if(g_temp.isMobileModeWasEnabled==!0){g_objPanel.openPanel(!0);g_temp.isMobileModeWasEnabled=!1}}}
function onSizeChange(){initAndPlaceElements();if(g_objPanel)
checkHidePanel()}
function onPanelMove(){placeSlider()}
function onBeforeReqestItems(){g_gallery.showDisabledOverlay()}
function initEvents(){g_objGallery.on(g_gallery.events.SIZE_CHANGE,onSizeChange);g_objGallery.on(g_gallery.events.GALLERY_BEFORE_REQUEST_ITEMS,onBeforeReqestItems);if(g_objPanel){jQuery(g_objPanel).on(g_objPanel.events.FINISH_MOVE,onPanelMove)}}
this.destroy=function(){g_objGallery.off(g_gallery.events.SIZE_CHANGE);g_objGallery.off(g_gallery.events.GALLERY_BEFORE_REQUEST_ITEMS);if(g_objPanel)
jQuery(g_objPanel).off(g_objPanel.events.FINISH_MOVE);g_objPanel.destroy();g_objSlider.destroy()}
this.run=function(){runTheme()}
this.init=function(gallery,customOptions){initTheme(gallery,customOptions)}};(()=&gt;{"use strict";const t=function(t){return"string"!=typeof t||""===t?(console.error("The namespace must be a non-empty string."),!1):!!/^[a-zA-Z][a-zA-Z0-9_.\-\/]*$/.test(t)||(console.error("The namespace can only contain numbers, letters, dashes, periods, underscores and slashes."),!1)},n=function(t){return"string"!=typeof t||""===t?(console.error("The hook name must be a non-empty string."),!1):/^__/.test(t)?(console.error("The hook name cannot begin with `__`."),!1):!!/^[a-zA-Z][a-zA-Z0-9_.-]*$/.test(t)||(console.error("The hook name can only contain numbers, letters, dashes, periods and underscores."),!1)},e=function(e,o){return function(r,i,s){let c=arguments.length&gt;3&amp;&amp;void 0!==arguments[3]?arguments[3]:10;const l=e[o];if(!n(r))return;if(!t(i))return;if("function"!=typeof s)return void console.error("The hook callback must be a function.");if("number"!=typeof c)return void console.error("If specified, the hook priority must be a number.");const a={callback:s,priority:c,namespace:i};if(l[r]){const t=l[r].handlers;let n;for(n=t.length;n&gt;0&amp;&amp;!(c&gt;=t[n-1].priority);n--);n===t.length?t[n]=a:t.splice(n,0,a),l.__current.forEach((t=&gt;{t.name===r&amp;&amp;t.currentIndex&gt;=n&amp;&amp;t.currentIndex++}))}else l[r]={handlers:[a],runs:0};"hookAdded"!==r&amp;&amp;e.doAction("hookAdded",r,i,s,c)}},o=function(e,o){let r=arguments.length&gt;2&amp;&amp;void 0!==arguments[2]&amp;&amp;arguments[2];return function(i,s){const c=e[o];if(!n(i))return;if(!r&amp;&amp;!t(s))return;if(!c[i])return 0;let l=0;if(r)l=c[i].handlers.length,c[i]={runs:c[i].runs,handlers:[]};else{const t=c[i].handlers;for(let n=t.length-1;n&gt;=0;n--)t[n].namespace===s&amp;&amp;(t.splice(n,1),l++,c.__current.forEach((t=&gt;{t.name===i&amp;&amp;t.currentIndex&gt;=n&amp;&amp;t.currentIndex--})))}return"hookRemoved"!==i&amp;&amp;e.doAction("hookRemoved",i,s),l}},r=function(t,n){return function(e,o){const r=t[n];return void 0!==o?e in r&amp;&amp;r[e].handlers.some((t=&gt;t.namespace===o)):e in r}},i=function(t,n){let e=arguments.length&gt;2&amp;&amp;void 0!==arguments[2]&amp;&amp;arguments[2];return function(o){const r=t[n];r[o]||(r[o]={handlers:[],runs:0}),r[o].runs++;const i=r[o].handlers;for(var s=arguments.length,c=new Array(s&gt;1?s-1:0),l=1;l&lt;s;l++)c[l-1]=arguments[l];if(!i||!i.length)return e?c[0]:void 0;const a={name:o,currentIndex:0};for(r.__current.push(a);a.currentIndex&lt;i.length;){const t=i[a.currentIndex].callback.apply(null,c);e&amp;&amp;(c[0]=t),a.currentIndex++}return r.__current.pop(),e?c[0]:void 0}},s=function(t,n){return function(){var e,o;const r=t[n];return null!==(e=null===(o=r.__current[r.__current.length-1])||void 0===o?void 0:o.name)&amp;&amp;void 0!==e?e:null}},c=function(t,n){return function(e){const o=t[n];return void 0===e?void 0!==o.__current[0]:!!o.__current[0]&amp;&amp;e===o.__current[0].name}},l=function(t,e){return function(o){const r=t[e];if(n(o))return r[o]&amp;&amp;r[o].runs?r[o].runs:0}};class a{constructor(){this.actions=Object.create(null),this.actions.__current=[],this.filters=Object.create(null),this.filters.__current=[],this.addAction=e(this,"actions"),this.addFilter=e(this,"filters"),this.removeAction=o(this,"actions"),this.removeFilter=o(this,"filters"),this.hasAction=r(this,"actions"),this.hasFilter=r(this,"filters"),this.removeAllActions=o(this,"actions",!0),this.removeAllFilters=o(this,"filters",!0),this.doAction=i(this,"actions"),this.applyFilters=i(this,"filters",!0),this.currentAction=s(this,"actions"),this.currentFilter=s(this,"filters"),this.doingAction=c(this,"actions"),this.doingFilter=c(this,"filters"),this.didAction=l(this,"actions"),this.didFilter=l(this,"filters")}}const u=function(){return new a},h=u(),{addAction:d,addFilter:f,removeAction:m,removeFilter:k,hasAction:v,hasFilter:p,removeAllActions:b,removeAllFilters:y,doAction:g,applyFilters:A,currentAction:_,currentFilter:F,doingAction:B,doingFilter:w,didAction:I,didFilter:N,actions:j,filters:x}=h;function S(t){return S="function"==typeof Symbol&amp;&amp;"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&amp;&amp;"function"==typeof Symbol&amp;&amp;t.constructor===Symbol&amp;&amp;t!==Symbol.prototype?"symbol":typeof t},S(t)}function T(t,n){for(var e=0;e&lt;n.length;e++){var o=n[e];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"in o&amp;&amp;(o.writable=!0),Object.defineProperty(t,C(o.key),o)}}function P(t,n,e){return(n=C(n))in t?Object.defineProperty(t,n,{value:e,enumerable:!0,configurable:!0,writable:!0}):t[n]=e,t}function C(t){var n=function(t,n){if("object"!==S(t)||null===t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var o=e.call(t,"string");if("object"!==S(o))return o;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"===S(n)?n:String(n)}var O=function(){function t(n){!function(t,n){if(!(t instanceof n))throw new TypeError("Cannot call a class as a function")}(this,t),P(this,"hooks",void 0),P(this,"globalNamespace","jet-plugins"),P(this,"blocksNamespace","frontend.element-ready"),P(this,"blocksConditions",{}),this.hooks=n||u()}var n,e;return n=t,(e=[{key:"hookNameFromBlock",value:function(t){var n=this.getBlockName(t);return n?"".concat(this.globalNamespace,".").concat(this.blocksNamespace,".").concat(n):""}},{key:"getBlockName",value:function(t){var n;return"string"==typeof t?t.replace("/","."):this.getBlockName((null==t||null===(n=t.dataset)||void 0===n?void 0:n.isBlock)||"")}},{key:"init",value:function(t,n){var e=this;if(n&amp;&amp;n.length&amp;&amp;this.bulkBlocksInit(n),(t=t||jQuery("body"))&amp;&amp;t.length){var o=t.find('[data-is-block*="/"]');o&amp;&amp;o.length&amp;&amp;o.each((function(t,n){e.initBlock(n)}))}}},{key:"isBlockRequiresInit",value:function(t){var n=void 0===t.dataset.jetInited,e=this.getBlockName(t);return n&amp;&amp;this.blocksConditions[e]&amp;&amp;(n=this.blocksConditions[e](t)),n}},{key:"initBlock",value:function(t,n){n=n||!1;var e=this.hookNameFromBlock(t);if(e&amp;&amp;this.hasHandlers(e)){var o=n;o||(o=this.isBlockRequiresInit(t)),o&amp;&amp;(this.hooks.doAction(e,jQuery(t)),t.dataset.jetInited=!0)}}},{key:"hasHandlers",value:function(t){return!!this.hooks.actions[t]&amp;&amp;!(!this.hooks.actions[t].handlers||!this.hooks.actions[t].handlers.length)}},{key:"registerBlockHandlers",value:function(t){var n=this.getBlockName(t.block);this.hooks.addAction(this.hookNameFromBlock(n),"".concat(this.globalNamespace,"/").concat(t.block),t.callback),t.condition&amp;&amp;"function"==typeof t.condition&amp;&amp;(this.blocksConditions[n]=t.condition)}},{key:"bulkBlocksInit",value:function(t){for(var n=0;n&lt;t.length;n++)this.registerBlockHandlers(t[n])}}])&amp;&amp;T(n.prototype,e),Object.defineProperty(n,"prototype",{writable:!1}),t}();window.JetPlugins=window.JetPlugins||new O})();(function($){"use strict";var JetEngineRegisteredStores=window.JetEngineRegisteredStores||{};var JetEngineStores=window.JetEngineStores||{};var JetEngine={currentMonth:null,currentRequest:{},activeCalendarDay:null,lazyLoading:!1,addedScripts:[],addedStyles:[],addedPostCSS:[],assetsPromises:[],initDone:!1,commonInit:function(){JetEngine.commonEvents();$(window).on('jet-popup/render-content/ajax/success',JetEngine.initStores);window.JetPlugins.hooks.addFilter('jet-popup.show-popup.data','JetEngine.popupData',(popupData,$popup,$triggeredBy)=&gt;{if(!$triggeredBy){return popupData}
if($triggeredBy.data('popupIsJetEngine')){popupData=JetEngine.prepareJetPopup(popupData,{'is-jet-engine':!0},$triggeredBy)}
return popupData});JetEngine.initStores();JetEngine.customUrlActions.init()},commonEvents:function($scope){$scope=$scope||$(document);$scope.on('click.JetEngine','.jet-calendar-nav__link',JetEngine.switchCalendarMonth).on('click.JetEngine','.jet-calendar-week__day-mobile-overlay',JetEngine.showCalendarEvent).on('click.JetEngine','.jet-listing-dynamic-link__link[data-delete-link="1"]',JetEngine.showConfirmDeleteDialog).on('jet-filter-content-rendered',JetEngine.maybeReinitSlider).on('click.JetEngine','.jet-add-to-store',JetEngine.addToStore).on('click.JetEngine','.jet-remove-from-store',JetEngine.removeFromStore).on('click.JetEngine','.jet-engine-listing-overlay-wrap:not([data-url*="event=hover"])',JetEngine.handleListingItemClick).on('jet-filter-content-rendered',JetEngine.filtersCompatibility).on('click.JetEngine','.jet-container[data-url]',JetEngine.handleContainerURL).on('change.JetEngine','.jet-listing-dynamic-link .qty',JetEngine.handleProductQuantityChange)},handleProductQuantityChange:function(event){event.preventDefault();event.stopPropagation();const $this=$(this);$this.closest(".jet-listing-dynamic-link").find(".jet-woo-add-to-cart").data("quantity",$this.val()).attr("data-quantity",$this.val())},handleContainerURL:function(){var $this=$(this),url=$this.data('url'),target=$this.data('target');if(!target){window.location=url}else{window.open(url,'_blank').focus()}},filtersCompatibility:function(event,$provider,filtersInstance,providerType){if('jet-engine'!==providerType){return}
var $blocksListing=$provider.closest('.jet-listing-grid--blocks');if($blocksListing.length){JetEngine.widgetListingGrid($blocksListing)}
if(window.JetPopupFrontend&amp;&amp;window.JetPopupFrontend.initAttachedPopups){window.JetPopupFrontend.initAttachedPopups($provider)}},init:function(){var widgets={'jet-listing-dynamic-field.default':JetEngine.widgetDynamicField,'jet-listing-grid.default':JetEngine.widgetListingGrid,};$.each(widgets,function(widget,callback){window.elementorFrontend.hooks.addAction('frontend/element_ready/'+widget,callback)});window.elementorFrontend.elements.$window.on('elementor/nested-tabs/activate',(event,content)=&gt;{const $content=$(content);setTimeout(()=&gt;{JetEngine.maybeReinitSlider(event,$content);JetEngine.widgetDynamicField($content)})});window.elementorFrontend.hooks.addFilter('jet-popup/widget-extensions/popup-data',JetEngine.prepareJetPopup);window.JetPlugins.hooks.addFilter('jet-popup.show-popup.data','JetEngine.popupData',(popupData,$popup,$triggeredBy)=&gt;{if(!$triggeredBy){return popupData}
if($triggeredBy.data('popupIsJetEngine')){popupData=JetEngine.prepareJetPopup(popupData,{'is-jet-engine':!0},$triggeredBy)}
return popupData});JetEngine.updateAddedStyles()},initBricks:function($scope){if(window.bricksIsFrontend){return}
$scope=$scope||$('body');JetEngine.initBlocks($scope)},initBlocks:function($scope){$scope=$scope||$('body');window.JetPlugins.init($scope,[{block:'jet-engine/listing-grid',callback:JetEngine.widgetListingGrid},{block:'jet-engine/dynamic-field',callback:JetEngine.widgetDynamicField}])},initFrontStores:function($scope){$scope=$scope||$('body');$('.jet-add-to-store.is-front-store',$scope).each(function(){var $this=$(this),args=$this.data('args'),store=JetEngineStores[args.store.type],count=0;args=JetEngine.ensureJSON(args);if(!store){return}
if(store.inStore(args.store.slug,''+args.post_id)){JetEngine.switchDataStoreStatus($this)}});$('.jet-remove-from-store.is-front-store',$scope).each(function(){var $this=$(this),args=$this.data('args'),store=JetEngineStores[args.store.type],count=0;args=JetEngine.ensureJSON(args);if(!store){return}
if(!store.inStore(args.store.slug,''+args.post_id)){$this.addClass('is-hidden')}else{$this.removeClass('is-hidden')}})},initStores:function(){JetEngine.initFrontStores();$.each(JetEngineRegisteredStores,function(storeSlug,storeType){var store=JetEngineStores[storeType],storeData=null,count=0;if(!store){return}
storeData=store.getStore(storeSlug);if(storeData&amp;&amp;storeData.length){count=storeData.length}
$('span.jet-engine-data-store-count[data-store="'+storeSlug+'"]').text(count)});JetEngine.loadFrontStoresItems()},loadFrontStoresItems:function($scope){$scope=$scope||$('body');$('.jet-listing-not-found.jet-listing-grid__items',$scope).each(function(){var $this=$(this),nav=$this.data('nav'),isStore=$this.data('is-store-listing'),query=nav.query;nav=JetEngine.ensureJSON(nav);if(query&amp;&amp;query.post__in&amp;&amp;query.post__in.length&amp;&amp;0&gt;=query.post__in.indexOf('is-front')){var storeType=query.post__in[1],storeSlug=query.post__in[2],store=JetEngineStores[storeType],posts=[],$container=$this.closest('.elementor-widget-container');if(!$container.length){$container=$this.closest('.jet-listing-grid--blocks')}
if(!store){return}
posts=store.getStore(storeSlug);if(!posts.length){return}
query.post__in=posts;query.is_front_store=!0;JetEngine.ajaxGetListing({handler:'get_listing',container:$container,masonry:!1,slider:!1,append:!1,query:query,widgetSettings:nav.widget_settings,},function(response){JetEngine.widgetListingGrid($container)})}else if(isStore){$(document).trigger('jet-listing-grid-init-store',$this)}})},removeFromStore:function(event){event.preventDefault();event.stopPropagation();var $this=$(this),args=$this.data('args'),isDataStoreBtn=$this.hasClass('jet-data-store-link');args=JetEngine.ensureJSON(args);if(args.store.is_front){var store=JetEngineStores[args.store.type],count=0;if(!store){return}
if(!store.inStore(args.store.slug,''+args.post_id)){var storePosts=store.getStore(args.store.slug);count=storePosts.length}else{count=store.remove(args.store.slug,args.post_id)}
$('.jet-add-to-store[data-store="'+args.store.slug+'"][data-post="'+args.post_id+'"]').each(function(){JetEngine.switchDataStoreStatus($(this),!0)});$('.jet-data-store-link.jet-remove-from-store[data-store="'+args.store.slug+'"][data-post="'+args.post_id+'"]').each(function(){JetEngine.switchDataStoreStatus($(this),!0)});$('span.jet-engine-data-store-count[data-store="'+args.store.slug+'"]').text(count);if(args.remove_from_listing){$this.closest('.jet-listing-dynamic-post-'+args.post_id).remove()}
if(args.synch_id){var $container=$('#'+args.synch_id),$elemContainer=$container.find('&gt; .elementor-widget-container'),$items=$container.find('.jet-listing-grid__items'),posts=[],nav=$items.data('nav')||{},query=nav.query||{};nav=JetEngine.ensureJSON(nav);posts=store.getStore(args.store.slug);if(!posts.length){posts=['is-front',args.store.type,args.store.slug]}
query.post__in=posts;query.is_front_store=!0;JetEngine.ajaxGetListing({handler:'get_listing',container:$elemContainer.length?$elemContainer:$container,masonry:!1,slider:!1,append:!1,query:query,widgetSettings:nav.widget_settings,postID:window.elementorFrontendConfig.post.id,elementID:$container.data('id'),},function(response){JetEngine.widgetListingGrid($container)})}
$(document).trigger('jet-engine-data-stores-on-remove',args);return}
if($this.hasClass('jet-store-processing')){return}
$this.css('opacity',0.3);$this.addClass('jet-store-processing');$.ajax({url:JetEngineSettings.ajaxurl,type:'POST',dataType:'json',data:{action:'jet_engine_remove_from_store_'+args.store.slug,store:args.store.slug,post_id:args.post_id,},}).done(function(response){$this.css('opacity',1);$this.removeClass('jet-store-processing');if(response.success){if(!isDataStoreBtn){$this.addClass('is-hidden')}
$('.jet-add-to-store[data-store="'+args.store.slug+'"][data-post="'+args.post_id+'"]').each(function(){JetEngine.switchDataStoreStatus($(this),!0)});$('.jet-data-store-link.jet-remove-from-store[data-store="'+args.store.slug+'"][data-post="'+args.post_id+'"]').each(function(){JetEngine.switchDataStoreStatus($(this),!0)});if(args.synch_id){var $container=$('#'+args.synch_id),$elemContainer=$container.find('&gt; .elementor-widget-container'),$items=$container.find('.jet-listing-grid__items'),nav=$items.data('nav'),query=nav.query,postID=window.elementorFrontend?window.elementorFrontendConfig.post.id:0;nav=JetEngine.ensureJSON(nav);if($container.hasClass('brxe-jet-engine-listing-grid')){postID=window.bricksData.postId}
JetEngine.ajaxGetListing({handler:'get_listing',container:$elemContainer.length?$elemContainer:$container,masonry:!1,slider:!1,append:!1,query:query,widgetSettings:nav.widget_settings,postID,elementID:$container.data('id'),},function(response){JetEngine.widgetListingGrid($container)})}
if(args.remove_from_listing){$this.closest('.jet-listing-grid__item[data-post="'+args.post_id+'"]').remove()}
if(response.data.fragments){$.each(response.data.fragments,function(selector,value){$(selector).html(value)})}
$(document).trigger('jet-engine-data-stores-on-remove',args)}else{alert(response.data.message)}
return response}).done(function(response){if(args.remove_from_listing){$this.closest('.jet-listing-grid__item').remove()}
if(response.success){$('span.jet-engine-data-store-count[data-store="'+args.store.slug+'"]').text(response.data.count)}}).fail(function(jqXHR,textStatus,errorThrown){$this.css('opacity',1);$this.removeClass('jet-store-processing');alert(errorThrown)})},triggerPopup:function(popupID,isJetEngine,postID){if(!popupID){return}
var popupData={popupId:'jet-popup-'+popupID,};if(isJetEngine){popupData.isJetEngine=!0;popupData.postId=postID}
$(window).trigger({type:'jet-popup-open-trigger',popupData:popupData})},addToStore:function(event){event.preventDefault();event.stopPropagation();var $this=$(this),args=$this.data('args');args=JetEngine.ensureJSON(args);if($this.hasClass('in-store')){if(args.popup){JetEngine.triggerPopup(args.popup,args.isJetEngine,args.post_id)}else if('_blank'===$this.attr('target')){window.open($this.attr('href'))}else{window.location=$this.attr('href')}
return}
if(args.store.is_front){var store=JetEngineStores[args.store.type],count=0;if(!store){return}
if(store.inStore(args.store.slug,''+args.post_id)){var storePosts=store.getStore(args.store.slug);count=storePosts.length}else{count=store.addToStore(args.store.slug,args.post_id,args.store.size);if(!1===count){return}}
if(args.popup){JetEngine.triggerPopup(args.popup,args.isJetEngine,args.post_id)}
JetEngine.switchDataStoreStatus($this);$('span.jet-engine-data-store-count[data-store="'+args.store.slug+'"]').text(count);$('.jet-remove-from-store[data-store="'+args.store.slug+'"][data-post="'+args.post_id+'"]').removeClass('is-hidden');if(args.synch_id){var $container=$('#'+args.synch_id),$elemContainer=$container.find('&gt; .elementor-widget-container'),$items=$container.find('.jet-listing-grid__items'),posts=[],nav=$items.data('nav')||{},query=nav.query||{};nav=JetEngine.ensureJSON(nav);posts=store.getStore(args.store.slug);query.post__in=posts;query.is_front_store=!0;JetEngine.ajaxGetListing({handler:'get_listing',container:$elemContainer.length?$elemContainer:$container,masonry:!1,slider:!1,append:!1,query:query,widgetSettings:nav.widget_settings,postID:window.elementorFrontendConfig.post.id,elementID:$container.data('id'),},function(response){JetEngine.widgetListingGrid($container)})}
$(document).trigger('jet-engine-data-stores-on-add',args);return}
if($this.hasClass('jet-store-processing')){return}
$this.css('opacity',0.3);$this.addClass('jet-store-processing');$(document).trigger('jet-engine-on-add-to-store',[$this,args]);$.ajax({url:JetEngineSettings.ajaxurl,type:'POST',dataType:'json',data:{action:'jet_engine_add_to_store_'+args.store.slug,store:args.store.slug,post_id:args.post_id,},}).done(function(response){$this.css('opacity',1);$this.removeClass('jet-store-processing');if(response.success){JetEngine.switchDataStoreStatus($this);$('.jet-remove-from-store[data-store="'+args.store.slug+'"][data-post="'+args.post_id+'"]').removeClass('is-hidden');if(response.data.fragments){$.each(response.data.fragments,function(selector,value){$(selector).html(value)})}
if(args.synch_id){var $container=$('#'+args.synch_id),$elemContainer=$container.find('&gt; .elementor-widget-container'),$items=$container.find('.jet-listing-grid__items'),nav=$items.data('nav'),query=nav.query,postID=window.elementorFrontend?window.elementorFrontendConfig.post.id:0;nav=JetEngine.ensureJSON(nav);if($container.hasClass('brxe-jet-engine-listing-grid')){postID=window.bricksData.postId}
JetEngine.ajaxGetListing({handler:'get_listing',container:$elemContainer.length?$elemContainer:$container,masonry:!1,slider:!1,append:!1,query:query,widgetSettings:nav.widget_settings,postID,elementID:$container.data('id'),},function(response){JetEngine.widgetListingGrid($container)})}
if(args.popup){JetEngine.triggerPopup(args.popup,args.isJetEngine,args.post_id)}}else{alert(response.data.message)}
$(document).trigger('jet-engine-data-stores-on-add',args);return response}).done(function(response){if(response.success){$('span.jet-engine-data-store-count[data-store="'+args.store.slug+'"]').text(response.data.count)}}).fail(function(jqXHR,textStatus,errorThrown){$this.css('opacity',1);$this.removeClass('jet-store-processing');alert(errorThrown)})},switchDataStoreStatus:function($item,toInitial){var isDataStoreLink=$item.hasClass('jet-data-store-link'),$label=$item.find('.jet-listing-dynamic-link__label, .jet-data-store-link__label'),$icon=$item.find('.jet-listing-dynamic-link__icon, .jet-data-store-link__icon'),args=$item.data('args'),replaceLabel,replaceURL,replaceIcon;args=JetEngine.ensureJSON(args);toInitial=toInitial||!1;if(isDataStoreLink){switch(args.action_after_added){case 'remove_from_store':if(toInitial){$item.addClass('jet-add-to-store');$item.removeClass('jet-remove-from-store');$item.removeClass('in-store')}else{$item.addClass('jet-remove-from-store');$item.removeClass('jet-add-to-store');$item.addClass('in-store')}
break;case 'hide':if(toInitial){$item.removeClass('is-hidden')}else{$item.addClass('is-hidden')}
return}}
if(toInitial){replaceLabel=args.label;replaceIcon=args.icon;replaceURL='#'}else{replaceLabel=args.added_label;replaceIcon=args.added_icon;replaceURL=args.added_url}
if($label.length){$label.replaceWith(replaceLabel)}else{$item.append(replaceLabel)}
if($icon.length){$icon.replaceWith(replaceIcon)}else{$item.prepend(replaceIcon)}
if(isDataStoreLink&amp;&amp;'remove_from_store'===args.action_after_added){return}
$item.attr('href',replaceURL);if(toInitial){$item.removeClass('in-store')}else if(!$item.hasClass('in-store')){$item.addClass('in-store')}},showConfirmDeleteDialog:function(event){event.preventDefault();event.stopPropagation();var $this=$(this);if(window.confirm($this.data('delete-message'))){window.location=$this.attr('href')}},handleListingItemClick:function(event){var url=$(this).data('url'),target=$(this).data('target')||!1;if(url){event.preventDefault();if(window.elementorFrontend&amp;&amp;window.elementorFrontend.isEditMode()){return}
if(-1!==url.indexOf('#jet-engine-action')){JetEngine.customUrlActions.runAction(url)}else{if('_blank'===target){window.open(url);return}
window.location=url}}},customUrlActions:{selectorOnClick:'a[href^="#jet-engine-action"][href*="event=click"]',selectorOnHover:'a[href^="#jet-engine-action"][href*="event=hover"], [data-url^="#jet-engine-action"][data-url*="event=hover"]',init:function(){var timeout=null;$(document).on('click.JetEngine',this.selectorOnClick,function(event){event.preventDefault();JetEngine.customUrlActions.actionHandler(event)});$(document).on('click.JetEngine',this.selectorOnHover,function(event){if('A'===event.currentTarget.nodeName){event.preventDefault()}});$(document).on({'mouseenter.JetEngine':function(event){if(timeout){clearTimeout(timeout)}
timeout=setTimeout(function(){JetEngine.customUrlActions.actionHandler(event)},window.JetEngineSettings.hoverActionTimeout)},'mouseleave.JetEngine':function(){if(timeout){clearTimeout(timeout);timeout=null}},},this.selectorOnHover)},actions:{},addAction:function(name,callback){this.actions[name]=callback},actionHandler:function(event){var url=$(event.currentTarget).attr('href')||$(event.currentTarget).attr('data-url');this.runAction(url)},runAction:function(url){var queryParts=url.split('&amp;'),settings={};queryParts.forEach(function(item){if(-1!==item.indexOf('=')){var pair=item.split('=');settings[pair[0]]=decodeURIComponent(pair[1])}});if(!settings.action){return}
var actionCb=this.actions[settings.action];if(!actionCb){return}
actionCb(settings)}},prepareJetPopup:function(popupData,widgetData,$scope){var postId=null;if(widgetData['is-jet-engine']){popupData.isJetEngine=!0;var $gridItems=$scope.closest('.jet-listing-grid__items'),$gridItem=$scope.closest('.jet-listing-grid__item'),$calendarItem=$scope.closest('.jet-calendar-week__day-event'),$itemObject=$scope.closest('[data-item-object]'),filterProvider=!1,filterQueryId='default';if($gridItems.length){popupData.listingSource=$gridItems.data('listing-source');popupData.listingId=$gridItems.data('listing-id');popupData.queryId=$gridItems.data('query-id')}else{var $queryItems=$scope.closest('[data-query-id]'),$listingSource=$scope.closest('[data-listing-source]');if($queryItems.length){popupData.queryId=$queryItems.data('query-id')}
if($listingSource.length){popupData.listingSource=$listingSource.data('listing-source')}}
if($gridItem.length){popupData.postId=$gridItem.data('post-id');filterProvider='jet-engine'}else if($calendarItem.length){popupData.postId=$calendarItem.data('post-id');filterProvider='jet-engine-calendar'}else if($itemObject){popupData.postId=$itemObject.data('item-object')}else if(window.elementorFrontendConfig&amp;&amp;window.elementorFrontendConfig.post){popupData.postId=window.elementorFrontendConfig.post.id}
if(window.JetEngineFormsEditor&amp;&amp;window.JetEngineFormsEditor.hasEditor){popupData.hasEditor=!0}
if(window.JetSmartFilters){switch(filterProvider){case 'jet-engine':var nav=$gridItems.data('nav');if(nav.widget_settings?._element_id){filterQueryId=nav.widget_settings._element_id}
break;case 'jet-engine-calendar':var settings=$calendarItem.closest('.jet-listing-calendar').data('settings');if(settings._element_id){filterQueryId=settings._element_id}
break}
filterProvider=window.JetPlugins.hooks.applyFilters('jet-engine.prepareJetPopupData.filterProvider',filterProvider,$scope,widgetData);filterQueryId=window.JetPlugins.hooks.applyFilters('jet-engine.prepareJetPopupData.filterQueryId',filterQueryId,$scope,widgetData);if(popupData.queryId&amp;&amp;filterProvider&amp;&amp;window.JetSmartFilters?.filterGroups?.[filterProvider+'/'+filterQueryId]?.currentQuery){popupData.filtered_query=window.JetSmartFilters.filterGroups[filterProvider+'/'+filterQueryId].currentQuery}}}
return popupData},showCalendarEvent:function(event){var $this=$(this),$day=$this.closest('.jet-calendar-week__day'),$week=$day.closest('.jet-calendar-week'),$events=$day.find('.jet-calendar-week__day-content'),activeClass='calendar-event-active';if($day.hasClass(activeClass)){$day.removeClass(activeClass);JetEngine.activeCalendarDay.remove();JetEngine.activeCalendarDay=null;return}
if(JetEngine.activeCalendarDay){JetEngine.activeCalendarDay.remove();$('.'+activeClass).removeClass(activeClass);JetEngine.activeCalendarDay=null}
$day.addClass('calendar-event-active');JetEngine.activeCalendarDay=$('&lt;tr class="jet-calendar-week"&gt;&lt;td colspan="7" class="jet-calendar-week__day jet-calendar-week__day-mobile"&gt;&lt;div class="jet-calendar-week__day-mobile-event"&gt;'+$events.html()+'&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;');JetEngine.activeCalendarDay.find('.jet-popup-attach-event-inited').removeClass('jet-popup-attach-event-inited');JetEngine.initElementsHandlers(JetEngine.activeCalendarDay);JetEngine.activeCalendarDay.insertAfter($week)},widgetListingGrid:function($scope){var widgetID=$scope.closest('.elementor-widget').data('id'),$wrapper=$scope.find('.jet-listing-grid').first(),hasLazyLoad=$wrapper.hasClass('jet-listing-grid--lazy-load'),$listing=$scope.find('.jet-listing-grid__items').first(),$slider=$listing.parent('.jet-listing-grid__slider'),$masonry=$listing.hasClass('jet-listing-grid__masonry')?$listing:!1,navSettings=$listing.data('nav'),masonryGrid=!1,listingType='elementor';navSettings=JetEngine.ensureJSON(navSettings);if(hasLazyLoad){var lazyLoadOptions=$wrapper.data('lazy-load'),widgetSettings={},$container=$scope.find('.elementor-widget-container');if(window.elementorFrontend&amp;&amp;window.elementorFrontend.isEditMode()&amp;&amp;$wrapper.closest('.elementor[data-elementor-type]').hasClass('elementor-edit-mode')){widgetSettings=JetEngine.getEditorElementSettings($scope.closest('.elementor-widget'));widgetID=!1}
if(!$container.length){$container=$scope;widgetSettings=$scope.data('widget-settings')}
if(!widgetID){widgetID=$scope.data('element-id');listingType=$scope.data('listing-type')}
JetEngine.lazyLoadListing({container:$container,elementID:widgetID,postID:lazyLoadOptions.post_id,queriedID:lazyLoadOptions.queried_id||!1,offset:lazyLoadOptions.offset||'0px',query:lazyLoadOptions.query||{},listingType:listingType,widgetSettings:widgetSettings,extraProps:lazyLoadOptions.extra_props||!1,});return}
if($slider.length){JetEngine.initSlider($slider)}
if($masonry&amp;&amp;$masonry.length){JetEngine.initMasonry($masonry);if($scope.hasClass('brxe-jet-engine-listing-grid')){$(window).on('load',function(){JetEngine.runMasonry($masonry)})}}
if(navSettings&amp;&amp;navSettings.enabled){JetEngine.loadMoreListing({container:$listing,settings:navSettings,masonry:$masonry,slider:$slider,})}
if(window.elementorFrontend&amp;&amp;window.elementorFrontend.isEditMode()&amp;&amp;$wrapper.closest('.elementor-element-edit-mode').length){JetEngine.initElementsHandlers($wrapper)}},initMasonry:function($masonry,masonrySettings){imagesLoaded($masonry,function(){JetEngine.runMasonry($masonry,masonrySettings)})},runMasonry:function($masonry,masonrySettings){var defaultSettings={itemSelector:'&gt; .jet-listing-grid__item',columnsKey:'columns',};masonrySettings=masonrySettings||{};masonrySettings=$.extend({},defaultSettings,masonrySettings);var $eWidget=$masonry.closest('.elementor-widget'),$items=$(masonrySettings.itemSelector,$masonry),options=$masonry.data('masonry-grid-options')||{};options=JetEngine.ensureJSON(options);$items.css({marginTop:''});const{gap}=options;let margin=null;if(gap){margin={x:+gap.horizontal,y:+gap.vertical,}}
var args={container:$masonry[0],margin:margin?margin:0,};if($eWidget.length){var settings=JetEngine.getElementorElementSettings($eWidget),breakpoints={},eBreakpoints=window.elementorFrontend.config.responsive.activeBreakpoints,columnsKey=masonrySettings.columnsKey;args.columns=settings[columnsKey+'_widescreen']?+settings[columnsKey+'_widescreen']:+settings[columnsKey];Object.keys(eBreakpoints).reverse().forEach(function(breakpointName){if(settings[columnsKey+'_'+breakpointName]){if('widescreen'===breakpointName){breakpoints[eBreakpoints[breakpointName].value-1]=+settings[columnsKey]}else{breakpoints[eBreakpoints[breakpointName].value]=+settings[columnsKey+'_'+breakpointName]}}});args.breakAt=breakpoints}else{args.columns=options.columns.desktop;args.breakAt={1025:options.columns.tablet,768:options.columns.mobile,}}
var masonryInstance=Macy(args);masonryInstance.runOnImageLoad(function(){masonryInstance.recalculate(!0)},!0);$masonry.on('jet-engine/listing/recalculate-masonry-listing',function(){masonryInstance.runOnImageLoad(function(){masonryInstance.recalculate(!0)},!0)});$(document).on('jet-engine/listing/recalculate-masonry',function(){masonryInstance.recalculate(!0)})},ajaxGetListing:function(options,doneCallback,failCallback){var container=options.container||!1,handler=options.handler||!1,masonry=options.masonry||!1,slider=options.slider||!1,append=options.append||!1,query=options.query||{},widgetSettings=options.widgetSettings||{},postID=options.postID||!1,queriedID=options.queriedID||!1,elementID=options.elementID||!1,page=options.page||1,preventCSS=options.preventCSS||!1,listingType=options.listingType||!1,extraProps=options.extraProps||!1,isEditMode=window.elementorFrontend&amp;&amp;window.elementorFrontend.isEditMode();doneCallback=doneCallback||function(response){};if(!container||!handler){return}
if(!preventCSS){container.css({pointerEvents:'none',opacity:'0.5',cursor:'default',})}
var requestData={action:'jet_engine_ajax',handler:handler,query:query,widget_settings:widgetSettings,page_settings:{post_id:postID,queried_id:queriedID,element_id:elementID,page:page,},listing_type:listingType,isEditMode:isEditMode,addedPostCSS:JetEngine.addedPostCSS};if(extraProps){Object.assign(requestData,extraProps)}
$.ajax({url:JetEngineSettings.ajaxlisting,type:'POST',dataType:'json',data:requestData,}).done(function(response){if(!preventCSS){container.css({pointerEvents:'',opacity:'',cursor:'',})}
if(response.success){JetEngine.enqueueAssetsFromResponse(response);container.data('page',page);var $html=$(response.data.html);JetEngine.initFrontStores($html);if(slider&amp;&amp;slider.length){var $slider=slider.find('&gt; .jet-listing-grid__items');if(!$slider.hasClass('slick-initialized')){if(append){container.append($html)}else{container.html($html)}
var itemsCount=container.find('&gt; .jet-listing-grid__item').length;slider.addClass('jet-listing-grid__slider');JetEngine.initSlider(slider,{itemsCount:itemsCount})}else{$html.each(function(index,el){$slider.slick('slickAdd',el)})}}else{if(append){container.append($html)}else{container.html($html)}
if(masonry&amp;&amp;masonry.length){masonry.trigger('jet-engine/listing/recalculate-masonry-listing')}}
Promise.all(JetEngine.assetsPromises).then(function(){JetEngine.initElementsHandlers($html);JetEngine.assetsPromises=[]});if(response.data.fragments){for(var selector in response.data.fragments){var $selector=$(selector);if($selector.length){$selector.html(response.data.fragments[selector])}}}}
$(document).trigger('jet-engine/listing/ajax-get-listing/done',[$html,options])}).done(doneCallback).fail(function(){container.removeAttr('style');if(failCallback){failCallback.call()}})},loadMoreListing:function(args){var instance={setup:function(){this.container=args.container;this.masonry=args.masonry;this.slider=args.slider;this.settings=args.settings;this.wrapper=this.container.closest('.jet-listing-grid');this.type=this.settings.type||'click';this.page=parseInt(this.container.data('page'),10)||0;this.pages=parseInt(this.container.data('pages'),10)||0;this.queriedID=this.container.data('queried-id')||!1},init:function(){this.setup();switch(this.type){case 'click':this.handleMore();break;case 'scroll':if((!window.elementorFrontend||!window.elementorFrontend.isEditMode())&amp;&amp;!this.slider.length){this.handleInfiniteScroll()}
break}},handleMore:function(){if(!this.settings.more_el){return}
var self=this,$button=$(this.settings.more_el);if(!$button.length){return}
if(this.page===this.pages&amp;&amp;!window.elementor){$button.css('display','none')}else{$button.removeAttr('style')}
$(document).off('click',this.settings.more_el).on('click',this.settings.more_el,function(event){event.preventDefault();$button.css({pointerEvents:'none',opacity:'0.5',cursor:'default',});self.ajaxGetItems(function(response){$button.removeAttr('style');if(response.success&amp;&amp;self.page===self.pages){$button.css('display','none')}},function(){$button.button.removeAttr('style')})})},handleInfiniteScroll:function(){if(this.container.hasClass('jet-listing-not-found')){return}
if(this.page===this.pages){return}
var self=this,$trigger=this.wrapper.find('.jet-listing-grid__loader'),offset='0%';if(!$trigger.length){$trigger=$('&lt;div&gt;',{class:'jet-listing-grid__loading-trigger'});this.wrapper.append($trigger)}
if(this.settings.widget_settings&amp;&amp;this.settings.widget_settings.load_more_offset){var offsetValue=this.settings.widget_settings.load_more_offset;switch(typeof offsetValue){case 'object':var size=offsetValue.size?offsetValue.size:'0',unit=offsetValue.unit?offsetValue.unit:'px';offset=size+unit;break;case 'number':case 'string':offset=offsetValue+'px';break}}
var observer=new IntersectionObserver(function(entries,observer){if(entries[0].isIntersecting){self.ajaxGetItems(function(){if(self.page!==self.pages){setTimeout(function(){observer.observe(entries[0].target)},250)}});observer.unobserve(entries[0].target)}},{rootMargin:'0% 0% '+offset+' 0%',});observer.observe($trigger[0])},ajaxGetItems:function(doneCallback,failCallback){var self=this;this.page++;this.wrapper.addClass('jet-listing-grid-loading');JetEngine.ajaxGetListing({handler:'listing_load_more',container:this.container,masonry:this.masonry,slider:this.slider,append:!0,query:this.settings.query,widgetSettings:this.settings.widget_settings,page:this.page,queriedID:this.queriedID,preventCSS:!!this.wrapper.find('.jet-listing-grid__loader').length,},function(response){JetEngine.lazyLoading=!1;self.wrapper.removeClass('jet-listing-grid-loading');if(doneCallback){doneCallback(response)}
$(document).trigger('jet-engine/listing-grid/after-load-more',[args,response])},function(){JetEngine.lazyLoading=!1;self.wrapper.removeClass('jet-listing-grid-loading');if(failCallback){failCallback()}})},};instance.init()},lazyLoadListing:function(args){var $wrapper=args.container.find('.jet-listing-grid'),observer=new IntersectionObserver(function(entries,observer){if(entries[0].isIntersecting){JetEngine.lazyLoading=!0;if(!$wrapper.length){$wrapper=args.container}
$wrapper.addClass('jet-listing-grid-loading');JetEngine.ajaxGetListing({handler:'get_listing',container:args.container,masonry:!1,slider:!1,append:!1,elementID:args.elementID,postID:args.postID,queriedID:args.queriedID,query:args.query,widgetSettings:args.widgetSettings,listingType:args.listingType,preventCSS:!0,extraProps:args.extraProps,},function(response){$wrapper.removeClass('jet-listing-grid-loading');var $widget=args.container.closest('.elementor-widget');if(!$widget.length){$widget=args.container.closest('.jet-listing-grid--blocks')}
if(!$widget.length){$widget=args.container}
if($widget.length){$widget.find('.jet-listing-grid').first().removeClass('jet-listing-grid--lazy-load')}
JetEngine.widgetListingGrid($widget);JetEngine.loadFrontStoresItems($widget);JetEngine.lazyLoading=!1;var needReInitFilters=!1,isEditMode=window.elementorFrontend&amp;&amp;window.elementorFrontend.isEditMode();if(!isEditMode&amp;&amp;window.JetSmartFilterSettings){if(response.data.filters_data){$.each(response.data.filters_data,function(param,data){if('extra_props'===param){window.JetSmartFilterSettings[param]=$.extend({},window.JetSmartFilterSettings[param],data)}else{if(window.JetSmartFilterSettings[param]['jet-engine']){window.JetSmartFilterSettings[param]['jet-engine']=$.extend({},window.JetSmartFilterSettings[param]['jet-engine'],data)}else{window.JetSmartFilterSettings[param]['jet-engine']=data}}});needReInitFilters=!0}
if(response.data.indexer_data){const{provider=!1,query={}}=response.data.indexer_data;window.JetSmartFilters.setIndexedData(provider,query)}}
if(needReInitFilters&amp;&amp;window.JetSmartFilters){window.JetSmartFilters.reinitFilters()}
$(document).trigger('jet-engine/listing-grid/after-lazy-load',[args,response])},function(){JetEngine.lazyLoading=!1;if(!$wrapper.length){$wrapper=args.container}
$wrapper.removeClass('jet-listing-grid-loading')});observer.unobserve(entries[0].target)}},{rootMargin:'0% 0% '+args.offset+' 0%'});observer.observe(args.container[0])},ensureJSON:function(maybeJSON){if(!maybeJSON){return maybeJSON}
if('string'===typeof maybeJSON){console.log(maybeJSON)}
return maybeJSON},initSlider:function($slider,customOptions){var $eWidget=$slider.closest('.elementor-widget'),options=$slider.data('slider_options'),windowWidth=$(window).width(),tabletBP=1025,mobileBP=768,tabletSlides,mobileSlides,defaultOptions,slickOptions;options=JetEngine.ensureJSON(options);customOptions=customOptions||{};options=$.extend({},options,customOptions);if($eWidget.length){var settings=JetEngine.getElementorElementSettings($eWidget),responsive=[],deviceMode=elementorFrontend.getCurrentDeviceMode(),eBreakpoints=window.elementorFrontend.config.responsive.activeBreakpoints;options.slidesToShow=settings.columns_widescreen?+settings.columns_widescreen:+settings.columns;Object.keys(eBreakpoints).reverse().forEach(function(breakpointName){if(settings['columns_'+breakpointName]){if('widescreen'===breakpointName){responsive.push({breakpoint:eBreakpoints[breakpointName].value,settings:{slidesToShow:+settings.columns,}})}else{var breakpointSettings={breakpoint:eBreakpoints[breakpointName].value+1,settings:{slidesToShow:+settings['columns_'+breakpointName],}};if(options.slidesToScroll&gt;breakpointSettings.settings.slidesToShow){breakpointSettings.settings.slidesToScroll=breakpointSettings.settings.slidesToShow}
responsive.push(breakpointSettings)}}});options.responsive=responsive}else{if(!options.slidesToShow){options.slidesToShow={desktop:3,tablet:1,mobile:1,}}
if(options.itemsCount&lt;=options.slidesToShow.desktop&amp;&amp;windowWidth&gt;=tabletBP){$slider.removeClass('jet-listing-grid__slider');return}else if(options.itemsCount&lt;=options.slidesToShow.tablet&amp;&amp;tabletBP&gt;windowWidth&amp;&amp;windowWidth&gt;=mobileBP){$slider.removeClass('jet-listing-grid__slider');return}else if(options.itemsCount&lt;=options.slidesToShow.mobile&amp;&amp;windowWidth&lt;mobileBP){$slider.removeClass('jet-listing-grid__slider');return}
if(options.slidesToShow.tablet){tabletSlides=options.slidesToShow.tablet}else{tabletSlides=1===options.slidesToShow.desktop?1:2}
if(options.slidesToShow.mobile){mobileSlides=options.slidesToShow.mobile}else{mobileSlides=1}
options.slidesToShow=options.slidesToShow.desktop;options.responsive=[{breakpoint:1025,settings:{slidesToShow:tabletSlides,slidesToScroll:options.slidesToScroll&gt;tabletSlides?tabletSlides:options.slidesToScroll}},{breakpoint:768,settings:{slidesToShow:mobileSlides,slidesToScroll:1}}]}
defaultOptions={customPaging:function(slider,i){return $('&lt;span /&gt;').text(i+1).attr('role','tab')},slide:'.jet-listing-grid__item',dotsClass:'jet-slick-dots',};slickOptions=$.extend({},defaultOptions,options);var $sliderItems=$slider.find('&gt; .jet-listing-grid__items');if(slickOptions.infinite){$sliderItems.on('init',function(){var $items=$(this),$clonedSlides=$('&gt; .slick-list &gt; .slick-track &gt; .slick-cloned.jet-listing-grid__item',$items);if(!$clonedSlides.length){return}
JetEngine.initElementsHandlers($clonedSlides)})}
if(slickOptions.rtl){$sliderItems.on('init',function(){var $items=$(this),$lazyImages=$('img[loading=lazy]',$items),lazyImageObserver=new IntersectionObserver(function(entries,observer){entries.forEach(function(entry){if(entry.isIntersecting){if(!entry.target.complete){entry.target.removeAttribute('loading')}
observer.unobserve(entry.target)}})});$lazyImages.each(function(){const $img=$(this);lazyImageObserver.observe($img[0])})})}
if($sliderItems.hasClass('slick-initialized')){$sliderItems.slick('refresh',!0);return}
if(slickOptions.variableWidth){slickOptions.slidesToShow=1;slickOptions.slidesToScroll=1;slickOptions.responsive=null}
$sliderItems.slick(slickOptions)},maybeReinitSlider:function(event,$scope){var $slider=$scope.find('.jet-listing-grid__slider');if($slider.length){$slider.each(function(){JetEngine.initSlider($(this))})}},widgetDynamicField:function($scope){var $slider=$scope.find('.jet-engine-gallery-slider');if($slider.length){if($.isFunction($.fn.imagesLoaded)){$slider.imagesLoaded().always(function(instance){var $eWidget=$slider.closest('.elementor-widget');if($slider.hasClass('slick-initialized')){$slider.slick('refresh',!0)}else{var atts=$slider.data('atts');atts=JetEngine.ensureJSON(atts);if($eWidget.length){var settings=JetEngine.getElementorElementSettings($scope),eBreakpoints=window.elementorFrontend.config.responsive.activeBreakpoints,responsive=[];if(settings.img_slider_cols||settings.img_slider_cols_widescreen){atts.slidesToShow=settings.img_slider_cols_widescreen?+settings.img_slider_cols_widescreen:+settings.img_slider_cols}
Object.keys(eBreakpoints).reverse().forEach(function(breakpointName){if(settings['img_slider_cols_'+breakpointName]){if('widescreen'===breakpointName){responsive.push({breakpoint:eBreakpoints[breakpointName].value,settings:{slidesToShow:+settings.img_slider_cols,}})}else{var breakpointSettings={breakpoint:eBreakpoints[breakpointName].value+1,settings:{slidesToShow:+settings['img_slider_cols_'+breakpointName],}};responsive.push(breakpointSettings)}}});atts.responsive=responsive}
$slider.slick(atts)}})}}
$slider.on('init',function(event,slick){const slider=event.target;if(!slider.classList.contains('jet-engine-gallery-lightbox')){return}
let lightbox=new PhotoSwipeLightbox({mainClass:'brx',gallery:slider,children:'a',showHideAnimationType:'none',zoomAnimationDuration:!1,pswpModule:PhotoSwipe5,});lightbox.addFilter('numItems',numItems=&gt;slick.slideCount);lightbox.addFilter('clickedIndex',function(clickedIndex,e){const slide=e.target.closest('.slick-slide');if(!slide){return clickedIndex}
if(clickedIndex&gt;=slick.slideCount){return clickedIndex%slick.slideCount}
return clickedIndex});lightbox.addFilter('thumbEl',(thumbnail,itemData,index)=&gt;{return thumbnail});lightbox.addFilter('thumbBounds',(thumbBounds,itemData,index)=&gt;{return thumbBounds});lightbox.init()});var $masonry=$scope.find('.jet-engine-gallery-grid--masonry');if($masonry.length){JetEngine.initMasonry($masonry,{columnsKey:'img_columns',itemSelector:'&gt; .jet-engine-gallery-grid__item',})}},switchCalendarMonth:function($event){var $this=$(this),$calendar=$this.closest('.jet-calendar'),$widget=$calendar.closest('.elementor-widget-container'),settings=$calendar.data('settings'),post=$calendar.data('post'),month=$this.data('month');settings=JetEngine.ensureJSON(settings);if(!$widget.length){$widget=$calendar.closest('.jet-listing-calendar-block')}
if(!$widget.length){$widget=$calendar.closest('.brxe-jet-listing-calendar')}
$calendar.addClass('jet-calendar-loading');JetEngine.currentRequest={jet_engine_action:'jet_engine_calendar_get_month',month:month,settings:settings,post:post,};$(document).trigger('jet-engine-request-calendar');$.ajax({url:JetEngineSettings.ajaxlisting,type:'POST',dataType:'json',data:JetEngine.currentRequest,}).done(function(response){if(response.success){$calendar.replaceWith(response.data.content);JetEngine.initElementsHandlers($widget)}
$calendar.removeClass('jet-calendar-loading')})},initElementsHandlers:function($selector){window.JetPlugins.init($selector);$selector.find('[data-element_type]').each(function(){var $this=$(this),elementType=$this.data('element_type');if(!elementType){return}
if('widget'===elementType){elementType=$this.data('widget_type');window.elementorFrontend.hooks.doAction('frontend/element_ready/widget',$this,$)}
window.elementorFrontend.hooks.doAction('frontend/element_ready/global',$this,$);window.elementorFrontend.hooks.doAction('frontend/element_ready/'+elementType,$this,$)});if(window.elementorFrontend){const elementorLazyLoad=new Event("elementor/lazyload/observe");document.dispatchEvent(elementorLazyLoad)}
if(window.JetPopupFrontend&amp;&amp;window.JetPopupFrontend.initAttachedPopups){window.JetPopupFrontend.initAttachedPopups($selector)}},getElementorElementSettings:function($scope){if(window.elementorFrontend&amp;&amp;window.elementorFrontend.isEditMode()&amp;&amp;$scope.hasClass('elementor-element-edit-mode')){return JetEngine.getEditorElementSettings($scope)}
return $scope.data('settings')||{}},getEditorElementSettings:function($scope){var modelCID=$scope.data('model-cid'),elementData;if(!modelCID){return{}}
if(!window.elementorFrontend.hasOwnProperty('config')){return{}}
if(!window.elementorFrontend.config.hasOwnProperty('elements')){return{}}
if(!window.elementorFrontend.config.elements.hasOwnProperty('data')){return{}}
elementData=window.elementorFrontend.config.elements.data[modelCID];if(!elementData){return{}}
return elementData.toJSON()},debounce:function(threshold,callback){var timeout;return function debounced($event){function delayed(){callback.call(this,$event);timeout=null}
if(timeout){clearTimeout(timeout)}
timeout=setTimeout(delayed,threshold)}},updateAddedStyles:function(){if(window.JetEngineSettings&amp;&amp;window.JetEngineSettings.addedPostCSS){$.each(window.JetEngineSettings.addedPostCSS,function(ind,cssID){JetEngine.addedStyles.push('elementor-post-'+cssID);JetEngine.addedPostCSS.push(cssID)})}},enqueueAssetsFromResponse:function(response){if(response.data.scripts){JetEngine.enqueueScripts(response.data.scripts)}
if(response.data.styles){JetEngine.enqueueStyles(response.data.styles)}},enqueueScripts:function(scripts){$.each(scripts,function(handle,scriptHtml){JetEngine.enqueueScript(handle,scriptHtml)})},enqueueStyles:function(styles){$.each(styles,function(handle,styleHtml){JetEngine.enqueueStyle(handle,styleHtml)})},enqueueScript:function(handle,scriptHtml){if(-1!==JetEngine.addedScripts.indexOf(handle)){return}
if(!scriptHtml){return}
var selector='script[id="'+handle+'-js"]';if($(selector).length){return}
var scriptsTags=scriptHtml.match(/&lt;script[\s\S]*?&lt;\/script&gt;/gm);if(scriptsTags.length){for(var i=0;i&lt;scriptsTags.length;i++){JetEngine.assetsPromises.push(new Promise(function(resolve,reject){var $tag=$(scriptsTags[i]);if($tag[0].src){var tag=document.createElement('script');tag.type=$tag[0].type;tag.src=$tag[0].src;tag.id=$tag[0].id;tag.async=!1;tag.onload=function(){resolve()};document.body.append(tag)}else{$('body').append(scriptsTags[i]);resolve()}}))}}
JetEngine.addedScripts.push(handle)},enqueueStyle:function(handle,styleHtml){if(-1!==handle.indexOf('google-fonts')){JetEngine.enqueueGoogleFonts(handle,styleHtml);return}
if(-1!==JetEngine.addedStyles.indexOf(handle)){return}
var selector='link[id="'+handle+'-css"],style[id="'+handle+'"]';if($(selector).length){return}
$('head').append(styleHtml);JetEngine.addedStyles.push(handle);if(-1!==handle.indexOf('elementor-post')){var postID=handle.replace('elementor-post-','');JetEngine.addedPostCSS.push(postID)}},enqueueGoogleFonts:function(handle,styleHtml){var selector='link[id="'+handle+'-css"]';if($(selector).length){}
$('head').append(styleHtml)},filters:(function(){var callbacks={};return{addFilter:function(name,callback){if(!callbacks.hasOwnProperty(name)){callbacks[name]=[]}
callbacks[name].push(callback)},applyFilters:function(name,value,args){if(!callbacks.hasOwnProperty(name)){return value}
if(args===undefined){args=[]}
var container=callbacks[name];var cbLen=container.length;for(var i=0;i&lt;cbLen;i++){if(typeof container[i]==='function'){value=container[i](value,args)}}
return value}}})()};$(window).on('elementor/frontend/init',JetEngine.init);window.JetEngine=JetEngine;JetEngine.commonInit();window.addEventListener('DOMContentLoaded',function(){JetEngine.initBlocks();JetEngine.initDone=!0});window.jetEngineBricks=function(){JetEngine.initBricks()}
$(window).trigger('jet-engine/frontend/loaded')}(jQuery));/*! elementor-pro - v3.27.0 - 13-03-2025 */
(()=&gt;{"use strict";var e,r,a,n={},c={};function __webpack_require__(e){var r=c[e];if(void 0!==r)return r.exports;var a=c[e]={exports:{}};return n[e].call(a.exports,a,a.exports,__webpack_require__),a.exports}__webpack_require__.m=n,e=[],__webpack_require__.O=(r,a,n,c)=&gt;{if(!a){var i=1/0;for(o=0;o&lt;e.length;o++){for(var[a,n,c]=e[o],t=!0,_=0;_&lt;a.length;_++)(!1&amp;c||i&gt;=c)&amp;&amp;Object.keys(__webpack_require__.O).every((e=&gt;__webpack_require__.O[e](a[_])))?a.splice(_--,1):(t=!1,c&lt;i&amp;&amp;(i=c));if(t){e.splice(o--,1);var b=n();void 0!==b&amp;&amp;(r=b)}}return r}c=c||0;for(var o=e.length;o&gt;0&amp;&amp;e[o-1][2]&gt;c;o--)e[o]=e[o-1];e[o]=[a,n,c]},__webpack_require__.f={},__webpack_require__.e=e=&gt;Promise.all(Object.keys(__webpack_require__.f).reduce(((r,a)=&gt;(__webpack_require__.f[a](e,r),r)),[])),__webpack_require__.u=e=&gt;635===e?"code-highlight.d86022c8668c4b072592.bundle.min.js":519===e?"video-playlist.af20fd9fd8778929829e.bundle.min.js":375===e?"paypal-button.f4f64e46173f50701949.bundle.min.js":234===e?"f6214a79e4b78ec016e6.bundle.min.js":857===e?"stripe-button.61d93594d6b7865f8b3f.bundle.min.js":581===e?"progress-tracker.8cccdda9737c272489fc.bundle.min.js":961===e?"animated-headline.588a0449647bd4f113f3.bundle.min.js":692===e?"media-carousel.afbaabb756a7c18ddb09.bundle.min.js":897===e?"carousel.3620fca501cb18163600.bundle.min.js":416===e?"countdown.0e9e688751d29d07a8d3.bundle.min.js":292===e?"hotspot.fa04300164c35a866a51.bundle.min.js":325===e?"form.5fb35271b8ba3fb1e7d6.bundle.min.js":543===e?"gallery.1628df47530ab42dafba.bundle.min.js":970===e?"lottie.e74a53bfa4c0bd939250.bundle.min.js":334===e?"nav-menu.a23fbd67486c5bedf26c.bundle.min.js":887===e?"popup.f7b15b2ca565b152bf98.bundle.min.js":535===e?"load-more.8b46f464e573feab5dd7.bundle.min.js":396===e?"posts.aec59265318492b89cb5.bundle.min.js":726===e?"portfolio.4cd5da34009c30cb5d70.bundle.min.js":316===e?"share-buttons.63d984f8c96d1e053bc0.bundle.min.js":829===e?"slides.c0029640cbdb48199471.bundle.min.js":158===e?"social.f215e8a3efafbdbeb7ef.bundle.min.js":404===e?"table-of-contents.99a74eec7252759bebdb.bundle.min.js":345===e?"archive-posts.16a93245d08246e5e540.bundle.min.js":798===e?"search-form.b7065999d77832a1b764.bundle.min.js":6===e?"woocommerce-menu-cart.eb61fe086245485310a4.bundle.min.js":80===e?"woocommerce-purchase-summary.3676ccd8c29ef0924b84.bundle.min.js":354===e?"woocommerce-checkout-page.776b4cec45070fe32636.bundle.min.js":4===e?"woocommerce-cart.d0d01530f5be6736b5d2.bundle.min.js":662===e?"woocommerce-my-account.4e940a8b4a52d1c98c5c.bundle.min.js":621===e?"woocommerce-notices.bcee9b5e1c8f65ac7927.bundle.min.js":787===e?"product-add-to-cart.51a22e1fbd8f914ab3d5.bundle.min.js":993===e?"loop.4a16d82b8b5e3e00f25e.bundle.min.js":932===e?"loop-carousel.f8067ec0c24b628c786e.bundle.min.js":550===e?"ajax-pagination.55e86e9100bc317aeb0b.bundle.min.js":727===e?"mega-menu.8008698e9df584aa4337.bundle.min.js":87===e?"mega-menu-stretch-content.480e081cebe071d683e8.bundle.min.js":912===e?"menu-title-keyboard-handler.070cb9cb3c4f1f016388.bundle.min.js":33===e?"nested-carousel.d08a5094d95215833b5c.bundle.min.js":225===e?"taxonomy-filter.e839f2be32b7ea832b34.bundle.min.js":579===e?"off-canvas.41d355285c19e4440547.bundle.min.js":1===e?"contact-buttons.33ec3b540b7caec4d0f5.bundle.min.js":61===e?"contact-buttons-var-10.0dc9f4c9e85e7c4baa3a.bundle.min.js":249===e?"floating-bars-var-2.1a487dc027431fb485cd.bundle.min.js":440===e?"floating-bars-var-3.acd1ad79ebb515e353c9.bundle.min.js":187===e?"search.3db30c59360e14bb4448.bundle.min.js":void 0,__webpack_require__.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),__webpack_require__.o=(e,r)=&gt;Object.prototype.hasOwnProperty.call(e,r),r={},a="elementor-pro:",__webpack_require__.l=(e,n,c,i)=&gt;{if(r[e])r[e].push(n);else{var t,_;if(void 0!==c)for(var b=document.getElementsByTagName("script"),o=0;o&lt;b.length;o++){var d=b[o];if(d.getAttribute("src")==e||d.getAttribute("data-webpack")==a+c){t=d;break}}t||(_=!0,(t=document.createElement("script")).charset="utf-8",t.timeout=120,__webpack_require__.nc&amp;&amp;t.setAttribute("nonce",__webpack_require__.nc),t.setAttribute("data-webpack",a+c),t.src=e),r[e]=[n];var onScriptComplete=(a,n)=&gt;{t.onerror=t.onload=null,clearTimeout(u);var c=r[e];if(delete r[e],t.parentNode&amp;&amp;t.parentNode.removeChild(t),c&amp;&amp;c.forEach((e=&gt;e(n))),a)return a(n)},u=setTimeout(onScriptComplete.bind(null,void 0,{type:"timeout",target:t}),12e4);t.onerror=onScriptComplete.bind(null,t.onerror),t.onload=onScriptComplete.bind(null,t.onload),_&amp;&amp;document.head.appendChild(t)}},(()=&gt;{var e;__webpack_require__.g.importScripts&amp;&amp;(e=__webpack_require__.g.location+"");var r=__webpack_require__.g.document;if(!e&amp;&amp;r&amp;&amp;(r.currentScript&amp;&amp;"SCRIPT"===r.currentScript.tagName.toUpperCase()&amp;&amp;(e=r.currentScript.src),!e)){var a=r.getElementsByTagName("script");if(a.length)for(var n=a.length-1;n&gt;-1&amp;&amp;(!e||!/^http(s?):/.test(e));)e=a[n--].src}if(!e)throw new Error("Automatic publicPath is not supported in this browser");e=e.replace(/#.*$/,"").replace(/\?.*$/,"").replace(/\/[^\/]+$/,"/"),__webpack_require__.p=e})(),(()=&gt;{var e={978:0};__webpack_require__.f.j=(r,a)=&gt;{var n=__webpack_require__.o(e,r)?e[r]:void 0;if(0!==n)if(n)a.push(n[2]);else if(978!=r){var c=new Promise(((a,c)=&gt;n=e[r]=[a,c]));a.push(n[2]=c);var i=__webpack_require__.p+__webpack_require__.u(r),t=new Error;__webpack_require__.l(i,(a=&gt;{if(__webpack_require__.o(e,r)&amp;&amp;(0!==(n=e[r])&amp;&amp;(e[r]=void 0),n)){var c=a&amp;&amp;("load"===a.type?"missing":a.type),i=a&amp;&amp;a.target&amp;&amp;a.target.src;t.message="Loading chunk "+r+" failed.\n("+c+": "+i+")",t.name="ChunkLoadError",t.type=c,t.request=i,n[1](t)}}),"chunk-"+r,r)}else e[r]=0},__webpack_require__.O.j=r=&gt;0===e[r];var webpackJsonpCallback=(r,a)=&gt;{var n,c,[i,t,_]=a,b=0;if(i.some((r=&gt;0!==e[r]))){for(n in t)__webpack_require__.o(t,n)&amp;&amp;(__webpack_require__.m[n]=t[n]);if(_)var o=_(__webpack_require__)}for(r&amp;&amp;r(a);b&lt;i.length;b++)c=i[b],__webpack_require__.o(e,c)&amp;&amp;e[c]&amp;&amp;e[c][0](),e[c]=0;return __webpack_require__.O(o)},r=self.webpackChunkelementor_pro=self.webpackChunkelementor_pro||[];r.forEach(webpackJsonpCallback.bind(null,0)),r.push=webpackJsonpCallback.bind(null,r.push.bind(r))})()})();/*! elementor - v3.27.0 - 13-03-2025 */
(()=&gt;{"use strict";var e,r,_,t,a,i={},n={};function __webpack_require__(e){var r=n[e];if(void 0!==r)return r.exports;var _=n[e]={exports:{}};return i[e].call(_.exports,_,_.exports,__webpack_require__),_.exports}__webpack_require__.m=i,e=[],__webpack_require__.O=(r,_,t,a)=&gt;{if(!_){var i=1/0;for(u=0;u&lt;e.length;u++){for(var[_,t,a]=e[u],n=!0,c=0;c&lt;_.length;c++)(!1&amp;a||i&gt;=a)&amp;&amp;Object.keys(__webpack_require__.O).every((e=&gt;__webpack_require__.O[e](_[c])))?_.splice(c--,1):(n=!1,a&lt;i&amp;&amp;(i=a));if(n){e.splice(u--,1);var o=t();void 0!==o&amp;&amp;(r=o)}}return r}a=a||0;for(var u=e.length;u&gt;0&amp;&amp;e[u-1][2]&gt;a;u--)e[u]=e[u-1];e[u]=[_,t,a]},_=Object.getPrototypeOf?e=&gt;Object.getPrototypeOf(e):e=&gt;e.__proto__,__webpack_require__.t=function(e,t){if(1&amp;t&amp;&amp;(e=this(e)),8&amp;t)return e;if("object"==typeof e&amp;&amp;e){if(4&amp;t&amp;&amp;e.__esModule)return e;if(16&amp;t&amp;&amp;"function"==typeof e.then)return e}var a=Object.create(null);__webpack_require__.r(a);var i={};r=r||[null,_({}),_([]),_(_)];for(var n=2&amp;t&amp;&amp;e;"object"==typeof n&amp;&amp;!~r.indexOf(n);n=_(n))Object.getOwnPropertyNames(n).forEach((r=&gt;i[r]=()=&gt;e[r]));return i.default=()=&gt;e,__webpack_require__.d(a,i),a},__webpack_require__.d=(e,r)=&gt;{for(var _ in r)__webpack_require__.o(r,_)&amp;&amp;!__webpack_require__.o(e,_)&amp;&amp;Object.defineProperty(e,_,{enumerable:!0,get:r[_]})},__webpack_require__.f={},__webpack_require__.e=e=&gt;Promise.all(Object.keys(__webpack_require__.f).reduce(((r,_)=&gt;(__webpack_require__.f[_](e,r),r)),[])),__webpack_require__.u=e=&gt;304===e?"nested-title-keyboard-handler.fc9d01c2cd0ef46d20fd.bundle.min.js":835===e?"lightbox.f3fa607b705962362647.bundle.min.js":30===e?"text-path.5923566687faac82ea62.bundle.min.js":131===e?"accordion.36aa4c8c4eba17bc8e03.bundle.min.js":707===e?"alert.42cc1d522ef5c60bf874.bundle.min.js":457===e?"counter.12335f45aaa79d244f24.bundle.min.js":234===e?"progress.3200f67fe8fb78924bea.bundle.min.js":575===e?"tabs.537e7a0f178447960143.bundle.min.js":775===e?"toggle.a6177e2e3c2bc8864bef.bundle.min.js":180===e?"video.4343afefd25b5ede51a4.bundle.min.js":177===e?"image-carousel.6167d20b95b33386757b.bundle.min.js":212===e?"text-editor.c084ef86600b6f11690d.bundle.min.js":211===e?"wp-audio.c9624cb6e5dc9de86abd.bundle.min.js":915===e?"nested-accordion.c546968f7aebebc356f2.bundle.min.js":1===e?"contact-buttons.7c9983ed0d4964b951c2.bundle.min.js":336===e?"floating-bars.c1e9838906b386709cd4.bundle.min.js":216===e?"container.0754914e4611dc659a50.bundle.min.js":void 0,__webpack_require__.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),__webpack_require__.o=(e,r)=&gt;Object.prototype.hasOwnProperty.call(e,r),t={},a="elementorFrontend:",__webpack_require__.l=(e,r,_,i)=&gt;{if(t[e])t[e].push(r);else{var n,c;if(void 0!==_)for(var o=document.getElementsByTagName("script"),u=0;u&lt;o.length;u++){var b=o[u];if(b.getAttribute("src")==e||b.getAttribute("data-webpack")==a+_){n=b;break}}n||(c=!0,(n=document.createElement("script")).charset="utf-8",n.timeout=120,__webpack_require__.nc&amp;&amp;n.setAttribute("nonce",__webpack_require__.nc),n.setAttribute("data-webpack",a+_),n.src=e),t[e]=[r];var onScriptComplete=(r,_)=&gt;{n.onerror=n.onload=null,clearTimeout(d);var a=t[e];if(delete t[e],n.parentNode&amp;&amp;n.parentNode.removeChild(n),a&amp;&amp;a.forEach((e=&gt;e(_))),r)return r(_)},d=setTimeout(onScriptComplete.bind(null,void 0,{type:"timeout",target:n}),12e4);n.onerror=onScriptComplete.bind(null,n.onerror),n.onload=onScriptComplete.bind(null,n.onload),c&amp;&amp;document.head.appendChild(n)}},__webpack_require__.r=e=&gt;{"undefined"!=typeof Symbol&amp;&amp;Symbol.toStringTag&amp;&amp;Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},(()=&gt;{var e;__webpack_require__.g.importScripts&amp;&amp;(e=__webpack_require__.g.location+"");var r=__webpack_require__.g.document;if(!e&amp;&amp;r&amp;&amp;(r.currentScript&amp;&amp;"SCRIPT"===r.currentScript.tagName.toUpperCase()&amp;&amp;(e=r.currentScript.src),!e)){var _=r.getElementsByTagName("script");if(_.length)for(var t=_.length-1;t&gt;-1&amp;&amp;(!e||!/^http(s?):/.test(e));)e=_[t--].src}if(!e)throw new Error("Automatic publicPath is not supported in this browser");e=e.replace(/#.*$/,"").replace(/\?.*$/,"").replace(/\/[^\/]+$/,"/"),__webpack_require__.p=e})(),(()=&gt;{var e={76:0};__webpack_require__.f.j=(r,_)=&gt;{var t=__webpack_require__.o(e,r)?e[r]:void 0;if(0!==t)if(t)_.push(t[2]);else if(76!=r){var a=new Promise(((_,a)=&gt;t=e[r]=[_,a]));_.push(t[2]=a);var i=__webpack_require__.p+__webpack_require__.u(r),n=new Error;__webpack_require__.l(i,(_=&gt;{if(__webpack_require__.o(e,r)&amp;&amp;(0!==(t=e[r])&amp;&amp;(e[r]=void 0),t)){var a=_&amp;&amp;("load"===_.type?"missing":_.type),i=_&amp;&amp;_.target&amp;&amp;_.target.src;n.message="Loading chunk "+r+" failed.\n("+a+": "+i+")",n.name="ChunkLoadError",n.type=a,n.request=i,t[1](n)}}),"chunk-"+r,r)}else e[r]=0},__webpack_require__.O.j=r=&gt;0===e[r];var webpackJsonpCallback=(r,_)=&gt;{var t,a,[i,n,c]=_,o=0;if(i.some((r=&gt;0!==e[r]))){for(t in n)__webpack_require__.o(n,t)&amp;&amp;(__webpack_require__.m[t]=n[t]);if(c)var u=c(__webpack_require__)}for(r&amp;&amp;r(_);o&lt;i.length;o++)a=i[o],__webpack_require__.o(e,a)&amp;&amp;e[a]&amp;&amp;e[a][0](),e[a]=0;return __webpack_require__.O(u)},r=self.webpackChunkelementorFrontend=self.webpackChunkelementorFrontend||[];r.forEach(webpackJsonpCallback.bind(null,0)),r.push=webpackJsonpCallback.bind(null,r.push.bind(r))})()})();/*! elementor - v3.27.0 - 13-03-2025 */
(self.webpackChunkelementorFrontend=self.webpackChunkelementorFrontend||[]).push([[941],{5213:(e,t)=&gt;{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;t.default=(e,t)=&gt;{t=Array.isArray(t)?t:[t];for(const n of t)if(e.constructor.name===n.prototype[Symbol.toStringTag])return!0;return!1}},2890:(e,t,n)=&gt;{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0,n(4846),n(6211);class _default extends elementorModules.ViewModule{getDefaultSettings(){return{selectors:{elements:".elementor-element",nestedDocumentElements:".elementor .elementor-element"},classes:{editMode:"elementor-edit-mode"}}}getDefaultElements(){const e=this.getSettings("selectors");return{$elements:this.$element.find(e.elements).not(this.$element.find(e.nestedDocumentElements))}}getDocumentSettings(e){let t;if(this.isEdit){t={};const e=elementor.settings.page.model;jQuery.each(e.getActiveControls(),(n=&gt;{t[n]=e.attributes[n]}))}else t=this.$element.data("elementor-settings")||{};return this.getItems(t,e)}runElementsHandlers(){this.elements.$elements.each(((e,t)=&gt;setTimeout((()=&gt;elementorFrontend.elementsHandler.runReadyTrigger(t)))))}onInit(){this.$element=this.getSettings("$element"),super.onInit(),this.isEdit=this.$element.hasClass(this.getSettings("classes.editMode")),this.isEdit?elementor.on("document:loaded",(()=&gt;{elementor.settings.page.model.on("change",this.onSettingsChange.bind(this))})):this.runElementsHandlers()}onSettingsChange(){}}t.default=_default},9603:(e,t,n)=&gt;{"use strict";var r=n(6784);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0,n(4846),n(6211),n(9655);var i=r(n(5633));class CarouselHandlerBase extends i.default{getDefaultSettings(){return{selectors:{carousel:".swiper",swiperWrapper:".swiper-wrapper",slideContent:".swiper-slide",swiperArrow:".elementor-swiper-button",paginationWrapper:".swiper-pagination",paginationBullet:".swiper-pagination-bullet",paginationBulletWrapper:".swiper-pagination-bullets"}}}getDefaultElements(){const e=this.getSettings("selectors"),t={$swiperContainer:this.$element.find(e.carousel),$swiperWrapper:this.$element.find(e.swiperWrapper),$swiperArrows:this.$element.find(e.swiperArrow),$paginationWrapper:this.$element.find(e.paginationWrapper),$paginationBullets:this.$element.find(e.paginationBullet),$paginationBulletWrapper:this.$element.find(e.paginationBulletWrapper)};return t.$slides=t.$swiperContainer.find(e.slideContent),t}getSwiperSettings(){const e=this.getElementSettings(),t=+e.slides_to_show||3,n=1===t,r=elementorFrontend.config.responsive.activeBreakpoints,i={mobile:1,tablet:n?1:2},s={slidesPerView:t,loop:"yes"===e.infinite,speed:e.speed,handleElementorBreakpoints:!0,breakpoints:{}};let o=t;Object.keys(r).reverse().forEach((t=&gt;{const n=i[t]?i[t]:o;s.breakpoints[r[t].value]={slidesPerView:+e["slides_to_show_"+t]||n,slidesPerGroup:+e["slides_to_scroll_"+t]||1},e.image_spacing_custom&amp;&amp;(s.breakpoints[r[t].value].spaceBetween=this.getSpaceBetween(t)),o=+e["slides_to_show_"+t]||n})),"yes"===e.autoplay&amp;&amp;(s.autoplay={delay:e.autoplay_speed,disableOnInteraction:"yes"===e.pause_on_interaction}),n?(s.effect=e.effect,"fade"===e.effect&amp;&amp;(s.fadeEffect={crossFade:!0})):s.slidesPerGroup=+e.slides_to_scroll||1,e.image_spacing_custom&amp;&amp;(s.spaceBetween=this.getSpaceBetween());const a="arrows"===e.navigation||"both"===e.navigation,l="dots"===e.navigation||"both"===e.navigation||e.pagination;return a&amp;&amp;(s.navigation={prevEl:".elementor-swiper-button-prev",nextEl:".elementor-swiper-button-next"}),l&amp;&amp;(s.pagination={el:`.elementor-element-${this.getID()} .swiper-pagination`,type:e.pagination?e.pagination:"bullets",clickable:!0,renderBullet:(e,t)=&gt;`&lt;span class="${t}" role="button" tabindex="0" data-bullet-index="${e}" aria-label="${elementorFrontend.config.i18n.a11yCarouselPaginationBulletMessage} ${e+1}"&gt;&lt;/span&gt;`}),"yes"===e.lazyload&amp;&amp;(s.lazy={loadPrevNext:!0,loadPrevNextAmount:1}),s.a11y={enabled:!0,prevSlideMessage:elementorFrontend.config.i18n.a11yCarouselPrevSlideMessage,nextSlideMessage:elementorFrontend.config.i18n.a11yCarouselNextSlideMessage,firstSlideMessage:elementorFrontend.config.i18n.a11yCarouselFirstSlideMessage,lastSlideMessage:elementorFrontend.config.i18n.a11yCarouselLastSlideMessage},s.on={slideChange:()=&gt;{this.a11ySetPaginationTabindex(),this.handleElementHandlers(),this.a11ySetSlideAriaHidden()},init:()=&gt;{this.a11ySetPaginationTabindex(),this.a11ySetSlideAriaHidden("initialisation")}},this.applyOffsetSettings(e,s,t),s}getOffsetWidth(){const e=elementorFrontend.getCurrentDeviceMode();return elementorFrontend.utils.controls.getResponsiveControlValue(this.getElementSettings(),"offset_width","size",e)||0}applyOffsetSettings(e,t,n){const r=e.offset_sides;if(!(elementorFrontend.isEditMode()&amp;&amp;"NestedCarousel"===this.constructor.name)&amp;&amp;r&amp;&amp;"none"!==r)switch(r){case"right":this.forceSliderToShowNextSlideWhenOnLast(t,n),this.addClassToSwiperContainer("offset-right");break;case"left":this.addClassToSwiperContainer("offset-left");break;case"both":this.forceSliderToShowNextSlideWhenOnLast(t,n),this.addClassToSwiperContainer("offset-both")}}forceSliderToShowNextSlideWhenOnLast(e,t){e.slidesPerView=t+.001}addClassToSwiperContainer(e){this.getDefaultElements().$swiperContainer[0].classList.add(e)}async onInit(){if(super.onInit(...arguments),!this.elements.$swiperContainer.length||2&gt;this.elements.$slides.length)return;await this.initSwiper();"yes"===this.getElementSettings().pause_on_hover&amp;&amp;this.togglePauseOnHover(!0)}async initSwiper(){const e=elementorFrontend.utils.swiper;this.swiper=await new e(this.elements.$swiperContainer,this.getSwiperSettings()),this.elements.$swiperContainer.data("swiper",this.swiper)}bindEvents(){this.elements.$swiperArrows.on("keydown",this.onDirectionArrowKeydown.bind(this)),this.elements.$paginationWrapper.on("keydown",".swiper-pagination-bullet",this.onDirectionArrowKeydown.bind(this)),this.elements.$swiperContainer.on("keydown",".swiper-slide",this.onDirectionArrowKeydown.bind(this)),this.$element.find(":focusable").on("focus",this.onFocusDisableAutoplay.bind(this)),elementorFrontend.elements.$window.on("resize",this.getSwiperSettings.bind(this))}unbindEvents(){this.elements.$swiperArrows.off(),this.elements.$paginationWrapper.off(),this.elements.$swiperContainer.off(),this.$element.find(":focusable").off(),elementorFrontend.elements.$window.off("resize")}onDirectionArrowKeydown(e){const t=elementorFrontend.config.is_rtl,n=e.originalEvent.code,r=t?"ArrowLeft":"ArrowRight";if(!(-1!==["ArrowLeft","ArrowRight"].indexOf(n)))return!0;(t?"ArrowRight":"ArrowLeft")===n?this.swiper.slidePrev():r===n&amp;&amp;this.swiper.slideNext()}onFocusDisableAutoplay(){this.swiper.autoplay.stop()}updateSwiperOption(e){const t=this.getElementSettings()[e],n=this.swiper.params;switch(e){case"autoplay_speed":n.autoplay.delay=t;break;case"speed":n.speed=t}this.swiper.update()}getChangeableProperties(){return{pause_on_hover:"pauseOnHover",autoplay_speed:"delay",speed:"speed",arrows_position:"arrows_position"}}onElementChange(e){if(0===e.indexOf("image_spacing_custom"))return void this.updateSpaceBetween(e);if(this.getChangeableProperties()[e])if("pause_on_hover"===e){const e=this.getElementSettings("pause_on_hover");this.togglePauseOnHover("yes"===e)}else this.updateSwiperOption(e)}onEditSettingsChange(e){"activeItemIndex"===e&amp;&amp;this.swiper.slideToLoop(this.getEditSettings("activeItemIndex")-1)}getSpaceBetween(){let e=arguments.length&gt;0&amp;&amp;void 0!==arguments[0]?arguments[0]:null;const t=elementorFrontend.utils.controls.getResponsiveControlValue(this.getElementSettings(),"image_spacing_custom","size",e);return Number(t)||0}updateSpaceBetween(e){const t=e.match("image_spacing_custom_(.*)"),n=t?t[1]:"desktop",r=this.getSpaceBetween(n);"desktop"!==n&amp;&amp;(this.swiper.params.breakpoints[elementorFrontend.config.responsive.activeBreakpoints[n].value].spaceBetween=r),this.swiper.params.spaceBetween=r,this.swiper.update()}getPaginationBullets(){let e=arguments.length&gt;0&amp;&amp;void 0!==arguments[0]?arguments[0]:"array";const t=this.$element.find(this.getSettings("selectors").paginationBullet);return"array"===e?Array.from(t):t}a11ySetPaginationTabindex(){const e=this.swiper?.params?.pagination.bulletClass,t=this.swiper?.params?.pagination.bulletActiveClass;this.getPaginationBullets().forEach((e=&gt;{e.classList?.contains(t)||e.removeAttribute("tabindex")}));const n="ArrowLeft"===event?.code||"ArrowRight"===event?.code;event?.target?.classList?.contains(e)&amp;&amp;n&amp;&amp;this.$element.find(`.${t}`).trigger("focus")}getSwiperWrapperTranformXValue(){let e=this.elements.$swiperWrapper[0]?.style.transform;return e=e.replace("translate3d(",""),e=e.split(","),e=parseInt(e[0].replace("px","")),e||0}a11ySetSlideAriaHidden(){if("number"!=typeof("initialisation"===(arguments.length&gt;0&amp;&amp;void 0!==arguments[0]?arguments[0]:"")?0:this.swiper?.activeIndex))return;const e=this.getSwiperWrapperTranformXValue(),t=this.elements.$swiperWrapper[0].clientWidth;this.elements.$swiperContainer.find(this.getSettings("selectors").slideContent).each(((n,r)=&gt;{0&lt;=r.offsetLeft+e&amp;&amp;t&gt;r.offsetLeft+e?(r.removeAttribute("aria-hidden"),r.removeAttribute("inert")):(r.setAttribute("aria-hidden",!0),r.setAttribute("inert",""))}))}handleElementHandlers(){}}t.default=CarouselHandlerBase},5633:(e,t,n)=&gt;{"use strict";var r=n(6784);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var i=r(n(7224));class SwiperHandlerBase extends i.default{getInitialSlide(){const e=this.getEditSettings();return e.activeItemIndex?e.activeItemIndex-1:0}getSlidesCount(){return this.elements.$slides.length}togglePauseOnHover(e){e?this.elements.$swiperContainer.on({mouseenter:()=&gt;{this.swiper.autoplay.stop()},mouseleave:()=&gt;{this.swiper.autoplay.start()}}):this.elements.$swiperContainer.off("mouseenter mouseleave")}handleKenBurns(){const e=this.getSettings();this.$activeImageBg&amp;&amp;this.$activeImageBg.removeClass(e.classes.kenBurnsActive),this.activeItemIndex=this.swiper?this.swiper.activeIndex:this.getInitialSlide(),this.swiper?this.$activeImageBg=jQuery(this.swiper.slides[this.activeItemIndex]).children("."+e.classes.slideBackground):this.$activeImageBg=jQuery(this.elements.$slides[0]).children("."+e.classes.slideBackground),this.$activeImageBg.addClass(e.classes.kenBurnsActive)}}t.default=SwiperHandlerBase},7224:(e,t,n)=&gt;{"use strict";n(5724),n(4846),n(7458),n(6211),n(9655),e.exports=elementorModules.ViewModule.extend({$element:null,editorListeners:null,onElementChange:null,onEditSettingsChange:null,onPageSettingsChange:null,isEdit:null,__construct(e){this.isActive(e)&amp;&amp;(this.$element=e.$element,this.isEdit=this.$element.hasClass("elementor-element-edit-mode"),this.isEdit&amp;&amp;this.addEditorListeners())},isActive:()=&gt;!0,isElementInTheCurrentDocument(){return!!elementorFrontend.isEditMode()&amp;&amp;elementor.documents.currentDocument.id.toString()===this.$element[0].closest(".elementor").dataset.elementorId},findElement(e){var t=this.$element;return t.find(e).filter((function(){return jQuery(this).parent().closest(".elementor-element").is(t)}))},getUniqueHandlerID(e,t){return e||(e=this.getModelCID()),t||(t=this.$element),e+t.attr("data-element_type")+this.getConstructorID()},initEditorListeners(){var e=this;if(e.editorListeners=[{event:"element:destroy",to:elementor.channels.data,callback(t){t.cid===e.getModelCID()&amp;&amp;e.onDestroy()}}],e.onElementChange){const t=e.getWidgetType()||e.getElementType();let n="change";"global"!==t&amp;&amp;(n+=":"+t),e.editorListeners.push({event:n,to:elementor.channels.editor,callback(t,n){e.getUniqueHandlerID(n.model.cid,n.$el)===e.getUniqueHandlerID()&amp;&amp;e.onElementChange(t.model.get("name"),t,n)}})}e.onEditSettingsChange&amp;&amp;e.editorListeners.push({event:"change:editSettings",to:elementor.channels.editor,callback(t,n){if(n.model.cid!==e.getModelCID())return;const r=Object.keys(t.changed)[0];e.onEditSettingsChange(r,t.changed[r])}}),["page"].forEach((function(t){var n="on"+t[0].toUpperCase()+t.slice(1)+"SettingsChange";e[n]&amp;&amp;e.editorListeners.push({event:"change",to:elementor.settings[t].model,callback(t){e[n](t.changed)}})}))},getEditorListeners(){return this.editorListeners||this.initEditorListeners(),this.editorListeners},addEditorListeners(){var e=this.getUniqueHandlerID();this.getEditorListeners().forEach((function(t){elementorFrontend.addListenerOnce(e,t.event,t.callback,t.to)}))},removeEditorListeners(){var e=this.getUniqueHandlerID();this.getEditorListeners().forEach((function(t){elementorFrontend.removeListeners(e,t.event,null,t.to)}))},getElementType(){return this.$element.data("element_type")},getWidgetType(){const e=this.$element.data("widget_type");if(e)return e.split(".")[0]},getID(){return this.$element.data("id")},getModelCID(){return this.$element.data("model-cid")},getElementSettings(e){let t={};const n=this.getModelCID();if(this.isEdit&amp;&amp;n){const e=elementorFrontend.config.elements.data[n],r=e.attributes;let i=r.widgetType||r.elType;r.isInner&amp;&amp;(i="inner-"+i);let s=elementorFrontend.config.elements.keys[i];s||(s=elementorFrontend.config.elements.keys[i]=[],jQuery.each(e.controls,((e,t)=&gt;{(t.frontend_available||t.editor_available)&amp;&amp;s.push(e)}))),jQuery.each(e.getActiveControls(),(function(e){if(-1!==s.indexOf(e)){let n=r[e];n.toJSON&amp;&amp;(n=n.toJSON()),t[e]=n}}))}else t=this.$element.data("settings")||{};return this.getItems(t,e)},getEditSettings(e){var t={};return this.isEdit&amp;&amp;(t=elementorFrontend.config.elements.editSettings[this.getModelCID()].attributes),this.getItems(t,e)},getCurrentDeviceSetting(e){return elementorFrontend.getCurrentDeviceSetting(this.getElementSettings(),e)},onInit(){this.isActive(this.getSettings())&amp;&amp;elementorModules.ViewModule.prototype.onInit.apply(this,arguments)},onDestroy(){this.isEdit&amp;&amp;this.removeEditorListeners(),this.unbindEvents&amp;&amp;this.unbindEvents()}})},8140:(e,t,n)=&gt;{"use strict";var r=n(6784);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0,n(4846),n(6211);var i=r(n(7224));class StretchedElement extends i.default{getStretchedClass(){return"e-stretched"}getStretchSettingName(){return"stretch_element"}getStretchActiveValue(){return"yes"}bindEvents(){const e=this.getUniqueHandlerID();elementorFrontend.addListenerOnce(e,"resize",this.stretch),elementorFrontend.addListenerOnce(e,"sticky:stick",this.stretch,this.$element),elementorFrontend.addListenerOnce(e,"sticky:unstick",this.stretch,this.$element),elementorFrontend.isEditMode()&amp;&amp;(this.onKitChangeStretchContainerChange=this.onKitChangeStretchContainerChange.bind(this),elementor.channels.editor.on("kit:change:stretchContainer",this.onKitChangeStretchContainerChange))}unbindEvents(){elementorFrontend.removeListeners(this.getUniqueHandlerID(),"resize",this.stretch),elementorFrontend.isEditMode()&amp;&amp;elementor.channels.editor.off("kit:change:stretchContainer",this.onKitChangeStretchContainerChange)}isActive(e){return elementorFrontend.isEditMode()||e.$element.hasClass(this.getStretchedClass())}getStretchElementForConfig(){let e=arguments.length&gt;0&amp;&amp;void 0!==arguments[0]?arguments[0]:null;return e?this.$element.find(e):this.$element}getStretchElementConfig(){return{element:this.getStretchElementForConfig(),selectors:{container:this.getStretchContainer()},considerScrollbar:elementorFrontend.isEditMode()&amp;&amp;elementorFrontend.config.is_rtl}}initStretch(){this.stretch=this.stretch.bind(this),this.stretchElement=new elementorModules.frontend.tools.StretchElement(this.getStretchElementConfig())}getStretchContainer(){return elementorFrontend.getKitSettings("stretched_section_container")||window}isStretchSettingEnabled(){return this.getElementSettings(this.getStretchSettingName())===this.getStretchActiveValue()}stretch(){this.isStretchSettingEnabled()&amp;&amp;this.stretchElement.stretch()}onInit(){this.isActive(this.getSettings())&amp;&amp;(this.initStretch(),super.onInit(...arguments),this.stretch())}onElementChange(e){this.getStretchSettingName()===e&amp;&amp;(this.isStretchSettingEnabled()?this.stretch():this.stretchElement.reset())}onKitChangeStretchContainerChange(){this.stretchElement.setSettings("selectors.container",this.getStretchContainer()),this.stretch()}}t.default=StretchedElement},4946:(e,t,n)=&gt;{"use strict";var r=n(6784),i=r(n(1265)),s=r(n(2890)),o=r(n(7955)),a=r(n(8140)),l=r(n(7224)),c=r(n(5633)),u=r(n(9603)),d=r(n(4328));i.default.frontend={Document:s.default,tools:{StretchElement:o.default},handlers:{Base:l.default,StretchedElement:a.default,SwiperBase:c.default,CarouselBase:u.default,NestedTabs:d.default}}},7955:e=&gt;{"use strict";e.exports=elementorModules.ViewModule.extend({getDefaultSettings:()=&gt;({element:null,direction:elementorFrontend.config.is_rtl?"right":"left",selectors:{container:window},considerScrollbar:!1,cssOutput:"inline"}),getDefaultElements(){return{$element:jQuery(this.getSettings("element"))}},stretch(){const e=this.getSettings();let t;try{t=jQuery(e.selectors.container)}catch(e){}t&amp;&amp;t.length||(t=jQuery(this.getDefaultSettings().selectors.container)),this.reset();var n=this.elements.$element,r=t.innerWidth(),i=n.offset().left,s="fixed"===n.css("position"),o=s?0:i,a=window===t[0];if(!a){var l=t.offset().left;s&amp;&amp;(o=l),i&gt;l&amp;&amp;(o=i-l)}if(e.considerScrollbar&amp;&amp;a){o-=window.innerWidth-r}s||(elementorFrontend.config.is_rtl&amp;&amp;(o=r-(n.outerWidth()+o)),o=-o),e.margin&amp;&amp;(o+=e.margin);var c={};let u=r;e.margin&amp;&amp;(u-=2*e.margin),c.width=u+"px",c[e.direction]=o+"px","variables"!==e.cssOutput?n.css(c):this.applyCssVariables(n,c)},reset(){const e={},t=this.getSettings(),n=this.elements.$element;"variables"!==t.cssOutput?(e.width="",e[t.direction]="",n.css(e)):this.resetCssVariables(n)},applyCssVariables(e,t){e.css("--stretch-width",t.width),t.left?e.css("--stretch-left",t.left):e.css("--stretch-right",t.right)},resetCssVariables(e){e.css({"--stretch-width":"","--stretch-left":"","--stretch-right":""})}})},7557:(e,t)=&gt;{"use strict";function getChildrenWidth(e){let t=0;const n=e[0].parentNode,r=getComputedStyle(n),i=parseFloat(r.gap)||0;for(let n=0;n&lt;e.length;n++)t+=e[n].offsetWidth+i;return t}Object.defineProperty(t,"__esModule",{value:!0}),t.changeScrollStatus=function changeScrollStatus(e,t){"mousedown"===t.type?(e.classList.add("e-scroll"),e.dataset.pageX=t.pageX):(e.classList.remove("e-scroll","e-scroll-active"),e.dataset.pageX="")},t.setHorizontalScrollAlignment=function setHorizontalScrollAlignment(e){let{element:t,direction:n,justifyCSSVariable:r,horizontalScrollStatus:i}=e;if(!t)return;!function isHorizontalScroll(e,t){return e.clientWidth&lt;getChildrenWidth(e.children)&amp;&amp;"enable"===t}(t,i)?t.style.setProperty(r,""):function initialScrollPosition(e,t,n){const r=elementorFrontend.config.is_rtl;if("end"===t)e.style.setProperty(n,"start"),e.scrollLeft=r?-1*getChildrenWidth(e.children):getChildrenWidth(e.children);else e.style.setProperty(n,"start"),e.scrollLeft=0}(t,n,r)},t.setHorizontalTitleScrollValues=function setHorizontalTitleScrollValues(e,t,n){const r=e.classList.contains("e-scroll"),i="enable"===t,s=e.scrollWidth&gt;e.clientWidth;if(!r||!i||!s)return;n.preventDefault();const o=parseFloat(e.dataset.pageX),a=n.pageX-o;let l=0;l=20&lt;a?5:-20&gt;a?-5:a;e.scrollLeft=e.scrollLeft-l,e.classList.add("e-scroll-active")}},2946:(e,t,n)=&gt;{"use strict";var r=n(6784);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var i=r(n(751)),s=r(n(5213));class ArgsObject extends i.default{static getInstanceType(){return"ArgsObject"}constructor(e){super(),this.args=e}requireArgument(e){let t=arguments.length&gt;1&amp;&amp;void 0!==arguments[1]?arguments[1]:this.args;if(!Object.prototype.hasOwnProperty.call(t,e))throw Error(`${e} is required.`)}requireArgumentType(e,t){let n=arguments.length&gt;2&amp;&amp;void 0!==arguments[2]?arguments[2]:this.args;if(this.requireArgument(e,n),typeof n[e]!==t)throw Error(`${e} invalid type: ${t}.`)}requireArgumentInstance(e,t){let n=arguments.length&gt;2&amp;&amp;void 0!==arguments[2]?arguments[2]:this.args;if(this.requireArgument(e,n),!(n[e]instanceof t||(0,s.default)(n[e],t)))throw Error(`${e} invalid instance.`)}requireArgumentConstructor(e,t){let n=arguments.length&gt;2&amp;&amp;void 0!==arguments[2]?arguments[2]:this.args;if(this.requireArgument(e,n),n[e].constructor.toString()!==t.prototype.constructor.toString())throw Error(`${e} invalid constructor type.`)}}t.default=ArgsObject},8685:(e,t,n)=&gt;{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=t.ForceMethodImplementation=void 0,n(6281);class ForceMethodImplementation extends Error{constructor(){let e=arguments.length&gt;0&amp;&amp;void 0!==arguments[0]?arguments[0]:{},t=arguments.length&gt;1&amp;&amp;void 0!==arguments[1]?arguments[1]:{};super(`${e.isStatic?"static ":""}${e.fullName}() should be implemented, please provide '${e.functionName||e.fullName}' functionality.`,t),Object.keys(t).length&amp;&amp;console.error(t),Error.captureStackTrace(this,ForceMethodImplementation)}}t.ForceMethodImplementation=ForceMethodImplementation;t.default=e=&gt;{const t=Error().stack.split("\n")[2].trim(),n=t.startsWith("at new")?"constructor":t.split(" ")[1],r={};if(r.functionName=n,r.fullName=n,r.functionName.includes(".")){const e=r.functionName.split(".");r.className=e[0],r.functionName=e[1]}else r.isStatic=!0;throw new ForceMethodImplementation(r,e)}},751:(e,t,n)=&gt;{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0,n(5724),n(4846),n(9655);class InstanceType{static[Symbol.hasInstance](e){let t=super[Symbol.hasInstance](e);if(e&amp;&amp;!e.constructor.getInstanceType)return t;if(e&amp;&amp;(e.instanceTypes||(e.instanceTypes=[]),t||this.getInstanceType()===e.constructor.getInstanceType()&amp;&amp;(t=!0),t)){const t=this.getInstanceType===InstanceType.getInstanceType?"BaseInstanceType":this.getInstanceType();-1===e.instanceTypes.indexOf(t)&amp;&amp;e.instanceTypes.push(t)}return!t&amp;&amp;e&amp;&amp;(t=e.instanceTypes&amp;&amp;Array.isArray(e.instanceTypes)&amp;&amp;-1!==e.instanceTypes.indexOf(this.getInstanceType())),t}static getInstanceType(){elementorModules.ForceMethodImplementation()}constructor(){let e=new.target;const t=[];for(;e.__proto__&amp;&amp;e.__proto__.name;)t.push(e.__proto__),e=e.__proto__;t.reverse().forEach((e=&gt;this instanceof e))}}t.default=InstanceType},641:(e,t,n)=&gt;{"use strict";n(5724),n(4846),n(7458),n(9655);const Module=function(){const e=jQuery,t=arguments,n=this,r={};let i;this.getItems=function(e,t){if(t){const n=t.split("."),r=n.splice(0,1);if(!n.length)return e[r];if(!e[r])return;return this.getItems(e[r],n.join("."))}return e},this.getSettings=function(e){return this.getItems(i,e)},this.setSettings=function(t,r,s){if(s||(s=i),"object"==typeof t)return e.extend(s,t),n;const o=t.split("."),a=o.splice(0,1);return o.length?(s[a]||(s[a]={}),n.setSettings(o.join("."),r,s[a])):(s[a]=r,n)},this.getErrorMessage=function(e,t){let n;if("forceMethodImplementation"===e)n=`The method '${t}' must to be implemented in the inheritor child.`;else n="An error occurs";return n},this.forceMethodImplementation=function(e){throw new Error(this.getErrorMessage("forceMethodImplementation",e))},this.on=function(t,i){if("object"==typeof t)return e.each(t,(function(e){n.on(e,this)})),n;return t.split(" ").forEach((function(e){r[e]||(r[e]=[]),r[e].push(i)})),n},this.off=function(e,t){if(!r[e])return n;if(!t)return delete r[e],n;const i=r[e].indexOf(t);return-1!==i&amp;&amp;(delete r[e][i],r[e]=r[e].filter((e=&gt;e))),n},this.trigger=function(t){const i="on"+t[0].toUpperCase()+t.slice(1),s=Array.prototype.slice.call(arguments,1);n[i]&amp;&amp;n[i].apply(n,s);const o=r[t];return o?(e.each(o,(function(e,t){t.apply(n,s)})),n):n},n.__construct.apply(n,t),e.each(n,(function(e){const t=n[e];"function"==typeof t&amp;&amp;(n[e]=function(){return t.apply(n,arguments)})})),function(){i=n.getDefaultSettings();const r=t[0];r&amp;&amp;e.extend(!0,i,r)}(),n.trigger("init")};Module.prototype.__construct=function(){},Module.prototype.getDefaultSettings=function(){return{}},Module.prototype.getConstructorID=function(){return this.constructor.name},Module.extend=function(e){const t=jQuery,n=this,child=function(){return n.apply(this,arguments)};return t.extend(child,n),(child.prototype=Object.create(t.extend({},n.prototype,e))).constructor=child,child.__super__=n.prototype,child},e.exports=Module},3980:(e,t,n)=&gt;{"use strict";var r=n(6784);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0,n(5724);var i=r(n(2425));t.default=i.default.extend({getDefaultSettings:()=&gt;({container:null,items:null,columnsCount:3,verticalSpaceBetween:30}),getDefaultElements(){return{$container:jQuery(this.getSettings("container")),$items:jQuery(this.getSettings("items"))}},run(){var e=[],t=this.elements.$container.position().top,n=this.getSettings(),r=n.columnsCount;t+=parseInt(this.elements.$container.css("margin-top"),10),this.elements.$items.each((function(i){var s=Math.floor(i/r),o=jQuery(this),a=o[0].getBoundingClientRect().height+n.verticalSpaceBetween;if(s){var l=o.position(),c=i%r,u=l.top-t-e[c];u-=parseInt(o.css("margin-top"),10),u*=-1,o.css("margin-top",u+"px"),e[c]+=a}else e.push(a)}))}})},2970:(e,t,n)=&gt;{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0,n(5724);t.default=class Scroll{static scrollObserver(e){let t=0;const n={root:e.root||null,rootMargin:e.offset||"0px",threshold:function(){let e=arguments.length&gt;0&amp;&amp;void 0!==arguments[0]?arguments[0]:0;const t=[];if(e&gt;0&amp;&amp;e&lt;=100){const n=100/e;for(let e=0;e&lt;=100;e+=n)t.push(e/100)}else t.push(0);return t}(e.sensitivity)};return new IntersectionObserver((function handleIntersect(n){const r=n[0].boundingClientRect.y,i=n[0].isIntersecting,s=r&lt;t?"down":"up",o=Math.abs(parseFloat((100*n[0].intersectionRatio).toFixed(2)));e.callback({sensitivity:e.sensitivity,isInViewport:i,scrollPercentage:o,intersectionScrollDirection:s}),t=r}),n)}static getElementViewportPercentage(e){let t=arguments.length&gt;1&amp;&amp;void 0!==arguments[1]?arguments[1]:{};const n=e[0].getBoundingClientRect(),r=t.start||0,i=t.end||0,s=window.innerHeight*r/100,o=window.innerHeight*i/100,a=n.top-window.innerHeight,l=0-a+s,c=n.top+s+e.height()-a+o,u=Math.max(0,Math.min(l/c,1));return parseFloat((100*u).toFixed(2))}static getPageScrollPercentage(){let e=arguments.length&gt;0&amp;&amp;void 0!==arguments[0]?arguments[0]:{},t=arguments.length&gt;1?arguments[1]:void 0;const n=e.start||0,r=e.end||0,i=t||document.documentElement.scrollHeight-document.documentElement.clientHeight,s=i*n/100,o=i+s+i*r/100;return(document.documentElement.scrollTop+document.body.scrollTop+s)/o*100}}},2425:(e,t,n)=&gt;{"use strict";var r=n(6784);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var i=r(n(641));t.default=i.default.extend({elements:null,getDefaultElements:()=&gt;({}),bindEvents(){},onInit(){this.initElements(),this.bindEvents()},initElements(){this.elements=this.getDefaultElements()}})},1265:(e,t,n)=&gt;{"use strict";var r=n(6784);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var i=r(n(641)),s=r(n(2425)),o=r(n(2946)),a=r(n(3980)),l=r(n(2970)),c=r(n(8685));t.default=window.elementorModules={Module:i.default,ViewModule:s.default,ArgsObject:o.default,ForceMethodImplementation:c.default,utils:{Masonry:a.default,Scroll:l.default}}},4328:(e,t,n)=&gt;{"use strict";var r=n(6784);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0,n(4846),n(7458),n(6211);var i=r(n(7224)),s=n(7557);class NestedTabs extends i.default{getTabTitleFilterSelector(e){return`[${this.getSettings("dataAttributes").tabIndex}="${e}"]`}getTabContentFilterSelector(e){return`*:nth-child(${e})`}getTabIndex(e){return e.getAttribute(this.getSettings("dataAttributes").tabIndex)}getActiveTabIndex(){const e=this.getSettings(),t=e.ariaAttributes.activeTitleSelector,n=e.dataAttributes.tabIndex;return this.elements.$tabTitles.filter(t).attr(n)||null}getWidgetNumber(){return this.$element.find("&gt; .elementor-widget-container &gt; .e-n-tabs, &gt; .e-n-tabs").attr("data-widget-number")}getDefaultSettings(){const e=this.getWidgetNumber();return{selectors:{widgetContainer:`[data-widget-number="${e}"]`,tabTitle:`[aria-controls*="e-n-tab-content-${e}"]`,tabTitleIcon:`[id*="e-n-tab-title-${e}"] &gt; .e-n-tab-icon`,tabTitleText:`[id*="e-n-tab-title-${e}"] &gt; .e-n-tab-title-text`,tabContent:`[data-widget-number="${e}"] &gt; .e-n-tabs-content &gt; .e-con`,headingContainer:`[data-widget-number="${e}"] &gt; .e-n-tabs-heading`,activeTabContentContainers:`[id*="e-n-tab-content-${e}"].e-active`},classes:{active:"e-active"},dataAttributes:{tabIndex:"data-tab-index"},ariaAttributes:{titleStateAttribute:"aria-selected",activeTitleSelector:'[aria-selected="true"]'},showTabFn:"show",hideTabFn:"hide",toggleSelf:!1,hidePrevious:!0,autoExpand:!0}}getDefaultElements(){const e=this.getSettings("selectors");return{$widgetContainer:this.findElement(e.widgetContainer),$tabTitles:this.findElement(e.tabTitle),$tabContents:this.findElement(e.tabContent),$headingContainer:this.findElement(e.headingContainer)}}getKeyboardNavigationSettings(){return this.getSettings()}activateDefaultTab(){const e=this.getSettings(),t=this.getEditSettings("activeItemIndex")||1,n={showTabFn:e.showTabFn,hideTabFn:e.hideTabFn};this.setSettings({showTabFn:"show",hideTabFn:"hide"}),this.changeActiveTab(t),this.setSettings(n),this.elements.$widgetContainer.addClass("e-activated")}deactivateActiveTab(e){const t=this.getSettings(),n=t.classes.active,r=t.ariaAttributes.activeTitleSelector,i="."+n,s=this.elements.$tabTitles.filter(r),o=this.elements.$tabContents.filter(i);return this.setTabDeactivationAttributes(s,e),o.removeClass(n),o[t.hideTabFn](0,(()=&gt;this.onHideTabContent(o))),o}getTitleActivationAttributes(){const e=this.getSettings("ariaAttributes").titleStateAttribute;return{tabindex:"0",[e]:"true"}}setTabDeactivationAttributes(e){const t=this.getSettings("ariaAttributes").titleStateAttribute;e.attr({tabindex:"-1",[t]:"false"})}onHideTabContent(){}activateTab(e){const t=this.getSettings(),n=t.classes.active,r="show"===t.showTabFn?0:400;let i=this.elements.$tabTitles.filter(this.getTabTitleFilterSelector(e)),s=this.elements.$tabContents.filter(this.getTabContentFilterSelector(e));if(!i.length){const t=Math.max(e-1,1);i=this.elements.$tabTitles.filter(this.getTabTitleFilterSelector(t)),s=this.elements.$tabContents.filter(this.getTabContentFilterSelector(t))}i.attr(this.getTitleActivationAttributes()),s.addClass(n),s[t.showTabFn](r,(()=&gt;this.onShowTabContent(s)))}onShowTabContent(e){elementorFrontend.elements.$window.trigger("elementor-pro/motion-fx/recalc"),elementorFrontend.elements.$window.trigger("elementor/nested-tabs/activate",e),elementorFrontend.elements.$window.trigger("elementor/bg-video/recalc")}isActiveTab(e){const t=this.getSettings(),n="true"===this.elements.$tabTitles.filter(`[${t.dataAttributes.tabIndex}="${e}"]`).attr(t.ariaAttributes.titleStateAttribute),r=this.elements.$tabContents.filter(this.getTabContentFilterSelector(e)).hasClass(this.getActiveClass());return n&amp;&amp;r}onTabClick(e){e.preventDefault(),this.changeActiveTab(e.currentTarget?.getAttribute(this.getSettings("dataAttributes").tabIndex),!0)}getTabEvents(){return{click:this.onTabClick.bind(this)}}getHeadingEvents(){const e=this.elements.$headingContainer[0];return{mousedown:s.changeScrollStatus.bind(this,e),mouseup:s.changeScrollStatus.bind(this,e),mouseleave:s.changeScrollStatus.bind(this,e),mousemove:s.setHorizontalTitleScrollValues.bind(this,e,this.getHorizontalScrollSetting())}}bindEvents(){this.elements.$tabTitles.on(this.getTabEvents()),this.elements.$headingContainer.on(this.getHeadingEvents()),elementorFrontend.elements.$window.on("resize",this.onResizeUpdateHorizontalScrolling.bind(this)),elementorFrontend.elements.$window.on("resize",this.setTouchMode.bind(this)),elementorFrontend.elements.$window.on("elementor/nested-tabs/activate",this.reInitSwipers),elementorFrontend.elements.$window.on("elementor/nested-elements/activate-by-keyboard",this.changeActiveTabByKeyboard.bind(this)),elementorFrontend.elements.$window.on("elementor/nested-container/atomic-repeater",this.linkContainer.bind(this))}unbindEvents(){this.elements.$tabTitles.off(),this.elements.$headingContainer.off(),this.elements.$tabContents.children().off(),elementorFrontend.elements.$window.off("resize",this.onResizeUpdateHorizontalScrolling.bind(this)),elementorFrontend.elements.$window.off("resize",this.setTouchMode.bind(this)),elementorFrontend.elements.$window.off("elementor/nested-tabs/activate",this.reInitSwipers),elementorFrontend.elements.$window.off("elementor/nested-elements/activate-by-keyboard",this.changeActiveTabByKeyboard.bind(this)),elementorFrontend.elements.$window.off("elementor/nested-container/atomic-repeater",this.linkContainer.bind(this))}reInitSwipers(e,t){const n=t.querySelectorAll(".swiper");for(const e of n){if(!e.swiper)return;e.swiper.initialized=!1,e.swiper.init()}}onInit(){super.onInit(...arguments),this.getSettings("autoExpand")&amp;&amp;this.activateDefaultTab(),(0,s.setHorizontalScrollAlignment)(this.getHorizontalScrollingSettings()),this.setTouchMode(),"nested-tabs.default"===this.getSettings("elementName")&amp;&amp;n.e(304).then(n.bind(n,7469)).then((e=&gt;{let{default:t}=e;new t(this.getKeyboardNavigationSettings())})).catch((e=&gt;{console.error("Error importing module:",e)}))}onEditSettingsChange(e,t){"activeItemIndex"===e&amp;&amp;this.changeActiveTab(t,!1)}onElementChange(e){this.checkSliderPropsToWatch(e)&amp;&amp;(0,s.setHorizontalScrollAlignment)(this.getHorizontalScrollingSettings())}checkSliderPropsToWatch(e){return 0===e.indexOf("horizontal_scroll")||"breakpoint_selector"===e||0===e.indexOf("tabs_justify_horizontal")||0===e.indexOf("tabs_title_space_between")}changeActiveTab(e){if(arguments.length&gt;1&amp;&amp;void 0!==arguments[1]&amp;&amp;arguments[1]&amp;&amp;this.isEdit&amp;&amp;this.isElementInTheCurrentDocument())return window.top.$e.run("document/repeater/select",{container:elementor.getContainer(this.$element.attr("data-id")),index:parseInt(e)});const t=this.isActiveTab(e),n=this.getSettings();if(!n.toggleSelf&amp;&amp;t||!n.hidePrevious||this.deactivateActiveTab(e),!n.hidePrevious&amp;&amp;t&amp;&amp;this.deactivateActiveTab(e),!t){if(this.isAccordionVersion())return void this.activateMobileTab(e);this.activateTab(e)}}changeActiveTabByKeyboard(e,t){t.widgetId.toString()===this.getID().toString()&amp;&amp;this.changeActiveTab(t.titleIndex,!0)}activateMobileTab(e){setTimeout((()=&gt;{this.activateTab(e),this.forceActiveTabToBeInViewport(e)}),10)}forceActiveTabToBeInViewport(e){if(!elementorFrontend.isEditMode())return;const t=this.elements.$tabTitles.filter(this.getTabTitleFilterSelector(e));elementor.helpers.isInViewport(t[0])||t[0].scrollIntoView({block:"center"})}getActiveClass(){return this.getSettings().classes.active}getTabsDirection(){const e=elementorFrontend.getCurrentDeviceMode();return elementorFrontend.utils.controls.getResponsiveControlValue(this.getElementSettings(),"tabs_justify_horizontal","",e)}getHorizontalScrollSetting(){const e=elementorFrontend.getCurrentDeviceMode();return elementorFrontend.utils.controls.getResponsiveControlValue(this.getElementSettings(),"horizontal_scroll","",e)}isAccordionVersion(){return"contents"===this.elements.$headingContainer.css("display")}setTouchMode(){const e=this.getSettings("selectors").widgetContainer;if(elementorFrontend.isEditMode()||"resize"===event?.type){const t=["mobile","mobile_extra","tablet","tablet_extra"],n=elementorFrontend.getCurrentDeviceMode();if(-1!==t.indexOf(n))return void this.$element.find(e).attr("data-touch-mode","true")}else if("ontouchstart"in window)return void this.$element.find(e).attr("data-touch-mode","true");this.$element.find(e).attr("data-touch-mode","false")}linkContainer(e){const{container:t}=e.detail,n=t.model.get("id"),r=this.$element.data("id"),i=t.view.$el;if(n===r&amp;&amp;(this.updateIndexValues(),this.updateListeners(i),elementor.$preview[0].contentWindow.dispatchEvent(new CustomEvent("elementor/elements/link-data-bindings"))),!this.getActiveTabIndex()){const t=e.detail.index+1||1;this.changeActiveTab(t)}}updateListeners(e){this.elements.$tabContents=e.find(this.getSettings("selectors.tabContent")),this.elements.$tabTitles=e.find(this.getSettings("selectors.tabTitle")),this.elements.$tabTitles.on(this.getTabEvents())}updateIndexValues(){const{$widgetContainer:e,$tabContents:t,$tabTitles:n}=this.getDefaultElements(),r=this.getSettings(),i=r.dataAttributes.tabIndex,s=e.data("widgetNumber");n.each(((e,n)=&gt;{const o=e+1,a=`e-n-tab-title-${s}${o}`,l=`e-n-tab-content-${s}${o}`;n.setAttribute("id",a),n.setAttribute("style",`--n-tabs-title-order: ${o}`),n.setAttribute(i,o),n.setAttribute("aria-controls",l),n.querySelector(r.selectors.tabTitleIcon)?.setAttribute("data-binding-index",o),n.querySelector(r.selectors.tabTitleText).setAttribute("data-binding-index",o),t[e].setAttribute("aria-labelledby",a),t[e].setAttribute(i,o),t[e].setAttribute("id",l),t[e].setAttribute("style",`--n-tabs-title-order: ${o}`)}))}onResizeUpdateHorizontalScrolling(){(0,s.setHorizontalScrollAlignment)(this.getHorizontalScrollingSettings())}getHorizontalScrollingSettings(){return{element:this.elements.$headingContainer[0],direction:this.getTabsDirection(),justifyCSSVariable:"--n-tabs-heading-justify-content",horizontalScrollStatus:this.getHorizontalScrollSetting()}}}t.default=NestedTabs},6784:e=&gt;{e.exports=function _interopRequireDefault(e){return e&amp;&amp;e.__esModule?e:{default:e}},e.exports.__esModule=!0,e.exports.default=e.exports},8120:(e,t,n)=&gt;{"use strict";var r=n(1483),i=n(8761),s=TypeError;e.exports=function(e){if(r(e))return e;throw new s(i(e)+" is not a function")}},7095:(e,t,n)=&gt;{"use strict";var r=n(1),i=n(5290),s=n(5835).f,o=r("unscopables"),a=Array.prototype;void 0===a[o]&amp;&amp;s(a,o,{configurable:!0,value:i(null)}),e.exports=function(e){a[o][e]=!0}},6021:(e,t,n)=&gt;{"use strict";var r=n(4815),i=TypeError;e.exports=function(e,t){if(r(t,e))return e;throw new i("Incorrect invocation")}},2293:(e,t,n)=&gt;{"use strict";var r=n(1704),i=String,s=TypeError;e.exports=function(e){if(r(e))return e;throw new s(i(e)+" is not an object")}},6651:(e,t,n)=&gt;{"use strict";var r=n(5599),i=n(3392),s=n(6960),createMethod=function(e){return function(t,n,o){var a=r(t),l=s(a);if(0===l)return!e&amp;&amp;-1;var c,u=i(o,l);if(e&amp;&amp;n!=n){for(;l&gt;u;)if((c=a[u++])!=c)return!0}else for(;l&gt;u;u++)if((e||u in a)&amp;&amp;a[u]===n)return e||u||0;return!e&amp;&amp;-1}};e.exports={includes:createMethod(!0),indexOf:createMethod(!1)}},9273:(e,t,n)=&gt;{"use strict";var r=n(382),i=n(4914),s=TypeError,o=Object.getOwnPropertyDescriptor,a=r&amp;&amp;!function(){if(void 0!==this)return!0;try{Object.defineProperty([],"length",{writable:!1}).length=1}catch(e){return e instanceof TypeError}}();e.exports=a?function(e,t){if(i(e)&amp;&amp;!o(e,"length").writable)throw new s("Cannot set read only .length");return e.length=t}:function(e,t){return e.length=t}},8901:(e,t,n)=&gt;{"use strict";var r=n(2293),i=n(6721);e.exports=function(e,t,n,s){try{return s?t(r(n)[0],n[1]):t(n)}catch(t){i(e,"throw",t)}}},1278:(e,t,n)=&gt;{"use strict";var r=n(4762),i=r({}.toString),s=r("".slice);e.exports=function(e){return s(i(e),8,-1)}},6145:(e,t,n)=&gt;{"use strict";var r=n(4338),i=n(1483),s=n(1278),o=n(1)("toStringTag"),a=Object,l="Arguments"===s(function(){return arguments}());e.exports=r?s:function(e){var t,n,r;return void 0===e?"Undefined":null===e?"Null":"string"==typeof(n=function(e,t){try{return e[t]}catch(e){}}(t=a(e),o))?n:l?s(t):"Object"===(r=s(t))&amp;&amp;i(t.callee)?"Arguments":r}},6726:(e,t,n)=&gt;{"use strict";var r=n(5755),i=n(9497),s=n(4961),o=n(5835);e.exports=function(e,t,n){for(var a=i(t),l=o.f,c=s.f,u=0;u&lt;a.length;u++){var d=a[u];r(e,d)||n&amp;&amp;r(n,d)||l(e,d,c(t,d))}}},9441:(e,t,n)=&gt;{"use strict";var r=n(8473);e.exports=!r((function(){function F(){}return F.prototype.constructor=null,Object.getPrototypeOf(new F)!==F.prototype}))},5247:e=&gt;{"use strict";e.exports=function(e,t){return{value:e,done:t}}},9037:(e,t,n)=&gt;{"use strict";var r=n(382),i=n(5835),s=n(7738);e.exports=r?function(e,t,n){return i.f(e,t,s(1,n))}:function(e,t,n){return e[t]=n,e}},7738:e=&gt;{"use strict";e.exports=function(e,t){return{enumerable:!(1&amp;e),configurable:!(2&amp;e),writable:!(4&amp;e),value:t}}},670:(e,t,n)=&gt;{"use strict";var r=n(382),i=n(5835),s=n(7738);e.exports=function(e,t,n){r?i.f(e,t,s(0,n)):e[t]=n}},3864:(e,t,n)=&gt;{"use strict";var r=n(169),i=n(5835);e.exports=function(e,t,n){return n.get&amp;&amp;r(n.get,t,{getter:!0}),n.set&amp;&amp;r(n.set,t,{setter:!0}),i.f(e,t,n)}},7914:(e,t,n)=&gt;{"use strict";var r=n(1483),i=n(5835),s=n(169),o=n(2095);e.exports=function(e,t,n,a){a||(a={});var l=a.enumerable,c=void 0!==a.name?a.name:t;if(r(n)&amp;&amp;s(n,c,a),a.global)l?e[t]=n:o(t,n);else{try{a.unsafe?e[t]&amp;&amp;(l=!0):delete e[t]}catch(e){}l?e[t]=n:i.f(e,t,{value:n,enumerable:!1,configurable:!a.nonConfigurable,writable:!a.nonWritable})}return e}},2313:(e,t,n)=&gt;{"use strict";var r=n(7914);e.exports=function(e,t,n){for(var i in t)r(e,i,t[i],n);return e}},2095:(e,t,n)=&gt;{"use strict";var r=n(5578),i=Object.defineProperty;e.exports=function(e,t){try{i(r,e,{value:t,configurable:!0,writable:!0})}catch(n){r[e]=t}return t}},382:(e,t,n)=&gt;{"use strict";var r=n(8473);e.exports=!r((function(){return 7!==Object.defineProperty({},1,{get:function(){return 7}})[1]}))},3145:(e,t,n)=&gt;{"use strict";var r=n(5578),i=n(1704),s=r.document,o=i(s)&amp;&amp;i(s.createElement);e.exports=function(e){return o?s.createElement(e):{}}},1091:e=&gt;{"use strict";var t=TypeError;e.exports=function(e){if(e&gt;9007199254740991)throw t("Maximum allowed index exceeded");return e}},4741:e=&gt;{"use strict";e.exports=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"]},9461:(e,t,n)=&gt;{"use strict";var r=n(5578).navigator,i=r&amp;&amp;r.userAgent;e.exports=i?String(i):""},6477:(e,t,n)=&gt;{"use strict";var r,i,s=n(5578),o=n(9461),a=s.process,l=s.Deno,c=a&amp;&amp;a.versions||l&amp;&amp;l.version,u=c&amp;&amp;c.v8;u&amp;&amp;(i=(r=u.split("."))[0]&gt;0&amp;&amp;r[0]&lt;4?1:+(r[0]+r[1])),!i&amp;&amp;o&amp;&amp;(!(r=o.match(/Edge\/(\d+)/))||r[1]&gt;=74)&amp;&amp;(r=o.match(/Chrome\/(\d+)/))&amp;&amp;(i=+r[1]),e.exports=i},8612:(e,t,n)=&gt;{"use strict";var r=n(5578),i=n(4961).f,s=n(9037),o=n(7914),a=n(2095),l=n(6726),c=n(8730);e.exports=function(e,t){var n,u,d,h,g,p=e.target,f=e.global,m=e.stat;if(n=f?r:m?r[p]||a(p,{}):r[p]&amp;&amp;r[p].prototype)for(u in t){if(h=t[u],d=e.dontCallGetSet?(g=i(n,u))&amp;&amp;g.value:n[u],!c(f?u:p+(m?".":"#")+u,e.forced)&amp;&amp;void 0!==d){if(typeof h==typeof d)continue;l(h,d)}(e.sham||d&amp;&amp;d.sham)&amp;&amp;s(h,"sham",!0),o(n,u,h,e)}}},8473:e=&gt;{"use strict";e.exports=function(e){try{return!!e()}catch(e){return!0}}},2914:(e,t,n)=&gt;{"use strict";var r=n(3786),i=n(8120),s=n(274),o=r(r.bind);e.exports=function(e,t){return i(e),void 0===t?e:s?o(e,t):function(){return e.apply(t,arguments)}}},274:(e,t,n)=&gt;{"use strict";var r=n(8473);e.exports=!r((function(){var e=function(){}.bind();return"function"!=typeof e||e.hasOwnProperty("prototype")}))},1807:(e,t,n)=&gt;{"use strict";var r=n(274),i=Function.prototype.call;e.exports=r?i.bind(i):function(){return i.apply(i,arguments)}},2048:(e,t,n)=&gt;{"use strict";var r=n(382),i=n(5755),s=Function.prototype,o=r&amp;&amp;Object.getOwnPropertyDescriptor,a=i(s,"name"),l=a&amp;&amp;"something"===function something(){}.name,c=a&amp;&amp;(!r||r&amp;&amp;o(s,"name").configurable);e.exports={EXISTS:a,PROPER:l,CONFIGURABLE:c}},3786:(e,t,n)=&gt;{"use strict";var r=n(1278),i=n(4762);e.exports=function(e){if("Function"===r(e))return i(e)}},4762:(e,t,n)=&gt;{"use strict";var r=n(274),i=Function.prototype,s=i.call,o=r&amp;&amp;i.bind.bind(s,s);e.exports=r?o:function(e){return function(){return s.apply(e,arguments)}}},1409:(e,t,n)=&gt;{"use strict";var r=n(5578),i=n(1483);e.exports=function(e,t){return arguments.length&lt;2?(n=r[e],i(n)?n:void 0):r[e]&amp;&amp;r[e][t];var n}},41:e=&gt;{"use strict";e.exports=function(e){return{iterator:e,next:e.next,done:!1}}},6665:(e,t,n)=&gt;{"use strict";var r=n(6145),i=n(2564),s=n(5983),o=n(6775),a=n(1)("iterator");e.exports=function(e){if(!s(e))return i(e,a)||i(e,"@@iterator")||o[r(e)]}},4887:(e,t,n)=&gt;{"use strict";var r=n(1807),i=n(8120),s=n(2293),o=n(8761),a=n(6665),l=TypeError;e.exports=function(e,t){var n=arguments.length&lt;2?a(e):t;if(i(n))return s(r(n,e));throw new l(o(e)+" is not iterable")}},2564:(e,t,n)=&gt;{"use strict";var r=n(8120),i=n(5983);e.exports=function(e,t){var n=e[t];return i(n)?void 0:r(n)}},5578:function(e,t,n){"use strict";var check=function(e){return e&amp;&amp;e.Math===Math&amp;&amp;e};e.exports=check("object"==typeof globalThis&amp;&amp;globalThis)||check("object"==typeof window&amp;&amp;window)||check("object"==typeof self&amp;&amp;self)||check("object"==typeof n.g&amp;&amp;n.g)||check("object"==typeof this&amp;&amp;this)||function(){return this}()||Function("return this")()},5755:(e,t,n)=&gt;{"use strict";var r=n(4762),i=n(2347),s=r({}.hasOwnProperty);e.exports=Object.hasOwn||function hasOwn(e,t){return s(i(e),t)}},1507:e=&gt;{"use strict";e.exports={}},2811:(e,t,n)=&gt;{"use strict";var r=n(1409);e.exports=r("document","documentElement")},1799:(e,t,n)=&gt;{"use strict";var r=n(382),i=n(8473),s=n(3145);e.exports=!r&amp;&amp;!i((function(){return 7!==Object.defineProperty(s("div"),"a",{get:function(){return 7}}).a}))},2121:(e,t,n)=&gt;{"use strict";var r=n(4762),i=n(8473),s=n(1278),o=Object,a=r("".split);e.exports=i((function(){return!o("z").propertyIsEnumerable(0)}))?function(e){return"String"===s(e)?a(e,""):o(e)}:o},7268:(e,t,n)=&gt;{"use strict";var r=n(4762),i=n(1483),s=n(1831),o=r(Function.toString);i(s.inspectSource)||(s.inspectSource=function(e){return o(e)}),e.exports=s.inspectSource},4483:(e,t,n)=&gt;{"use strict";var r,i,s,o=n(4644),a=n(5578),l=n(1704),c=n(9037),u=n(5755),d=n(1831),h=n(5409),g=n(1507),p="Object already initialized",f=a.TypeError,m=a.WeakMap;if(o||d.state){var v=d.state||(d.state=new m);v.get=v.get,v.has=v.has,v.set=v.set,r=function(e,t){if(v.has(e))throw new f(p);return t.facade=e,v.set(e,t),t},i=function(e){return v.get(e)||{}},s=function(e){return v.has(e)}}else{var b=h("state");g[b]=!0,r=function(e,t){if(u(e,b))throw new f(p);return t.facade=e,c(e,b,t),t},i=function(e){return u(e,b)?e[b]:{}},s=function(e){return u(e,b)}}e.exports={set:r,get:i,has:s,enforce:function(e){return s(e)?i(e):r(e,{})},getterFor:function(e){return function(t){var n;if(!l(t)||(n=i(t)).type!==e)throw new f("Incompatible receiver, "+e+" required");return n}}}},5299:(e,t,n)=&gt;{"use strict";var r=n(1),i=n(6775),s=r("iterator"),o=Array.prototype;e.exports=function(e){return void 0!==e&amp;&amp;(i.Array===e||o[s]===e)}},4914:(e,t,n)=&gt;{"use strict";var r=n(1278);e.exports=Array.isArray||function isArray(e){return"Array"===r(e)}},1483:e=&gt;{"use strict";var t="object"==typeof document&amp;&amp;document.all;e.exports=void 0===t&amp;&amp;void 0!==t?function(e){return"function"==typeof e||e===t}:function(e){return"function"==typeof e}},8730:(e,t,n)=&gt;{"use strict";var r=n(8473),i=n(1483),s=/#|\.prototype\./,isForced=function(e,t){var n=a[o(e)];return n===c||n!==l&amp;&amp;(i(t)?r(t):!!t)},o=isForced.normalize=function(e){return String(e).replace(s,".").toLowerCase()},a=isForced.data={},l=isForced.NATIVE="N",c=isForced.POLYFILL="P";e.exports=isForced},5983:e=&gt;{"use strict";e.exports=function(e){return null==e}},1704:(e,t,n)=&gt;{"use strict";var r=n(1483);e.exports=function(e){return"object"==typeof e?null!==e:r(e)}},9557:e=&gt;{"use strict";e.exports=!1},1423:(e,t,n)=&gt;{"use strict";var r=n(1409),i=n(1483),s=n(4815),o=n(5022),a=Object;e.exports=o?function(e){return"symbol"==typeof e}:function(e){var t=r("Symbol");return i(t)&amp;&amp;s(t.prototype,a(e))}},1506:(e,t,n)=&gt;{"use strict";var r=n(2914),i=n(1807),s=n(2293),o=n(8761),a=n(5299),l=n(6960),c=n(4815),u=n(4887),d=n(6665),h=n(6721),g=TypeError,Result=function(e,t){this.stopped=e,this.result=t},p=Result.prototype;e.exports=function(e,t,n){var f,m,v,b,y,w,S,x=n&amp;&amp;n.that,C=!(!n||!n.AS_ENTRIES),T=!(!n||!n.IS_RECORD),E=!(!n||!n.IS_ITERATOR),$=!(!n||!n.INTERRUPTED),I=r(t,x),stop=function(e){return f&amp;&amp;h(f,"normal",e),new Result(!0,e)},callFn=function(e){return C?(s(e),$?I(e[0],e[1],stop):I(e[0],e[1])):$?I(e,stop):I(e)};if(T)f=e.iterator;else if(E)f=e;else{if(!(m=d(e)))throw new g(o(e)+" is not iterable");if(a(m)){for(v=0,b=l(e);b&gt;v;v++)if((y=callFn(e[v]))&amp;&amp;c(p,y))return y;return new Result(!1)}f=u(e,m)}for(w=T?e.next:f.next;!(S=i(w,f)).done;){try{y=callFn(S.value)}catch(e){h(f,"throw",e)}if("object"==typeof y&amp;&amp;y&amp;&amp;c(p,y))return y}return new Result(!1)}},6721:(e,t,n)=&gt;{"use strict";var r=n(1807),i=n(2293),s=n(2564);e.exports=function(e,t,n){var o,a;i(e);try{if(!(o=s(e,"return"))){if("throw"===t)throw n;return n}o=r(o,e)}catch(e){a=!0,o=e}if("throw"===t)throw n;if(a)throw o;return i(o),n}},8660:(e,t,n)=&gt;{"use strict";var r=n(1807),i=n(5290),s=n(9037),o=n(2313),a=n(1),l=n(4483),c=n(2564),u=n(1851).IteratorPrototype,d=n(5247),h=n(6721),g=a("toStringTag"),p="IteratorHelper",f="WrapForValidIterator",m=l.set,createIteratorProxyPrototype=function(e){var t=l.getterFor(e?f:p);return o(i(u),{next:function next(){var n=t(this);if(e)return n.nextHandler();try{var r=n.done?void 0:n.nextHandler();return d(r,n.done)}catch(e){throw n.done=!0,e}},return:function(){var n=t(this),i=n.iterator;if(n.done=!0,e){var s=c(i,"return");return s?r(s,i):d(void 0,!0)}if(n.inner)try{h(n.inner.iterator,"normal")}catch(e){return h(i,"throw",e)}return i&amp;&amp;h(i,"normal"),d(void 0,!0)}})},v=createIteratorProxyPrototype(!0),b=createIteratorProxyPrototype(!1);s(b,g,"Iterator Helper"),e.exports=function(e,t){var n=function Iterator(n,r){r?(r.iterator=n.iterator,r.next=n.next):r=n,r.type=t?f:p,r.nextHandler=e,r.counter=0,r.done=!1,m(this,r)};return n.prototype=t?v:b,n}},1851:(e,t,n)=&gt;{"use strict";var r,i,s,o=n(8473),a=n(1483),l=n(1704),c=n(5290),u=n(3181),d=n(7914),h=n(1),g=n(9557),p=h("iterator"),f=!1;[].keys&amp;&amp;("next"in(s=[].keys())?(i=u(u(s)))!==Object.prototype&amp;&amp;(r=i):f=!0),!l(r)||o((function(){var e={};return r[p].call(e)!==e}))?r={}:g&amp;&amp;(r=c(r)),a(r[p])||d(r,p,(function(){return this})),e.exports={IteratorPrototype:r,BUGGY_SAFARI_ITERATORS:f}},6775:e=&gt;{"use strict";e.exports={}},6960:(e,t,n)=&gt;{"use strict";var r=n(8324);e.exports=function(e){return r(e.length)}},169:(e,t,n)=&gt;{"use strict";var r=n(4762),i=n(8473),s=n(1483),o=n(5755),a=n(382),l=n(2048).CONFIGURABLE,c=n(7268),u=n(4483),d=u.enforce,h=u.get,g=String,p=Object.defineProperty,f=r("".slice),m=r("".replace),v=r([].join),b=a&amp;&amp;!i((function(){return 8!==p((function(){}),"length",{value:8}).length})),y=String(String).split("String"),w=e.exports=function(e,t,n){"Symbol("===f(g(t),0,7)&amp;&amp;(t="["+m(g(t),/^Symbol\(([^)]*)\).*$/,"$1")+"]"),n&amp;&amp;n.getter&amp;&amp;(t="get "+t),n&amp;&amp;n.setter&amp;&amp;(t="set "+t),(!o(e,"name")||l&amp;&amp;e.name!==t)&amp;&amp;(a?p(e,"name",{value:t,configurable:!0}):e.name=t),b&amp;&amp;n&amp;&amp;o(n,"arity")&amp;&amp;e.length!==n.arity&amp;&amp;p(e,"length",{value:n.arity});try{n&amp;&amp;o(n,"constructor")&amp;&amp;n.constructor?a&amp;&amp;p(e,"prototype",{writable:!1}):e.prototype&amp;&amp;(e.prototype=void 0)}catch(e){}var r=d(e);return o(r,"source")||(r.source=v(y,"string"==typeof t?t:"")),e};Function.prototype.toString=w((function toString(){return s(this)&amp;&amp;h(this).source||c(this)}),"toString")},1703:e=&gt;{"use strict";var t=Math.ceil,n=Math.floor;e.exports=Math.trunc||function trunc(e){var r=+e;return(r&gt;0?n:t)(r)}},5290:(e,t,n)=&gt;{"use strict";var r,i=n(2293),s=n(5799),o=n(4741),a=n(1507),l=n(2811),c=n(3145),u=n(5409),d="prototype",h="script",g=u("IE_PROTO"),EmptyConstructor=function(){},scriptTag=function(e){return"&lt;"+h+"&gt;"+e+"&lt;/"+h+"&gt;"},NullProtoObjectViaActiveX=function(e){e.write(scriptTag("")),e.close();var t=e.parentWindow.Object;return e=null,t},NullProtoObject=function(){try{r=new ActiveXObject("htmlfile")}catch(e){}var e,t,n;NullProtoObject="undefined"!=typeof document?document.domain&amp;&amp;r?NullProtoObjectViaActiveX(r):(t=c("iframe"),n="java"+h+":",t.style.display="none",l.appendChild(t),t.src=String(n),(e=t.contentWindow.document).open(),e.write(scriptTag("document.F=Object")),e.close(),e.F):NullProtoObjectViaActiveX(r);for(var i=o.length;i--;)delete NullProtoObject[d][o[i]];return NullProtoObject()};a[g]=!0,e.exports=Object.create||function create(e,t){var n;return null!==e?(EmptyConstructor[d]=i(e),n=new EmptyConstructor,EmptyConstructor[d]=null,n[g]=e):n=NullProtoObject(),void 0===t?n:s.f(n,t)}},5799:(e,t,n)=&gt;{"use strict";var r=n(382),i=n(3896),s=n(5835),o=n(2293),a=n(5599),l=n(3658);t.f=r&amp;&amp;!i?Object.defineProperties:function defineProperties(e,t){o(e);for(var n,r=a(t),i=l(t),c=i.length,u=0;c&gt;u;)s.f(e,n=i[u++],r[n]);return e}},5835:(e,t,n)=&gt;{"use strict";var r=n(382),i=n(1799),s=n(3896),o=n(2293),a=n(3815),l=TypeError,c=Object.defineProperty,u=Object.getOwnPropertyDescriptor,d="enumerable",h="configurable",g="writable";t.f=r?s?function defineProperty(e,t,n){if(o(e),t=a(t),o(n),"function"==typeof e&amp;&amp;"prototype"===t&amp;&amp;"value"in n&amp;&amp;g in n&amp;&amp;!n[g]){var r=u(e,t);r&amp;&amp;r[g]&amp;&amp;(e[t]=n.value,n={configurable:h in n?n[h]:r[h],enumerable:d in n?n[d]:r[d],writable:!1})}return c(e,t,n)}:c:function defineProperty(e,t,n){if(o(e),t=a(t),o(n),i)try{return c(e,t,n)}catch(e){}if("get"in n||"set"in n)throw new l("Accessors not supported");return"value"in n&amp;&amp;(e[t]=n.value),e}},4961:(e,t,n)=&gt;{"use strict";var r=n(382),i=n(1807),s=n(7611),o=n(7738),a=n(5599),l=n(3815),c=n(5755),u=n(1799),d=Object.getOwnPropertyDescriptor;t.f=r?d:function getOwnPropertyDescriptor(e,t){if(e=a(e),t=l(t),u)try{return d(e,t)}catch(e){}if(c(e,t))return o(!i(s.f,e,t),e[t])}},2278:(e,t,n)=&gt;{"use strict";var r=n(6742),i=n(4741).concat("length","prototype");t.f=Object.getOwnPropertyNames||function getOwnPropertyNames(e){return r(e,i)}},4347:(e,t)=&gt;{"use strict";t.f=Object.getOwnPropertySymbols},3181:(e,t,n)=&gt;{"use strict";var r=n(5755),i=n(1483),s=n(2347),o=n(5409),a=n(9441),l=o("IE_PROTO"),c=Object,u=c.prototype;e.exports=a?c.getPrototypeOf:function(e){var t=s(e);if(r(t,l))return t[l];var n=t.constructor;return i(n)&amp;&amp;t instanceof n?n.prototype:t instanceof c?u:null}},4815:(e,t,n)=&gt;{"use strict";var r=n(4762);e.exports=r({}.isPrototypeOf)},6742:(e,t,n)=&gt;{"use strict";var r=n(4762),i=n(5755),s=n(5599),o=n(6651).indexOf,a=n(1507),l=r([].push);e.exports=function(e,t){var n,r=s(e),c=0,u=[];for(n in r)!i(a,n)&amp;&amp;i(r,n)&amp;&amp;l(u,n);for(;t.length&gt;c;)i(r,n=t[c++])&amp;&amp;(~o(u,n)||l(u,n));return u}},3658:(e,t,n)=&gt;{"use strict";var r=n(6742),i=n(4741);e.exports=Object.keys||function keys(e){return r(e,i)}},7611:(e,t)=&gt;{"use strict";var n={}.propertyIsEnumerable,r=Object.getOwnPropertyDescriptor,i=r&amp;&amp;!n.call({1:2},1);t.f=i?function propertyIsEnumerable(e){var t=r(this,e);return!!t&amp;&amp;t.enumerable}:n},348:(e,t,n)=&gt;{"use strict";var r=n(1807),i=n(1483),s=n(1704),o=TypeError;e.exports=function(e,t){var n,a;if("string"===t&amp;&amp;i(n=e.toString)&amp;&amp;!s(a=r(n,e)))return a;if(i(n=e.valueOf)&amp;&amp;!s(a=r(n,e)))return a;if("string"!==t&amp;&amp;i(n=e.toString)&amp;&amp;!s(a=r(n,e)))return a;throw new o("Can't convert object to primitive value")}},9497:(e,t,n)=&gt;{"use strict";var r=n(1409),i=n(4762),s=n(2278),o=n(4347),a=n(2293),l=i([].concat);e.exports=r("Reflect","ownKeys")||function ownKeys(e){var t=s.f(a(e)),n=o.f;return n?l(t,n(e)):t}},3312:(e,t,n)=&gt;{"use strict";var r=n(5983),i=TypeError;e.exports=function(e){if(r(e))throw new i("Can't call method on "+e);return e}},5409:(e,t,n)=&gt;{"use strict";var r=n(7255),i=n(1866),s=r("keys");e.exports=function(e){return s[e]||(s[e]=i(e))}},1831:(e,t,n)=&gt;{"use strict";var r=n(9557),i=n(5578),s=n(2095),o="__core-js_shared__",a=e.exports=i[o]||s(o,{});(a.versions||(a.versions=[])).push({version:"3.39.0",mode:r?"pure":"global",copyright:"© 2014-2024 Denis Pushkarev (zloirock.ru)",license:"https://github.com/zloirock/core-js/blob/v3.39.0/LICENSE",source:"https://github.com/zloirock/core-js"})},7255:(e,t,n)=&gt;{"use strict";var r=n(1831);e.exports=function(e,t){return r[e]||(r[e]=t||{})}},6029:(e,t,n)=&gt;{"use strict";var r=n(6477),i=n(8473),s=n(5578).String;e.exports=!!Object.getOwnPropertySymbols&amp;&amp;!i((function(){var e=Symbol("symbol detection");return!s(e)||!(Object(e)instanceof Symbol)||!Symbol.sham&amp;&amp;r&amp;&amp;r&lt;41}))},3392:(e,t,n)=&gt;{"use strict";var r=n(3005),i=Math.max,s=Math.min;e.exports=function(e,t){var n=r(e);return n&lt;0?i(n+t,0):s(n,t)}},5599:(e,t,n)=&gt;{"use strict";var r=n(2121),i=n(3312);e.exports=function(e){return r(i(e))}},3005:(e,t,n)=&gt;{"use strict";var r=n(1703);e.exports=function(e){var t=+e;return t!=t||0===t?0:r(t)}},8324:(e,t,n)=&gt;{"use strict";var r=n(3005),i=Math.min;e.exports=function(e){var t=r(e);return t&gt;0?i(t,9007199254740991):0}},2347:(e,t,n)=&gt;{"use strict";var r=n(3312),i=Object;e.exports=function(e){return i(r(e))}},2355:(e,t,n)=&gt;{"use strict";var r=n(1807),i=n(1704),s=n(1423),o=n(2564),a=n(348),l=n(1),c=TypeError,u=l("toPrimitive");e.exports=function(e,t){if(!i(e)||s(e))return e;var n,l=o(e,u);if(l){if(void 0===t&amp;&amp;(t="default"),n=r(l,e,t),!i(n)||s(n))return n;throw new c("Can't convert object to primitive value")}return void 0===t&amp;&amp;(t="number"),a(e,t)}},3815:(e,t,n)=&gt;{"use strict";var r=n(2355),i=n(1423);e.exports=function(e){var t=r(e,"string");return i(t)?t:t+""}},4338:(e,t,n)=&gt;{"use strict";var r={};r[n(1)("toStringTag")]="z",e.exports="[object z]"===String(r)},8761:e=&gt;{"use strict";var t=String;e.exports=function(e){try{return t(e)}catch(e){return"Object"}}},1866:(e,t,n)=&gt;{"use strict";var r=n(4762),i=0,s=Math.random(),o=r(1..toString);e.exports=function(e){return"Symbol("+(void 0===e?"":e)+")_"+o(++i+s,36)}},5022:(e,t,n)=&gt;{"use strict";var r=n(6029);e.exports=r&amp;&amp;!Symbol.sham&amp;&amp;"symbol"==typeof Symbol.iterator},3896:(e,t,n)=&gt;{"use strict";var r=n(382),i=n(8473);e.exports=r&amp;&amp;i((function(){return 42!==Object.defineProperty((function(){}),"prototype",{value:42,writable:!1}).prototype}))},4644:(e,t,n)=&gt;{"use strict";var r=n(5578),i=n(1483),s=r.WeakMap;e.exports=i(s)&amp;&amp;/native code/.test(String(s))},1:(e,t,n)=&gt;{"use strict";var r=n(5578),i=n(7255),s=n(5755),o=n(1866),a=n(6029),l=n(5022),c=r.Symbol,u=i("wks"),d=l?c.for||c:c&amp;&amp;c.withoutSetter||o;e.exports=function(e){return s(u,e)||(u[e]=a&amp;&amp;s(c,e)?c[e]:d("Symbol."+e)),u[e]}},6281:(e,t,n)=&gt;{"use strict";var r=n(8612),i=n(6651).includes,s=n(8473),o=n(7095);r({target:"Array",proto:!0,forced:s((function(){return!Array(1).includes()}))},{includes:function includes(e){return i(this,e,arguments.length&gt;1?arguments[1]:void 0)}}),o("includes")},5724:(e,t,n)=&gt;{"use strict";var r=n(8612),i=n(2347),s=n(6960),o=n(9273),a=n(1091);r({target:"Array",proto:!0,arity:1,forced:n(8473)((function(){return 4294967297!==[].push.call({length:4294967296},1)}))||!function(){try{Object.defineProperty([],"length",{writable:!1}).push()}catch(e){return e instanceof TypeError}}()},{push:function push(e){var t=i(this),n=s(t),r=arguments.length;a(n+r);for(var l=0;l&lt;r;l++)t[n]=arguments[l],n++;return o(t,n),n}})},3617:(e,t,n)=&gt;{"use strict";var r=n(8612),i=n(5578),s=n(6021),o=n(2293),a=n(1483),l=n(3181),c=n(3864),u=n(670),d=n(8473),h=n(5755),g=n(1),p=n(1851).IteratorPrototype,f=n(382),m=n(9557),v="constructor",b="Iterator",y=g("toStringTag"),w=TypeError,S=i[b],x=m||!a(S)||S.prototype!==p||!d((function(){S({})})),C=function Iterator(){if(s(this,p),l(this)===p)throw new w("Abstract class Iterator not directly constructable")},defineIteratorPrototypeAccessor=function(e,t){f?c(p,e,{configurable:!0,get:function(){return t},set:function(t){if(o(this),this===p)throw new w("You can't redefine this property");h(this,e)?this[e]=t:u(this,e,t)}}):p[e]=t};h(p,y)||defineIteratorPrototypeAccessor(y,b),!x&amp;&amp;h(p,v)&amp;&amp;p[v]!==Object||defineIteratorPrototypeAccessor(v,C),C.prototype=p,r({global:!0,constructor:!0,forced:x},{Iterator:C})},1975:(e,t,n)=&gt;{"use strict";var r=n(8612),i=n(1807),s=n(8120),o=n(2293),a=n(41),l=n(8660),c=n(8901),u=n(9557),d=l((function(){for(var e,t,n=this.iterator,r=this.predicate,s=this.next;;){if(e=o(i(s,n)),this.done=!!e.done)return;if(t=e.value,c(n,r,[t,this.counter++],!0))return t}}));r({target:"Iterator",proto:!0,real:!0,forced:u},{filter:function filter(e){return o(this),s(e),new d(a(this),{predicate:e})}})},3242:(e,t,n)=&gt;{"use strict";var r=n(8612),i=n(1506),s=n(8120),o=n(2293),a=n(41);r({target:"Iterator",proto:!0,real:!0},{find:function find(e){o(this),s(e);var t=a(this),n=0;return i(t,(function(t,r){if(e(t,n++))return r(t)}),{IS_RECORD:!0,INTERRUPTED:!0}).result}})},9930:(e,t,n)=&gt;{"use strict";var r=n(8612),i=n(1506),s=n(8120),o=n(2293),a=n(41);r({target:"Iterator",proto:!0,real:!0},{forEach:function forEach(e){o(this),s(e);var t=a(this),n=0;i(t,(function(t){e(t,n++)}),{IS_RECORD:!0})}})},4846:(e,t,n)=&gt;{"use strict";n(3617)},7458:(e,t,n)=&gt;{"use strict";n(1975)},6211:(e,t,n)=&gt;{"use strict";n(3242)},9655:(e,t,n)=&gt;{"use strict";n(9930)}},e=&gt;{var t;t=4946,e(e.s=t)}]);wp.i18n.setLocaleData({'text direction\u0004ltr':['ltr']});/*! elementor-pro - v3.27.0 - 13-03-2025 */
(self.webpackChunkelementor_pro=self.webpackChunkelementor_pro||[]).push([[313],{3e3:(e,t,n)=&gt;{"use strict";var s=n(6784);n(2258);var i=s(n(4906)),o=s(n(2450)),r=s(n(4409)),a=s(n(7937)),l=s(n(8098)),c=s(n(6275)),d=s(n(3268)),u=s(n(4992));class ElementorProFrontend extends elementorModules.ViewModule{onInit(){super.onInit(),this.config=ElementorProFrontendConfig,this.modules={},this.initOnReadyComponents()}bindEvents(){jQuery(window).on("elementor/frontend/init",this.onElementorFrontendInit.bind(this))}initModules(){let e={motionFX:i.default,sticky:o.default,codeHighlight:r.default,videoPlaylist:a.default,payments:l.default,progressTracker:c.default};elementorProFrontend.trigger("elementor-pro/modules/init/before"),e=elementorFrontend.hooks.applyFilters("elementor-pro/frontend/handlers",e),jQuery.each(e,((e,t)=&gt;{this.modules[e]=new t})),this.modules.linkActions={addAction:function(){elementorFrontend.utils.urlActions.addAction(...arguments)}}}onElementorFrontendInit(){this.initModules()}initOnReadyComponents(){this.utils={controls:new d.default,DropdownMenuHeightController:u.default}}}window.elementorProFrontend=new ElementorProFrontend},3268:(e,t)=&gt;{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;t.default=class Controls{getControlValue(e,t,n){let s;return s="object"==typeof e[t]&amp;&amp;n?e[t][n]:e[t],s}getResponsiveControlValue(e,t){let n=arguments.length&gt;2&amp;&amp;void 0!==arguments[2]?arguments[2]:"";const s=elementorFrontend.getCurrentDeviceMode(),i=this.getControlValue(e,t,n);if("widescreen"===s){const s=this.getControlValue(e,`${t}_widescreen`,n);return s||0===s?s:i}const o=elementorFrontend.breakpoints.getActiveBreakpointsList({withDesktop:!0});let r=s,a=o.indexOf(s),l="";for(;a&lt;=o.length;){if("desktop"===r){l=i;break}const s=`${t}_${r}`,c=this.getControlValue(e,s,n);if(c||0===c){l=c;break}a++,r=o[a]}return l}}},4992:(e,t)=&gt;{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;t.default=class DropdownMenuHeightController{constructor(e){this.widgetConfig=e}calculateStickyMenuNavHeight(){this.widgetConfig.elements.$dropdownMenuContainer.css(this.widgetConfig.settings.menuHeightCssVarName,"");const e=this.widgetConfig.elements.$dropdownMenuContainer.offset().top-jQuery(window).scrollTop();return elementorFrontend.elements.$window.height()-e}calculateMenuTabContentHeight(e){return elementorFrontend.elements.$window.height()-e[0].getBoundingClientRect().top}isElementSticky(){return this.widgetConfig.elements.$element.hasClass("elementor-sticky")||this.widgetConfig.elements.$element.parents(".elementor-sticky").length}getMenuHeight(){return this.isElementSticky()?this.calculateStickyMenuNavHeight()+"px":this.widgetConfig.settings.dropdownMenuContainerMaxHeight}setMenuHeight(e){this.widgetConfig.elements.$dropdownMenuContainer.css(this.widgetConfig.settings.menuHeightCssVarName,e)}reassignMobileMenuHeight(){const e=this.isToggleActive()?this.getMenuHeight():0;return this.setMenuHeight(e)}reassignMenuHeight(e){if(!this.isElementSticky()||0===e.length)return;const t=elementorFrontend.elements.$window.height()-e[0].getBoundingClientRect().top;e.height()&gt;t&amp;&amp;(e.css("height",this.calculateMenuTabContentHeight(e)+"px"),e.css("overflow-y","scroll"))}resetMenuHeight(e){this.isElementSticky()&amp;&amp;(e.css("height","initial"),e.css("overflow-y","visible"))}isToggleActive(){const e=this.widgetConfig.elements.$menuToggle;return this.widgetConfig.attributes?.menuToggleState?"true"===e.attr(this.widgetConfig.attributes.menuToggleState):e.hasClass(this.widgetConfig.classes.menuToggleActiveClass)}}},2258:(e,t,n)=&gt;{"use strict";n.p=ElementorProFrontendConfig.urls.assets+"js/"},4409:(e,t,n)=&gt;{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;class _default extends elementorModules.Module{constructor(){super(),elementorFrontend.elementsHandler.attachHandler("code-highlight",(()=&gt;n.e(635).then(n.bind(n,7193))))}}t.default=_default},4906:(e,t,n)=&gt;{"use strict";var s=n(6784);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var i=s(n(820));class _default extends elementorModules.Module{constructor(){super(),elementorFrontend.elementsHandler.attachHandler("global",i.default,null)}}t.default=_default},820:(e,t,n)=&gt;{"use strict";var s=n(6784);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var i=s(n(739));class _default extends elementorModules.frontend.handlers.Base{__construct(){super.__construct(...arguments),this.toggle=elementorFrontend.debounce(this.toggle,200)}getDefaultSettings(){return{selectors:{container:".elementor-widget-container"}}}getDefaultElements(){const e=this.getSettings("selectors");let t=this.$element.find(e.container);return 0===t.length&amp;&amp;(t=this.$element),{$container:t}}bindEvents(){elementorFrontend.elements.$window.on("resize",this.toggle)}unbindEvents(){elementorFrontend.elements.$window.off("resize",this.toggle)}addCSSTransformEvents(){this.getElementSettings("motion_fx_motion_fx_scrolling")&amp;&amp;!this.isTransitionEventAdded&amp;&amp;(this.isTransitionEventAdded=!0,this.elements.$container.on("mouseenter",(()=&gt;{this.elements.$container.css("--e-transform-transition-duration","")})))}initEffects(){this.effects={translateY:{interaction:"scroll",actions:["translateY"]},translateX:{interaction:"scroll",actions:["translateX"]},rotateZ:{interaction:"scroll",actions:["rotateZ"]},scale:{interaction:"scroll",actions:["scale"]},opacity:{interaction:"scroll",actions:["opacity"]},blur:{interaction:"scroll",actions:["blur"]},mouseTrack:{interaction:"mouseMove",actions:["translateXY"]},tilt:{interaction:"mouseMove",actions:["tilt"]}}}prepareOptions(e){const t=this.getElementSettings(),n="motion_fx"===e?"element":"background",s={};jQuery.each(t,((n,i)=&gt;{const o=new RegExp("^"+e+"_(.+?)_effect"),r=n.match(o);if(!r||!i)return;const a={},l=r[1];jQuery.each(t,((t,n)=&gt;{const s=new RegExp(e+"_"+l+"_(.+)"),i=t.match(s);if(!i)return;"effect"!==i[1]&amp;&amp;("object"==typeof n&amp;&amp;(n=Object.keys(n.sizes).length?n.sizes:n.size),a[i[1]]=n)}));const c=this.effects[l],d=c.interaction;s[d]||(s[d]={}),c.actions.forEach((e=&gt;s[d][e]=a))}));let i,o,r=this.$element;const a=this.getElementType();if("element"===n&amp;&amp;!["section","container"].includes(a)){let e;i=r,e="column"===a?".elementor-widget-wrap":".elementor-widget-container",o=r.find("&gt; "+e),r=0===o.length?this.$element:o}const l={type:n,interactions:s,elementSettings:t,$element:r,$dimensionsElement:i,refreshDimensions:this.isEdit,range:t[e+"_range"],classes:{element:"elementor-motion-effects-element",parent:"elementor-motion-effects-parent",backgroundType:"elementor-motion-effects-element-type-background",container:"elementor-motion-effects-container",layer:"elementor-motion-effects-layer",perspective:"elementor-motion-effects-perspective"}};return l.range||"fixed"!==this.getCurrentDeviceSetting("_position")||(l.range="page"),"fixed"===this.getCurrentDeviceSetting("_position")&amp;&amp;(l.isFixedPosition=!0),"background"===n&amp;&amp;"column"===this.getElementType()&amp;&amp;(l.addBackgroundLayerTo=" &gt; .elementor-element-populated"),l}activate(e){const t=this.prepareOptions(e);jQuery.isEmptyObject(t.interactions)||(this[e]=new i.default(t))}deactivate(e){this[e]&amp;&amp;(this[e].destroy(),delete this[e])}toggle(){const e=elementorFrontend.getCurrentDeviceMode(),t=this.getElementSettings();["motion_fx","background_motion_fx"].forEach((n=&gt;{const s=t[n+"_devices"];(!s||-1!==s.indexOf(e))&amp;&amp;(t[n+"_motion_fx_scrolling"]||t[n+"_motion_fx_mouse"])?this[n]?this.refreshInstance(n):this.activate(n):this.deactivate(n)}))}refreshInstance(e){const t=this[e];if(!t)return;const n=this.prepareOptions(e);t.setSettings(n),t.refresh()}onInit(){super.onInit(),this.initEffects(),this.addCSSTransformEvents(),this.toggle()}onElementChange(e){if(/motion_fx_((scrolling)|(mouse)|(devices))$/.test(e))return"motion_fx_motion_fx_scrolling"===e&amp;&amp;this.addCSSTransformEvents(),void this.toggle();const t=e.match(".*?(motion_fx|_transform)");if(t){const e=t[0].match("(_transform)")?"motion_fx":t[0];this.refreshInstance(e),this[e]||this.activate(e)}/^_position/.test(e)&amp;&amp;["motion_fx","background_motion_fx"].forEach((e=&gt;{this.refreshInstance(e)}))}onDestroy(){super.onDestroy(),["motion_fx","background_motion_fx"].forEach((e=&gt;{this.deactivate(e)}))}}t.default=_default},3039:(e,t)=&gt;{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;class _default extends elementorModules.Module{getMovePointFromPassedPercents(e,t){return+(t/e*100).toFixed(2)}getEffectValueFromMovePoint(e,t){return e*t/100}getStep(e,t){return"element"===this.getSettings("type")?this.getElementStep(e,t):this.getBackgroundStep(e,t)}getElementStep(e,t){return-(e-50)*t.speed}getBackgroundStep(e,t){const n=this.getSettings("dimensions.movable"+t.axis.toUpperCase());return-this.getEffectValueFromMovePoint(n,e)}getDirectionMovePoint(e,t,n){let s;return e&lt;n.start?"out-in"===t?s=0:"in-out"===t?s=100:(s=this.getMovePointFromPassedPercents(n.start,e),"in-out-in"===t&amp;&amp;(s=100-s)):e&lt;n.end?"in-out-in"===t?s=0:"out-in-out"===t?s=100:(s=this.getMovePointFromPassedPercents(n.end-n.start,e-n.start),"in-out"===t&amp;&amp;(s=100-s)):"in-out"===t?s=0:"out-in"===t?s=100:(s=this.getMovePointFromPassedPercents(100-n.end,100-e),"in-out-in"===t&amp;&amp;(s=100-s)),s}translateX(e,t){e.axis="x",e.unit="px",this.transform("translateX",t,e)}translateY(e,t){e.axis="y",e.unit="px",this.transform("translateY",t,e)}translateXY(e,t,n){this.translateX(e,t),this.translateY(e,n)}tilt(e,t,n){const s={speed:e.speed/10,direction:e.direction};this.rotateX(s,n),this.rotateY(s,100-t)}rotateX(e,t){e.axis="x",e.unit="deg",this.transform("rotateX",t,e)}rotateY(e,t){e.axis="y",e.unit="deg",this.transform("rotateY",t,e)}rotateZ(e,t){e.unit="deg",this.transform("rotateZ",t,e)}scale(e,t){const n=this.getDirectionMovePoint(t,e.direction,e.range);this.updateRulePart("transform","scale",1+e.speed*n/1e3)}transform(e,t,n){n.direction&amp;&amp;(t=100-t),this.updateRulePart("transform",e,this.getStep(t,n)+n.unit)}setCSSTransformVariables(e){this.CSSTransformVariables=[],jQuery.each(e,((e,t)=&gt;{const n=e.match(/_transform_(.+?)_effect/m);if(n&amp;&amp;t){if("perspective"===n[1])return void this.CSSTransformVariables.unshift(n[1]);if(this.CSSTransformVariables.includes(n[1]))return;this.CSSTransformVariables.push(n[1])}}))}opacity(e,t){const n=this.getDirectionMovePoint(t,e.direction,e.range),s=e.level/10,i=1-s+this.getEffectValueFromMovePoint(s,n);this.$element.css({opacity:i,"will-change":"opacity"})}blur(e,t){const n=this.getDirectionMovePoint(t,e.direction,e.range),s=e.level-this.getEffectValueFromMovePoint(e.level,n);this.updateRulePart("filter","blur",s+"px")}updateRulePart(e,t,n){this.rulesVariables[e]||(this.rulesVariables[e]={}),this.rulesVariables[e][t]||(this.rulesVariables[e][t]=!0,this.updateRule(e));const s=`--${t}`;this.$element[0].style.setProperty(s,n)}updateRule(e){let t="";t+=this.concatTransformCSSProperties(e),t+=this.concatTransformMotionEffectCSSProperties(e),this.$element.css(e,t)}concatTransformCSSProperties(e){let t="";return"transform"===e&amp;&amp;jQuery.each(this.CSSTransformVariables,((e,n)=&gt;{const s=n;n.startsWith("flip")&amp;&amp;(n=n.replace("flip","scale"));const i=n.startsWith("rotate")||n.startsWith("skew")?"deg":"px",o=n.startsWith("scale")?1:0+i;t+=`${n}(var(--e-transform-${s}, ${o}))`})),t}concatTransformMotionEffectCSSProperties(e){let t="";return jQuery.each(this.rulesVariables[e],(e=&gt;{t+=`${e}(var(--${e}))`})),t}runAction(e,t,n){t.affectedRange&amp;&amp;(t.affectedRange.start&gt;n&amp;&amp;(n=t.affectedRange.start),t.affectedRange.end&lt;n&amp;&amp;(n=t.affectedRange.end));for(var s=arguments.length,i=new Array(s&gt;3?s-3:0),o=3;o&lt;s;o++)i[o-3]=arguments[o];this[e](t,n,...i)}refresh(){this.rulesVariables={},this.CSSTransformVariables=[],this.$element.css({transform:"",filter:"",opacity:"","will-change":""})}onInit(){this.$element=this.getSettings("$targetElement"),this.refresh()}}t.default=_default},3323:(e,t)=&gt;{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;class _default extends elementorModules.ViewModule{__construct(e){this.motionFX=e.motionFX,this.intersectionObservers||this.setElementInViewportObserver()}setElementInViewportObserver(){this.intersectionObserver=elementorModules.utils.Scroll.scrollObserver({callback:e=&gt;{e.isInViewport?this.onInsideViewport():this.removeAnimationFrameRequest()}});const e="page"===this.motionFX.getSettings("range")?elementorFrontend.elements.$body[0]:this.motionFX.elements.$parent[0];this.intersectionObserver.observe(e)}onInsideViewport=()=&gt;{this.run(),this.animationFrameRequest=requestAnimationFrame(this.onInsideViewport)};runCallback(){this.getSettings("callback")(...arguments)}removeIntersectionObserver(){this.intersectionObserver&amp;&amp;this.intersectionObserver.unobserve(this.motionFX.elements.$parent[0])}removeAnimationFrameRequest(){this.animationFrameRequest&amp;&amp;cancelAnimationFrame(this.animationFrameRequest)}destroy(){this.removeAnimationFrameRequest(),this.removeIntersectionObserver()}onInit(){super.onInit()}}t.default=_default},5481:(e,t,n)=&gt;{"use strict";var s=n(6784);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var i=s(n(3323));class MouseMoveInteraction extends i.default{bindEvents(){MouseMoveInteraction.mouseTracked||(elementorFrontend.elements.$window.on("mousemove",MouseMoveInteraction.updateMousePosition),MouseMoveInteraction.mouseTracked=!0)}run(){const e=MouseMoveInteraction.mousePosition,t=this.oldMousePosition;if(t.x===e.x&amp;&amp;t.y===e.y)return;this.oldMousePosition={x:e.x,y:e.y};const n=100/innerWidth*e.x,s=100/innerHeight*e.y;this.runCallback(n,s)}onInit(){this.oldMousePosition={},super.onInit()}}t.default=MouseMoveInteraction,MouseMoveInteraction.mousePosition={},MouseMoveInteraction.updateMousePosition=e=&gt;{MouseMoveInteraction.mousePosition={x:e.clientX,y:e.clientY}}},2647:(e,t,n)=&gt;{"use strict";var s=n(6784);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var i=s(n(3323));class _default extends i.default{run(){if(pageYOffset===this.windowScrollTop)return!1;this.onScrollMovement(),this.windowScrollTop=pageYOffset}onScrollMovement(){this.updateMotionFxDimensions(),this.updateAnimation(),this.resetTransitionVariable()}resetTransitionVariable(){this.motionFX.$element.css("--e-transform-transition-duration","100ms")}updateMotionFxDimensions(){this.motionFX.getSettings().refreshDimensions&amp;&amp;this.motionFX.defineDimensions()}updateAnimation(){let e;e="page"===this.motionFX.getSettings("range")?elementorModules.utils.Scroll.getPageScrollPercentage():this.motionFX.getSettings("isFixedPosition")?elementorModules.utils.Scroll.getPageScrollPercentage({},window.innerHeight):elementorModules.utils.Scroll.getElementViewportPercentage(this.motionFX.elements.$parent),this.runCallback(e)}}t.default=_default},739:(e,t,n)=&gt;{"use strict";var s=n(6784);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var i=s(n(2647)),o=s(n(5481)),r=s(n(3039));class _default extends elementorModules.ViewModule{getDefaultSettings(){return{type:"element",$element:null,$dimensionsElement:null,addBackgroundLayerTo:null,interactions:{},refreshDimensions:!1,range:"viewport",classes:{element:"motion-fx-element",parent:"motion-fx-parent",backgroundType:"motion-fx-element-type-background",container:"motion-fx-container",layer:"motion-fx-layer",perspective:"motion-fx-perspective"}}}bindEvents(){this.defineDimensions=this.defineDimensions.bind(this),elementorFrontend.elements.$window.on("resize elementor-pro/motion-fx/recalc",this.defineDimensions)}unbindEvents(){elementorFrontend.elements.$window.off("resize elementor-pro/motion-fx/recalc",this.defineDimensions)}addBackgroundLayer(){const e=this.getSettings();this.elements.$motionFXContainer=jQuery("&lt;div&gt;",{class:e.classes.container}),this.elements.$motionFXLayer=jQuery("&lt;div&gt;",{class:e.classes.layer}),this.updateBackgroundLayerSize(),this.elements.$motionFXContainer.prepend(this.elements.$motionFXLayer);(e.addBackgroundLayerTo?this.$element.find(e.addBackgroundLayerTo):this.$element).prepend(this.elements.$motionFXContainer)}removeBackgroundLayer(){this.elements.$motionFXContainer.remove()}updateBackgroundLayerSize(){const e=this.getSettings(),t={x:0,y:0},n=e.interactions.mouseMove,s=e.interactions.scroll;n&amp;&amp;n.translateXY&amp;&amp;(t.x=10*n.translateXY.speed,t.y=10*n.translateXY.speed),s&amp;&amp;(s.translateX&amp;&amp;(t.x=10*s.translateX.speed),s.translateY&amp;&amp;(t.y=10*s.translateY.speed)),this.elements.$motionFXLayer.css({width:100+t.x+"%",height:100+t.y+"%"})}defineDimensions(){const e=this.getSettings("$dimensionsElement")||this.$element,t=e.offset(),n={elementHeight:e.outerHeight(),elementWidth:e.outerWidth(),elementTop:t.top,elementLeft:t.left};n.elementRange=n.elementHeight+innerHeight,this.setSettings("dimensions",n),"background"===this.getSettings("type")&amp;&amp;this.defineBackgroundLayerDimensions()}defineBackgroundLayerDimensions(){const e=this.getSettings("dimensions");e.layerHeight=this.elements.$motionFXLayer.height(),e.layerWidth=this.elements.$motionFXLayer.width(),e.movableX=e.layerWidth-e.elementWidth,e.movableY=e.layerHeight-e.elementHeight,this.setSettings("dimensions",e)}initInteractionsTypes(){this.interactionsTypes={scroll:i.default,mouseMove:o.default}}prepareSpecialActions(){const e=this.getSettings(),t=!(!e.interactions.mouseMove||!e.interactions.mouseMove.tilt);this.elements.$parent.toggleClass(e.classes.perspective,t)}cleanSpecialActions(){const e=this.getSettings();this.elements.$parent.removeClass(e.classes.perspective)}runInteractions(){var e=this;const t=this.getSettings();this.actions.setCSSTransformVariables(t.elementSettings),this.prepareSpecialActions(),jQuery.each(t.interactions,((t,n)=&gt;{this.interactions[t]=new this.interactionsTypes[t]({motionFX:this,callback:function(){for(var t=arguments.length,s=new Array(t),i=0;i&lt;t;i++)s[i]=arguments[i];jQuery.each(n,((t,n)=&gt;e.actions.runAction(t,n,...s)))}}),this.interactions[t].run()}))}destroyInteractions(){this.cleanSpecialActions(),jQuery.each(this.interactions,((e,t)=&gt;t.destroy())),this.interactions={}}refresh(){this.actions.setSettings(this.getSettings()),"background"===this.getSettings("type")&amp;&amp;(this.updateBackgroundLayerSize(),this.defineBackgroundLayerDimensions()),this.actions.refresh(),this.destroyInteractions(),this.runInteractions()}destroy(){this.destroyInteractions(),this.actions.refresh();const e=this.getSettings();this.$element.removeClass(e.classes.element),this.elements.$parent.removeClass(e.classes.parent),"background"===e.type&amp;&amp;(this.$element.removeClass(e.classes.backgroundType),this.removeBackgroundLayer())}onInit(){super.onInit();const e=this.getSettings();this.$element=e.$element,this.elements.$parent=this.$element.parent(),this.$element.addClass(e.classes.element),this.elements.$parent=this.$element.parent(),this.elements.$parent.addClass(e.classes.parent),"background"===e.type&amp;&amp;(this.$element.addClass(e.classes.backgroundType),this.addBackgroundLayer()),this.defineDimensions(),e.$targetElement="element"===e.type?this.$element:this.elements.$motionFXLayer,this.interactions={},this.actions=new r.default(e),this.initInteractionsTypes(),this.runInteractions()}}t.default=_default},8098:(e,t,n)=&gt;{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;class _default extends elementorModules.Module{constructor(){super(),elementorFrontend.elementsHandler.attachHandler("paypal-button",(()=&gt;n.e(375).then(n.bind(n,466)))),elementorFrontend.elementsHandler.attachHandler("stripe-button",(()=&gt;Promise.all([n.e(234),n.e(857)]).then(n.bind(n,9036))))}}t.default=_default},6275:(e,t,n)=&gt;{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;class _default extends elementorModules.Module{constructor(){super(),elementorFrontend.elementsHandler.attachHandler("progress-tracker",(()=&gt;n.e(581).then(n.bind(n,287))))}}t.default=_default},2450:(e,t,n)=&gt;{"use strict";var s=n(6784);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var i=s(n(2121));class _default extends elementorModules.Module{constructor(){super(),elementorFrontend.elementsHandler.attachHandler("section",i.default,null),elementorFrontend.elementsHandler.attachHandler("container",i.default,null),elementorFrontend.elementsHandler.attachHandler("widget",i.default,null)}}t.default=_default},2121:(e,t,n)=&gt;{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var s=n(6550);t.default=elementorModules.frontend.handlers.Base.extend({currentConfig:{},debouncedReactivate:null,bindEvents(){elementorFrontend.addListenerOnce(this.getUniqueHandlerID()+"sticky","resize",this.reactivateOnResize)},unbindEvents(){elementorFrontend.removeListeners(this.getUniqueHandlerID()+"sticky","resize",this.reactivateOnResize)},isStickyInstanceActive(){return void 0!==this.$element.data("sticky")},getResponsiveSetting(e){const t=this.getElementSettings();return elementorFrontend.getCurrentDeviceSetting(t,e)},getResponsiveSettingList:e=&gt;["",...Object.keys(elementorFrontend.config.responsive.activeBreakpoints)].map((t=&gt;t?`${e}_${t}`:e)),getConfig(){const e=this.getElementSettings(),t={to:e.sticky,offset:this.getResponsiveSetting("sticky_offset"),effectsOffset:this.getResponsiveSetting("sticky_effects_offset"),classes:{sticky:"elementor-sticky",stickyActive:"elementor-sticky--active elementor-section--handles-inside",stickyEffects:"elementor-sticky--effects",spacer:"elementor-sticky__spacer"},isRTL:elementorFrontend.config.is_rtl,isScrollSnapActive:(0,s.isScrollSnapActive)(),handleScrollbarWidth:elementorFrontend.isEditMode()},n=elementorFrontend.elements.$wpAdminBar,i=this.isContainerElement(this.$element[0])&amp;&amp;!this.isContainerElement(this.$element[0].parentElement);return n.length&amp;&amp;"top"===e.sticky&amp;&amp;"fixed"===n.css("position")&amp;&amp;(t.offset+=n.height()),e.sticky_parent&amp;&amp;!i&amp;&amp;(t.parent=".e-con, .e-con-inner, .elementor-widget-wrap"),t},activate(){this.currentConfig=this.getConfig(),this.$element.sticky(this.currentConfig)},deactivate(){this.isStickyInstanceActive()&amp;&amp;this.$element.sticky("destroy")},run(e){if(this.getElementSettings("sticky")){var t=elementorFrontend.getCurrentDeviceMode();-1!==this.getElementSettings("sticky_on").indexOf(t)?!0===e?this.reactivate():this.isStickyInstanceActive()||this.activate():this.deactivate()}else this.deactivate()},reactivateOnResize(){clearTimeout(this.debouncedReactivate),this.debouncedReactivate=setTimeout((()=&gt;{const e=this.getConfig();JSON.stringify(e)!==JSON.stringify(this.currentConfig)&amp;&amp;this.run(!0)}),300)},reactivate(){this.deactivate(),this.activate()},onElementChange(e){-1!==["sticky","sticky_on"].indexOf(e)&amp;&amp;this.run(!0);-1!==[...this.getResponsiveSettingList("sticky_offset"),...this.getResponsiveSettingList("sticky_effects_offset"),"sticky_parent"].indexOf(e)&amp;&amp;this.reactivate()},onDeviceModeChange(){setTimeout((()=&gt;this.run(!0)))},onInit(){elementorModules.frontend.handlers.Base.prototype.onInit.apply(this,arguments),elementorFrontend.isEditMode()&amp;&amp;elementor.listenTo(elementor.channels.deviceMode,"change",(()=&gt;this.onDeviceModeChange())),this.run()},onDestroy(){elementorModules.frontend.handlers.Base.prototype.onDestroy.apply(this,arguments),this.deactivate()},isContainerElement:e=&gt;["e-con","e-con-inner"].some((t=&gt;e?.classList.contains(t)))})},7937:(e,t,n)=&gt;{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;class _default extends elementorModules.Module{constructor(){super(),elementorFrontend.hooks.addAction("frontend/element_ready/video-playlist.default",(e=&gt;{n.e(519).then(n.bind(n,4161)).then((t=&gt;{let{default:n}=t;elementorFrontend.elementsHandler.addHandler(n,{$element:e,toggleSelf:!1})}))}))}}t.default=_default},6550:(e,t)=&gt;{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.isScrollSnapActive=t.escapeHTML=void 0;t.escapeHTML=e=&gt;{const t={"&amp;":"&amp;amp;","&lt;":"&amp;lt;","&gt;":"&amp;gt;","'":"&amp;#39;",'"':"&amp;quot;"};return e.replace(/[&amp;&lt;&gt;'"]/g,(e=&gt;t[e]||e))};t.isScrollSnapActive=()=&gt;"yes"===(elementorFrontend.isEditMode()?elementor.settings.page.model.attributes?.scroll_snap:elementorFrontend.config.settings.page?.scroll_snap)},6784:e=&gt;{e.exports=function _interopRequireDefault(e){return e&amp;&amp;e.__esModule?e:{default:e}},e.exports.__esModule=!0,e.exports.default=e.exports}},e=&gt;{var t;t=3e3,e(e.s=t)}]);/*! jQuery UI - v1.13.3 - 2024-04-26
* https://jqueryui.com
* Includes: widget.js, position.js, data.js, disable-selection.js, effect.js, effects/effect-blind.js, effects/effect-bounce.js, effects/effect-clip.js, effects/effect-drop.js, effects/effect-explode.js, effects/effect-fade.js, effects/effect-fold.js, effects/effect-highlight.js, effects/effect-puff.js, effects/effect-pulsate.js, effects/effect-scale.js, effects/effect-shake.js, effects/effect-size.js, effects/effect-slide.js, effects/effect-transfer.js, focusable.js, form-reset-mixin.js, jquery-patch.js, keycode.js, labels.js, scroll-parent.js, tabbable.js, unique-id.js, widgets/accordion.js, widgets/autocomplete.js, widgets/button.js, widgets/checkboxradio.js, widgets/controlgroup.js, widgets/datepicker.js, widgets/dialog.js, widgets/draggable.js, widgets/droppable.js, widgets/menu.js, widgets/mouse.js, widgets/progressbar.js, widgets/resizable.js, widgets/selectable.js, widgets/selectmenu.js, widgets/slider.js, widgets/sortable.js, widgets/spinner.js, widgets/tabs.js, widgets/tooltip.js
* Copyright jQuery Foundation and other contributors; Licensed MIT */
!function(t){"use strict";"function"==typeof define&amp;&amp;define.amd?define(["jquery"],t):t(jQuery)}(function(x){"use strict";var t,e,i,n,W,C,o,s,r,l,a,h,u;function E(t,e,i){return[parseFloat(t[0])*(a.test(t[0])?e/100:1),parseFloat(t[1])*(a.test(t[1])?i/100:1)]}function L(t,e){return parseInt(x.css(t,e),10)||0}function N(t){return null!=t&amp;&amp;t===t.window}x.ui=x.ui||{},x.ui.version="1.13.3",
/*!
 * jQuery UI :data 1.13.3
 * https://jqueryui.com
 *
 * Copyright OpenJS Foundation and other contributors
 * Released under the MIT license.
 * https://jquery.org/license
 */
x.extend(x.expr.pseudos,{data:x.expr.createPseudo?x.expr.createPseudo(function(e){return function(t){return!!x.data(t,e)}}):function(t,e,i){return!!x.data(t,i[3])}}),
/*!
 * jQuery UI Disable Selection 1.13.3
 * https://jqueryui.com
 *
 * Copyright OpenJS Foundation and other contributors
 * Released under the MIT license.
 * https://jquery.org/license
 */
x.fn.extend({disableSelection:(t="onselectstart"in document.createElement("div")?"selectstart":"mousedown",function(){return this.on(t+".ui-disableSelection",function(t){t.preventDefault()})}),enableSelection:function(){return this.off(".ui-disableSelection")}}),
/*!
 * jQuery UI Focusable 1.13.3
 * https://jqueryui.com
 *
 * Copyright OpenJS Foundation and other contributors
 * Released under the MIT license.
 * https://jquery.org/license
 */
x.ui.focusable=function(t,e){var i,n,o,s=t.nodeName.toLowerCase();return"area"===s?(o=(i=t.parentNode).name,!(!t.href||!o||"map"!==i.nodeName.toLowerCase())&amp;&amp;0&lt;(i=x("img[usemap='#"+o+"']")).length&amp;&amp;i.is(":visible")):(/^(input|select|textarea|button|object)$/.test(s)?(n=!t.disabled)&amp;&amp;(o=x(t).closest("fieldset")[0])&amp;&amp;(n=!o.disabled):n="a"===s&amp;&amp;t.href||e,n&amp;&amp;x(t).is(":visible")&amp;&amp;function(t){var e=t.css("visibility");for(;"inherit"===e;)t=t.parent(),e=t.css("visibility");return"visible"===e}(x(t)))},x.extend(x.expr.pseudos,{focusable:function(t){return x.ui.focusable(t,null!=x.attr(t,"tabindex"))}}),x.fn._form=function(){return"string"==typeof this[0].form?this.closest("form"):x(this[0].form)},
/*!
 * jQuery UI Form Reset Mixin 1.13.3
 * https://jqueryui.com
 *
 * Copyright OpenJS Foundation and other contributors
 * Released under the MIT license.
 * https://jquery.org/license
 */
x.ui.formResetMixin={_formResetHandler:function(){var e=x(this);setTimeout(function(){var t=e.data("ui-form-reset-instances");x.each(t,function(){this.refresh()})})},_bindFormResetHandler:function(){var t;this.form=this.element._form(),this.form.length&amp;&amp;((t=this.form.data("ui-form-reset-instances")||[]).length||this.form.on("reset.ui-form-reset",this._formResetHandler),t.push(this),this.form.data("ui-form-reset-instances",t))},_unbindFormResetHandler:function(){var t;this.form.length&amp;&amp;((t=this.form.data("ui-form-reset-instances")).splice(x.inArray(this,t),1),t.length?this.form.data("ui-form-reset-instances",t):this.form.removeData("ui-form-reset-instances").off("reset.ui-form-reset"))}},x.ui.ie=!!/msie [\w.]+/.exec(navigator.userAgent.toLowerCase()),
/*!
 * jQuery UI Support for jQuery core 1.8.x and newer 1.13.3
 * https://jqueryui.com
 *
 * Copyright OpenJS Foundation and other contributors
 * Released under the MIT license.
 * https://jquery.org/license
 *
 */
x.expr.pseudos||(x.expr.pseudos=x.expr[":"]),x.uniqueSort||(x.uniqueSort=x.unique),x.escapeSelector||(e=/([\0-\x1f\x7f]|^-?\d)|^-$|[^\x80-\uFFFF\w-]/g,i=function(t,e){return e?"\0"===t?"�":t.slice(0,-1)+"\\"+t.charCodeAt(t.length-1).toString(16)+" ":"\\"+t},x.escapeSelector=function(t){return(t+"").replace(e,i)}),x.fn.even&amp;&amp;x.fn.odd||x.fn.extend({even:function(){return this.filter(function(t){return t%2==0})},odd:function(){return this.filter(function(t){return t%2==1})}}),
/*!
 * jQuery UI Keycode 1.13.3
 * https://jqueryui.com
 *
 * Copyright OpenJS Foundation and other contributors
 * Released under the MIT license.
 * https://jquery.org/license
 */
x.ui.keyCode={BACKSPACE:8,COMMA:188,DELETE:46,DOWN:40,END:35,ENTER:13,ESCAPE:27,HOME:36,LEFT:37,PAGE_DOWN:34,PAGE_UP:33,PERIOD:190,RIGHT:39,SPACE:32,TAB:9,UP:38},
/*!
 * jQuery UI Labels 1.13.3
 * https://jqueryui.com
 *
 * Copyright OpenJS Foundation and other contributors
 * Released under the MIT license.
 * https://jquery.org/license
 */
x.fn.labels=function(){var t,e,i;return this.length?this[0].labels&amp;&amp;this[0].labels.length?this.pushStack(this[0].labels):(e=this.eq(0).parents("label"),(t=this.attr("id"))&amp;&amp;(i=(i=this.eq(0).parents().last()).add((i.length?i:this).siblings()),t="label[for='"+x.escapeSelector(t)+"']",e=e.add(i.find(t).addBack(t))),this.pushStack(e)):this.pushStack([])},x.ui.plugin={add:function(t,e,i){var n,o=x.ui[t].prototype;for(n in i)o.plugins[n]=o.plugins[n]||[],o.plugins[n].push([e,i[n]])},call:function(t,e,i,n){var o,s=t.plugins[e];if(s&amp;&amp;(n||t.element[0].parentNode&amp;&amp;11!==t.element[0].parentNode.nodeType))for(o=0;o&lt;s.length;o++)t.options[s[o][0]]&amp;&amp;s[o][1].apply(t.element,i)}},
/*!
 * jQuery UI Position 1.13.3
 * https://jqueryui.com
 *
 * Copyright OpenJS Foundation and other contributors
 * Released under the MIT license.
 * https://jquery.org/license
 *
 * https://api.jqueryui.com/position/
 */
W=Math.max,C=Math.abs,o=/left|center|right/,s=/top|center|bottom/,r=/[\+\-]\d+(\.[\d]+)?%?/,l=/^\w+/,a=/%$/,h=x.fn.position,x.position={scrollbarWidth:function(){var t,e,i;return void 0!==n?n:(i=(e=x("&lt;div style='display:block;position:absolute;width:200px;height:200px;overflow:hidden;'&gt;&lt;div style='height:300px;width:auto;'&gt;&lt;/div&gt;&lt;/div&gt;")).children()[0],x("body").append(e),t=i.offsetWidth,e.css("overflow","scroll"),t===(i=i.offsetWidth)&amp;&amp;(i=e[0].clientWidth),e.remove(),n=t-i)},getScrollInfo:function(t){var e=t.isWindow||t.isDocument?"":t.element.css("overflow-x"),i=t.isWindow||t.isDocument?"":t.element.css("overflow-y"),e="scroll"===e||"auto"===e&amp;&amp;t.width&lt;t.element[0].scrollWidth;return{width:"scroll"===i||"auto"===i&amp;&amp;t.height&lt;t.element[0].scrollHeight?x.position.scrollbarWidth():0,height:e?x.position.scrollbarWidth():0}},getWithinInfo:function(t){var e=x(t||window),i=N(e[0]),n=!!e[0]&amp;&amp;9===e[0].nodeType;return{element:e,isWindow:i,isDocument:n,offset:!i&amp;&amp;!n?x(t).offset():{left:0,top:0},scrollLeft:e.scrollLeft(),scrollTop:e.scrollTop(),width:e.outerWidth(),height:e.outerHeight()}}},x.fn.position=function(f){var c,d,p,g,m,v,y,w,b,_,t,e;return f&amp;&amp;f.of?(v="string"==typeof(f=x.extend({},f)).of?x(document).find(f.of):x(f.of),y=x.position.getWithinInfo(f.within),w=x.position.getScrollInfo(y),b=(f.collision||"flip").split(" "),_={},e=9===(e=(t=v)[0]).nodeType?{width:t.width(),height:t.height(),offset:{top:0,left:0}}:N(e)?{width:t.width(),height:t.height(),offset:{top:t.scrollTop(),left:t.scrollLeft()}}:e.preventDefault?{width:0,height:0,offset:{top:e.pageY,left:e.pageX}}:{width:t.outerWidth(),height:t.outerHeight(),offset:t.offset()},v[0].preventDefault&amp;&amp;(f.at="left top"),d=e.width,p=e.height,m=x.extend({},g=e.offset),x.each(["my","at"],function(){var t,e,i=(f[this]||"").split(" ");(i=1===i.length?o.test(i[0])?i.concat(["center"]):s.test(i[0])?["center"].concat(i):["center","center"]:i)[0]=o.test(i[0])?i[0]:"center",i[1]=s.test(i[1])?i[1]:"center",t=r.exec(i[0]),e=r.exec(i[1]),_[this]=[t?t[0]:0,e?e[0]:0],f[this]=[l.exec(i[0])[0],l.exec(i[1])[0]]}),1===b.length&amp;&amp;(b[1]=b[0]),"right"===f.at[0]?m.left+=d:"center"===f.at[0]&amp;&amp;(m.left+=d/2),"bottom"===f.at[1]?m.top+=p:"center"===f.at[1]&amp;&amp;(m.top+=p/2),c=E(_.at,d,p),m.left+=c[0],m.top+=c[1],this.each(function(){var i,t,r=x(this),l=r.outerWidth(),a=r.outerHeight(),e=L(this,"marginLeft"),n=L(this,"marginTop"),o=l+e+L(this,"marginRight")+w.width,s=a+n+L(this,"marginBottom")+w.height,h=x.extend({},m),u=E(_.my,r.outerWidth(),r.outerHeight());"right"===f.my[0]?h.left-=l:"center"===f.my[0]&amp;&amp;(h.left-=l/2),"bottom"===f.my[1]?h.top-=a:"center"===f.my[1]&amp;&amp;(h.top-=a/2),h.left+=u[0],h.top+=u[1],i={marginLeft:e,marginTop:n},x.each(["left","top"],function(t,e){x.ui.position[b[t]]&amp;&amp;x.ui.position[b[t]][e](h,{targetWidth:d,targetHeight:p,elemWidth:l,elemHeight:a,collisionPosition:i,collisionWidth:o,collisionHeight:s,offset:[c[0]+u[0],c[1]+u[1]],my:f.my,at:f.at,within:y,elem:r})}),f.using&amp;&amp;(t=function(t){var e=g.left-h.left,i=e+d-l,n=g.top-h.top,o=n+p-a,s={target:{element:v,left:g.left,top:g.top,width:d,height:p},element:{element:r,left:h.left,top:h.top,width:l,height:a},horizontal:i&lt;0?"left":0&lt;e?"right":"center",vertical:o&lt;0?"top":0&lt;n?"bottom":"middle"};d&lt;l&amp;&amp;C(e+i)&lt;d&amp;&amp;(s.horizontal="center"),p&lt;a&amp;&amp;C(n+o)&lt;p&amp;&amp;(s.vertical="middle"),W(C(e),C(i))&gt;W(C(n),C(o))?s.important="horizontal":s.important="vertical",f.using.call(this,t,s)}),r.offset(x.extend(h,{using:t}))})):h.apply(this,arguments)},x.ui.position={fit:{left:function(t,e){var i,n=e.within,o=n.isWindow?n.scrollLeft:n.offset.left,n=n.width,s=t.left-e.collisionPosition.marginLeft,r=o-s,l=s+e.collisionWidth-n-o;e.collisionWidth&gt;n?0&lt;r&amp;&amp;l&lt;=0?(i=t.left+r+e.collisionWidth-n-o,t.left+=r-i):t.left=!(0&lt;l&amp;&amp;r&lt;=0)&amp;&amp;l&lt;r?o+n-e.collisionWidth:o:0&lt;r?t.left+=r:0&lt;l?t.left-=l:t.left=W(t.left-s,t.left)},top:function(t,e){var i,n=e.within,n=n.isWindow?n.scrollTop:n.offset.top,o=e.within.height,s=t.top-e.collisionPosition.marginTop,r=n-s,l=s+e.collisionHeight-o-n;e.collisionHeight&gt;o?0&lt;r&amp;&amp;l&lt;=0?(i=t.top+r+e.collisionHeight-o-n,t.top+=r-i):t.top=!(0&lt;l&amp;&amp;r&lt;=0)&amp;&amp;l&lt;r?n+o-e.collisionHeight:n:0&lt;r?t.top+=r:0&lt;l?t.top-=l:t.top=W(t.top-s,t.top)}},flip:{left:function(t,e){var i=e.within,n=i.offset.left+i.scrollLeft,o=i.width,i=i.isWindow?i.scrollLeft:i.offset.left,s=t.left-e.collisionPosition.marginLeft,r=s-i,s=s+e.collisionWidth-o-i,l="left"===e.my[0]?-e.elemWidth:"right"===e.my[0]?e.elemWidth:0,a="left"===e.at[0]?e.targetWidth:"right"===e.at[0]?-e.targetWidth:0,h=-2*e.offset[0];r&lt;0?((o=t.left+l+a+h+e.collisionWidth-o-n)&lt;0||o&lt;C(r))&amp;&amp;(t.left+=l+a+h):0&lt;s&amp;&amp;(0&lt;(n=t.left-e.collisionPosition.marginLeft+l+a+h-i)||C(n)&lt;s)&amp;&amp;(t.left+=l+a+h)},top:function(t,e){var i=e.within,n=i.offset.top+i.scrollTop,o=i.height,i=i.isWindow?i.scrollTop:i.offset.top,s=t.top-e.collisionPosition.marginTop,r=s-i,s=s+e.collisionHeight-o-i,l="top"===e.my[1]?-e.elemHeight:"bottom"===e.my[1]?e.elemHeight:0,a="top"===e.at[1]?e.targetHeight:"bottom"===e.at[1]?-e.targetHeight:0,h=-2*e.offset[1];r&lt;0?((o=t.top+l+a+h+e.collisionHeight-o-n)&lt;0||o&lt;C(r))&amp;&amp;(t.top+=l+a+h):0&lt;s&amp;&amp;(0&lt;(n=t.top-e.collisionPosition.marginTop+l+a+h-i)||C(n)&lt;s)&amp;&amp;(t.top+=l+a+h)}},flipfit:{left:function(){x.ui.position.flip.left.apply(this,arguments),x.ui.position.fit.left.apply(this,arguments)},top:function(){x.ui.position.flip.top.apply(this,arguments),x.ui.position.fit.top.apply(this,arguments)}}},x.ui.safeActiveElement=function(e){var i;try{i=e.activeElement}catch(t){i=e.body}return i=(i=i||e.body).nodeName?i:e.body},x.ui.safeBlur=function(t){t&amp;&amp;"body"!==t.nodeName.toLowerCase()&amp;&amp;x(t).trigger("blur")},
/*!
 * jQuery UI Scroll Parent 1.13.3
 * https://jqueryui.com
 *
 * Copyright OpenJS Foundation and other contributors
 * Released under the MIT license.
 * https://jquery.org/license
 */
x.fn.scrollParent=function(t){var e=this.css("position"),i="absolute"===e,n=t?/(auto|scroll|hidden)/:/(auto|scroll)/,t=this.parents().filter(function(){var t=x(this);return(!i||"static"!==t.css("position"))&amp;&amp;n.test(t.css("overflow")+t.css("overflow-y")+t.css("overflow-x"))}).eq(0);return"fixed"!==e&amp;&amp;t.length?t:x(this[0].ownerDocument||document)},
/*!
 * jQuery UI Tabbable 1.13.3
 * https://jqueryui.com
 *
 * Copyright OpenJS Foundation and other contributors
 * Released under the MIT license.
 * https://jquery.org/license
 */
x.extend(x.expr.pseudos,{tabbable:function(t){var e=x.attr(t,"tabindex"),i=null!=e;return(!i||0&lt;=e)&amp;&amp;x.ui.focusable(t,i)}}),
/*!
 * jQuery UI Unique ID 1.13.3
 * https://jqueryui.com
 *
 * Copyright OpenJS Foundation and other contributors
 * Released under the MIT license.
 * https://jquery.org/license
 */
x.fn.extend({uniqueId:(u=0,function(){return this.each(function(){this.id||(this.id="ui-id-"+ ++u)})}),removeUniqueId:function(){return this.each(function(){/^ui-id-\d+$/.test(this.id)&amp;&amp;x(this).removeAttr("id")})}});
/*!
 * jQuery UI Widget 1.13.3
 * https://jqueryui.com
 *
 * Copyright OpenJS Foundation and other contributors
 * Released under the MIT license.
 * https://jquery.org/license
 */
var f,c=0,d=Array.prototype.hasOwnProperty,p=Array.prototype.slice;x.cleanData=(f=x.cleanData,function(t){for(var e,i,n=0;null!=(i=t[n]);n++)(e=x._data(i,"events"))&amp;&amp;e.remove&amp;&amp;x(i).triggerHandler("remove");f(t)}),x.widget=function(t,i,e){var n,o,s,r={},l=t.split(".")[0],a=l+"-"+(t=t.split(".")[1]);return e||(e=i,i=x.Widget),Array.isArray(e)&amp;&amp;(e=x.extend.apply(null,[{}].concat(e))),x.expr.pseudos[a.toLowerCase()]=function(t){return!!x.data(t,a)},x[l]=x[l]||{},n=x[l][t],o=x[l][t]=function(t,e){if(!this||!this._createWidget)return new o(t,e);arguments.length&amp;&amp;this._createWidget(t,e)},x.extend(o,n,{version:e.version,_proto:x.extend({},e),_childConstructors:[]}),(s=new i).options=x.widget.extend({},s.options),x.each(e,function(e,n){function o(){return i.prototype[e].apply(this,arguments)}function s(t){return i.prototype[e].apply(this,t)}r[e]="function"!=typeof n?n:function(){var t,e=this._super,i=this._superApply;return this._super=o,this._superApply=s,t=n.apply(this,arguments),this._super=e,this._superApply=i,t}}),o.prototype=x.widget.extend(s,{widgetEventPrefix:n&amp;&amp;s.widgetEventPrefix||t},r,{constructor:o,namespace:l,widgetName:t,widgetFullName:a}),n?(x.each(n._childConstructors,function(t,e){var i=e.prototype;x.widget(i.namespace+"."+i.widgetName,o,e._proto)}),delete n._childConstructors):i._childConstructors.push(o),x.widget.bridge(t,o),o},x.widget.extend=function(t){for(var e,i,n=p.call(arguments,1),o=0,s=n.length;o&lt;s;o++)for(e in n[o])i=n[o][e],d.call(n[o],e)&amp;&amp;void 0!==i&amp;&amp;(x.isPlainObject(i)?t[e]=x.isPlainObject(t[e])?x.widget.extend({},t[e],i):x.widget.extend({},i):t[e]=i);return t},x.widget.bridge=function(s,e){var r=e.prototype.widgetFullName||s;x.fn[s]=function(i){var t="string"==typeof i,n=p.call(arguments,1),o=this;return t?this.length||"instance"!==i?this.each(function(){var t,e=x.data(this,r);return"instance"===i?(o=e,!1):e?"function"!=typeof e[i]||"_"===i.charAt(0)?x.error("no such method '"+i+"' for "+s+" widget instance"):(t=e[i].apply(e,n))!==e&amp;&amp;void 0!==t?(o=t&amp;&amp;t.jquery?o.pushStack(t.get()):t,!1):void 0:x.error("cannot call methods on "+s+" prior to initialization; attempted to call method '"+i+"'")}):o=void 0:(n.length&amp;&amp;(i=x.widget.extend.apply(null,[i].concat(n))),this.each(function(){var t=x.data(this,r);t?(t.option(i||{}),t._init&amp;&amp;t._init()):x.data(this,r,new e(i,this))})),o}},x.Widget=function(){},x.Widget._childConstructors=[],x.Widget.prototype={widgetName:"widget",widgetEventPrefix:"",defaultElement:"&lt;div&gt;",options:{classes:{},disabled:!1,create:null},_createWidget:function(t,e){e=x(e||this.defaultElement||this)[0],this.element=x(e),this.uuid=c++,this.eventNamespace="."+this.widgetName+this.uuid,this.bindings=x(),this.hoverable=x(),this.focusable=x(),this.classesElementLookup={},e!==this&amp;&amp;(x.data(e,this.widgetFullName,this),this._on(!0,this.element,{remove:function(t){t.target===e&amp;&amp;this.destroy()}}),this.document=x(e.style?e.ownerDocument:e.document||e),this.window=x(this.document[0].defaultView||this.document[0].parentWindow)),this.options=x.widget.extend({},this.options,this._getCreateOptions(),t),this._create(),this.options.disabled&amp;&amp;this._setOptionDisabled(this.options.disabled),this._trigger("create",null,this._getCreateEventData()),this._init()},_getCreateOptions:function(){return{}},_getCreateEventData:x.noop,_create:x.noop,_init:x.noop,destroy:function(){var i=this;this._destroy(),x.each(this.classesElementLookup,function(t,e){i._removeClass(e,t)}),this.element.off(this.eventNamespace).removeData(this.widgetFullName),this.widget().off(this.eventNamespace).removeAttr("aria-disabled"),this.bindings.off(this.eventNamespace)},_destroy:x.noop,widget:function(){return this.element},option:function(t,e){var i,n,o,s=t;if(0===arguments.length)return x.widget.extend({},this.options);if("string"==typeof t)if(s={},t=(i=t.split(".")).shift(),i.length){for(n=s[t]=x.widget.extend({},this.options[t]),o=0;o&lt;i.length-1;o++)n[i[o]]=n[i[o]]||{},n=n[i[o]];if(t=i.pop(),1===arguments.length)return void 0===n[t]?null:n[t];n[t]=e}else{if(1===arguments.length)return void 0===this.options[t]?null:this.options[t];s[t]=e}return this._setOptions(s),this},_setOptions:function(t){for(var e in t)this._setOption(e,t[e]);return this},_setOption:function(t,e){return"classes"===t&amp;&amp;this._setOptionClasses(e),this.options[t]=e,"disabled"===t&amp;&amp;this._setOptionDisabled(e),this},_setOptionClasses:function(t){var e,i,n;for(e in t)n=this.classesElementLookup[e],t[e]!==this.options.classes[e]&amp;&amp;n&amp;&amp;n.length&amp;&amp;(i=x(n.get()),this._removeClass(n,e),i.addClass(this._classes({element:i,keys:e,classes:t,add:!0})))},_setOptionDisabled:function(t){this._toggleClass(this.widget(),this.widgetFullName+"-disabled",null,!!t),t&amp;&amp;(this._removeClass(this.hoverable,null,"ui-state-hover"),this._removeClass(this.focusable,null,"ui-state-focus"))},enable:function(){return this._setOptions({disabled:!1})},disable:function(){return this._setOptions({disabled:!0})},_classes:function(o){var s=[],r=this;function t(t,e){for(var i,n=0;n&lt;t.length;n++)i=r.classesElementLookup[t[n]]||x(),i=o.add?(function(){var i=[];o.element.each(function(t,e){x.map(r.classesElementLookup,function(t){return t}).some(function(t){return t.is(e)})||i.push(e)}),r._on(x(i),{remove:"_untrackClassesElement"})}(),x(x.uniqueSort(i.get().concat(o.element.get())))):x(i.not(o.element).get()),r.classesElementLookup[t[n]]=i,s.push(t[n]),e&amp;&amp;o.classes[t[n]]&amp;&amp;s.push(o.classes[t[n]])}return(o=x.extend({element:this.element,classes:this.options.classes||{}},o)).keys&amp;&amp;t(o.keys.match(/\S+/g)||[],!0),o.extra&amp;&amp;t(o.extra.match(/\S+/g)||[]),s.join(" ")},_untrackClassesElement:function(i){var n=this;x.each(n.classesElementLookup,function(t,e){-1!==x.inArray(i.target,e)&amp;&amp;(n.classesElementLookup[t]=x(e.not(i.target).get()))}),this._off(x(i.target))},_removeClass:function(t,e,i){return this._toggleClass(t,e,i,!1)},_addClass:function(t,e,i){return this._toggleClass(t,e,i,!0)},_toggleClass:function(t,e,i,n){var o="string"==typeof t||null===t,e={extra:o?e:i,keys:o?t:e,element:o?this.element:t,add:n="boolean"==typeof n?n:i};return e.element.toggleClass(this._classes(e),n),this},_on:function(o,s,t){var r,l=this;"boolean"!=typeof o&amp;&amp;(t=s,s=o,o=!1),t?(s=r=x(s),this.bindings=this.bindings.add(s)):(t=s,s=this.element,r=this.widget()),x.each(t,function(t,e){function i(){if(o||!0!==l.options.disabled&amp;&amp;!x(this).hasClass("ui-state-disabled"))return("string"==typeof e?l[e]:e).apply(l,arguments)}"string"!=typeof e&amp;&amp;(i.guid=e.guid=e.guid||i.guid||x.guid++);var t=t.match(/^([\w:-]*)\s*(.*)$/),n=t[1]+l.eventNamespace,t=t[2];t?r.on(n,t,i):s.on(n,i)})},_off:function(t,e){e=(e||"").split(" ").join(this.eventNamespace+" ")+this.eventNamespace,t.off(e),this.bindings=x(this.bindings.not(t).get()),this.focusable=x(this.focusable.not(t).get()),this.hoverable=x(this.hoverable.not(t).get())},_delay:function(t,e){var i=this;return setTimeout(function(){return("string"==typeof t?i[t]:t).apply(i,arguments)},e||0)},_hoverable:function(t){this.hoverable=this.hoverable.add(t),this._on(t,{mouseenter:function(t){this._addClass(x(t.currentTarget),null,"ui-state-hover")},mouseleave:function(t){this._removeClass(x(t.currentTarget),null,"ui-state-hover")}})},_focusable:function(t){this.focusable=this.focusable.add(t),this._on(t,{focusin:function(t){this._addClass(x(t.currentTarget),null,"ui-state-focus")},focusout:function(t){this._removeClass(x(t.currentTarget),null,"ui-state-focus")}})},_trigger:function(t,e,i){var n,o,s=this.options[t];if(i=i||{},(e=x.Event(e)).type=(t===this.widgetEventPrefix?t:this.widgetEventPrefix+t).toLowerCase(),e.target=this.element[0],o=e.originalEvent)for(n in o)n in e||(e[n]=o[n]);return this.element.trigger(e,i),!("function"==typeof s&amp;&amp;!1===s.apply(this.element[0],[e].concat(i))||e.isDefaultPrevented())}},x.each({show:"fadeIn",hide:"fadeOut"},function(s,r){x.Widget.prototype["_"+s]=function(e,t,i){var n,o=(t="string"==typeof t?{effect:t}:t)?!0!==t&amp;&amp;"number"!=typeof t&amp;&amp;t.effect||r:s;"number"==typeof(t=t||{})?t={duration:t}:!0===t&amp;&amp;(t={}),n=!x.isEmptyObject(t),t.complete=i,t.delay&amp;&amp;e.delay(t.delay),n&amp;&amp;x.effects&amp;&amp;x.effects.effect[o]?e[s](t):o!==s&amp;&amp;e[o]?e[o](t.duration,t.easing,i):e.queue(function(t){x(this)[s](),i&amp;&amp;i.call(e[0]),t()})}})});/*! elementor - v3.27.0 - 13-03-2025 */
"use strict";(self.webpackChunkelementorFrontend=self.webpackChunkelementorFrontend||[]).push([[313],{4047:(e,t,n)=&gt;{var o=n(6784);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var i=o(n(2890));class _default extends elementorModules.ViewModule{constructor(){super(...arguments),this.documents={},this.initDocumentClasses(),this.attachDocumentsClasses()}getDefaultSettings(){return{selectors:{document:".elementor"}}}getDefaultElements(){const e=this.getSettings("selectors");return{$documents:jQuery(e.document)}}initDocumentClasses(){this.documentClasses={base:i.default},elementorFrontend.hooks.doAction("elementor/frontend/documents-manager/init-classes",this)}addDocumentClass(e,t){this.documentClasses[e]=t}attachDocumentsClasses(){this.elements.$documents.each(((e,t)=&gt;this.attachDocumentClass(jQuery(t))))}attachDocumentClass(e){const t=e.data(),n=t.elementorId,o=t.elementorType,i=this.documentClasses[o]||this.documentClasses.base;this.documents[n]=new i({$element:e,id:n})}}t.default=_default},7248:(e,t,n)=&gt;{var o=n(6784);n(5724),n(4846),n(9655);var i=o(n(4970)),s=o(n(3969)),r=o(n(3678)),a=o(n(8891)),l=o(n(2056)),d=o(n(2439)),c=o(n(3243));e.exports=function(e){var t=this;const o={};this.elementsHandlers={"accordion.default":()=&gt;n.e(131).then(n.bind(n,9675)),"alert.default":()=&gt;n.e(707).then(n.bind(n,7243)),"counter.default":()=&gt;n.e(457).then(n.bind(n,3905)),"progress.default":()=&gt;n.e(234).then(n.bind(n,9754)),"tabs.default":()=&gt;n.e(575).then(n.bind(n,3485)),"toggle.default":()=&gt;n.e(775).then(n.bind(n,3049)),"video.default":()=&gt;n.e(180).then(n.bind(n,3774)),"image-carousel.default":()=&gt;n.e(177).then(n.bind(n,4315)),"text-editor.default":()=&gt;n.e(212).then(n.bind(n,5362)),"wp-widget-media_audio.default":()=&gt;n.e(211).then(n.bind(n,2793))},elementorFrontendConfig.experimentalFeatures["nested-elements"]&amp;&amp;(this.elementsHandlers["nested-tabs.default"]=()=&gt;Promise.resolve().then(n.bind(n,4328))),elementorFrontendConfig.experimentalFeatures["nested-elements"]&amp;&amp;(this.elementsHandlers["nested-accordion.default"]=()=&gt;n.e(915).then(n.bind(n,8216))),elementorFrontendConfig.experimentalFeatures.container&amp;&amp;(this.elementsHandlers["contact-buttons.default"]=()=&gt;n.e(1).then(n.bind(n,6285)),this.elementsHandlers["floating-bars-var-1.default"]=()=&gt;n.e(336).then(n.bind(n,5199)));const addElementsHandlers=()=&gt;{this.elementsHandlers.section=[d.default,...s.default,l.default,c.default],this.elementsHandlers.container=[...s.default],elementorFrontend.isEditMode()&amp;&amp;this.elementsHandlers.container.push(...r.default),this.elementsHandlers.column=a.default,e.each(this.elementsHandlers,((e,t)=&gt;{const n=e.split(".");e=n[0];const o=n[1]||null;this.attachHandler(e,t,o)}))},isClassHandler=e=&gt;e.prototype?.getUniqueHandlerID;this.addHandler=function(t,n){const i=n.$element.data("model-cid");let s;if(i){s=t.prototype.getConstructorID(),o[i]||(o[i]={});const e=o[i][s];e&amp;&amp;e.onDestroy()}const r=new t(n);elementorFrontend.hooks.doAction(`frontend/element_handler_ready/${n.elementName}`,n.$element,e),i&amp;&amp;(o[i][s]=r)},this.attachHandler=(e,n,o)=&gt;{Array.isArray(n)||(n=[n]),n.forEach((n=&gt;function(e,n){let o=arguments.length&gt;2&amp;&amp;void 0!==arguments[2]?arguments[2]:"default";o=o?"."+o:"";const i=e+o;elementorFrontend.hooks.addAction(`frontend/element_ready/${i}`,(e=&gt;{if(isClassHandler(n))t.addHandler(n,{$element:e,elementName:i},!0);else{const o=n();if(!o)return;o instanceof Promise?o.then((n=&gt;{let{default:o}=n;t.addHandler(o,{$element:e,elementName:i},!0)})):t.addHandler(o,{$element:e,elementName:i},!0)}}))}(e,n,o)))},this.getHandler=function(e){const t=this.elementsHandlers[e];return isClassHandler(t)?t:new Promise((e=&gt;{t().then((t=&gt;{let{default:n}=t;e(n)}))}))},this.getHandlers=function(e){return elementorDevTools.deprecation.deprecated("getHandlers","3.1.0","elementorFrontend.elementsHandler.getHandler"),e?this.getHandler(e):this.elementsHandlers},this.runReadyTrigger=function(t){const n=!!t.closest('[data-delay-child-handlers="true"]')&amp;&amp;0!==t.closest('[data-delay-child-handlers="true"]').length;if(elementorFrontend.config.is_static||n)return;const o=jQuery(t),i=o.attr("data-element_type");if(i&amp;&amp;(elementorFrontend.hooks.doAction("frontend/element_ready/global",o,e),elementorFrontend.hooks.doAction(`frontend/element_ready/${i}`,o,e),"widget"===i)){const t=o.attr("data-widget_type");elementorFrontend.hooks.doAction(`frontend/element_ready/${t}`,o,e)}},this.init=()=&gt;{elementorFrontend.hooks.addAction("frontend/element_ready/global",i.default),addElementsHandlers()}}},7603:(e,t,n)=&gt;{var o=n(6784);n(4846),n(6211),n(9655),n(8309);var i=o(n(4047)),s=o(n(8767)),r=o(n(5115)),a=o(n(5073)),l=o(n(3126)),d=o(n(8427)),c=o(n(3582)),u=o(n(4901)),h=o(n(4252)),m=o(n(8422)),g=o(n(5896)),p=o(n(4799)),f=o(n(7842)),v=o(n(607)),b=o(n(9807)),y=n(7672);const _=n(5956),k=n(7248);class Frontend extends elementorModules.ViewModule{constructor(){super(...arguments),this.config=elementorFrontendConfig,this.config.legacyMode={get elementWrappers(){return elementorFrontend.isEditMode()&amp;&amp;window.top.elementorDevTools.deprecation.deprecated("elementorFrontend.config.legacyMode.elementWrappers","3.1.0"),!1}},this.populateActiveBreakpointsConfig()}get Module(){return this.isEditMode()&amp;&amp;parent.elementorDevTools.deprecation.deprecated("elementorFrontend.Module","2.5.0","elementorModules.frontend.handlers.Base"),elementorModules.frontend.handlers.Base}getDefaultSettings(){return{selectors:{elementor:".elementor",adminBar:"#wpadminbar"}}}getDefaultElements(){const e={window,$window:jQuery(window),$document:jQuery(document),$head:jQuery(document.head),$body:jQuery(document.body),$deviceMode:jQuery("&lt;span&gt;",{id:"elementor-device-mode",class:"elementor-screen-only"})};return e.$body.append(e.$deviceMode),e}bindEvents(){this.elements.$window.on("resize",(()=&gt;this.setDeviceModeData()))}getElements(e){return this.getItems(this.elements,e)}getPageSettings(e){const t=this.isEditMode()?elementor.settings.page.model.attributes:this.config.settings.page;return this.getItems(t,e)}getGeneralSettings(e){return this.isEditMode()&amp;&amp;parent.elementorDevTools.deprecation.deprecated("getGeneralSettings()","3.0.0","getKitSettings() and remove the `elementor_` prefix"),this.getKitSettings(`elementor_${e}`)}getKitSettings(e){return this.getItems(this.config.kit,e)}getCurrentDeviceMode(){return getComputedStyle(this.elements.$deviceMode[0],":after").content.replace(/"/g,"")}getDeviceSetting(e,t,n){if("widescreen"===e)return this.getWidescreenSetting(t,n);const o=elementorFrontend.breakpoints.getActiveBreakpointsList({largeToSmall:!0,withDesktop:!0});let i=o.indexOf(e);for(;i&gt;0;){const e=t[n+"_"+o[i]];if(e||0===e)return e;i--}return t[n]}getWidescreenSetting(e,t){const n=t+"_widescreen";let o;return o=e[n]?e[n]:e[t],o}getCurrentDeviceSetting(e,t){return this.getDeviceSetting(elementorFrontend.getCurrentDeviceMode(),e,t)}isEditMode(){return this.config.environmentMode.edit}isWPPreviewMode(){return this.config.environmentMode.wpPreview}initDialogsManager(){let e;this.getDialogsManager=()=&gt;(e||(e=new DialogsManager.Instance),e)}initOnReadyComponents(){this.utils={youtube:new a.default,vimeo:new l.default,baseVideoLoader:new d.default,get lightbox(){return h.default.getLightbox()},urlActions:new c.default,swiper:u.default,environment:r.default,assetsLoader:new m.default,escapeHTML:y.escapeHTML,events:p.default,controls:new v.default,anchor_scroll_margin:new b.default},this.modules={StretchElement:elementorModules.frontend.tools.StretchElement,Masonry:elementorModules.utils.Masonry},this.elementsHandler.init(),this.isEditMode()?elementor.once("document:loaded",(()=&gt;this.onDocumentLoaded())):this.onDocumentLoaded()}initOnReadyElements(){this.elements.$wpAdminBar=this.elements.$document.find(this.getSettings("selectors.adminBar"))}addUserAgentClasses(){for(const[e,t]of Object.entries(r.default))t&amp;&amp;this.elements.$body.addClass("e--ua-"+e)}setDeviceModeData(){this.elements.$body.attr("data-elementor-device-mode",this.getCurrentDeviceMode())}addListenerOnce(e,t,n,o){if(o||(o=this.elements.$window),this.isEditMode())if(this.removeListeners(e,t,o),o instanceof jQuery){const i=t+"."+e;o.on(i,n)}else o.on(t,n,e);else o.on(t,n)}removeListeners(e,t,n,o){if(o||(o=this.elements.$window),o instanceof jQuery){const i=t+"."+e;o.off(i,n)}else o.off(t,n,e)}debounce(e,t){let n;return function(){const o=this,i=arguments,s=!n;clearTimeout(n),n=setTimeout((()=&gt;{n=null,e.apply(o,i)}),t),s&amp;&amp;e.apply(o,i)}}muteMigrationTraces(){jQuery.migrateMute=!0,jQuery.migrateTrace=!1}initModules(){const e={shapes:f.default};elementorFrontend.trigger("elementor/modules/init:before"),elementorFrontend.trigger("elementor/modules/init/before"),Object.entries(e).forEach((e=&gt;{let[t,n]=e;this.modulesHandlers[t]=new n}))}populateActiveBreakpointsConfig(){this.config.responsive.activeBreakpoints={},Object.entries(this.config.responsive.breakpoints).forEach((e=&gt;{let[t,n]=e;n.is_enabled&amp;&amp;(this.config.responsive.activeBreakpoints[t]=n)}))}init(){this.hooks=new _,this.breakpoints=new g.default(this.config.responsive),this.storage=new s.default,this.elementsHandler=new k(jQuery),this.modulesHandlers={},this.addUserAgentClasses(),this.setDeviceModeData(),this.initDialogsManager(),this.isEditMode()&amp;&amp;this.muteMigrationTraces(),p.default.dispatch(this.elements.$window,"elementor/frontend/init"),this.initModules(),this.initOnReadyElements(),this.initOnReadyComponents()}onDocumentLoaded(){this.documentsManager=new i.default,this.trigger("components:init"),new h.default}}window.elementorFrontend=new Frontend,elementorFrontend.isEditMode()||jQuery((()=&gt;elementorFrontend.init()))},628:(e,t,n)=&gt;{Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0,n(4846),n(9655);class BackgroundSlideshow extends elementorModules.frontend.handlers.SwiperBase{getDefaultSettings(){return{classes:{swiperContainer:"elementor-background-slideshow swiper",swiperWrapper:"swiper-wrapper",swiperSlide:"elementor-background-slideshow__slide swiper-slide",swiperPreloader:"swiper-lazy-preloader",slideBackground:"elementor-background-slideshow__slide__image",kenBurns:"elementor-ken-burns",kenBurnsActive:"elementor-ken-burns--active",kenBurnsIn:"elementor-ken-burns--in",kenBurnsOut:"elementor-ken-burns--out"}}}getSwiperOptions(){const e=this.getElementSettings(),t={grabCursor:!1,slidesPerView:1,slidesPerGroup:1,loop:"yes"===e.background_slideshow_loop,speed:e.background_slideshow_transition_duration,autoplay:{delay:e.background_slideshow_slide_duration,stopOnLastSlide:!e.background_slideshow_loop},handleElementorBreakpoints:!0,on:{slideChange:()=&gt;{e.background_slideshow_ken_burns&amp;&amp;this.handleKenBurns()}}};switch("yes"===e.background_slideshow_loop&amp;&amp;(t.loopedSlides=this.getSlidesCount()),e.background_slideshow_slide_transition){case"fade":t.effect="fade",t.fadeEffect={crossFade:!0};break;case"slide_down":t.autoplay.reverseDirection=!0,t.direction="vertical";break;case"slide_up":t.direction="vertical"}return"yes"===e.background_slideshow_lazyload&amp;&amp;(t.lazy={loadPrevNext:!0,loadPrevNextAmount:1}),t}buildSwiperElements(){const e=this.getSettings("classes"),t=this.getElementSettings(),n="slide_left"===t.background_slideshow_slide_transition?"ltr":"rtl",o=jQuery("&lt;div&gt;",{class:e.swiperContainer,dir:n}),i=jQuery("&lt;div&gt;",{class:e.swiperWrapper}),s=t.background_slideshow_ken_burns,r="yes"===t.background_slideshow_lazyload;let a=e.slideBackground;if(s){a+=" "+e.kenBurns;const n="in"===t.background_slideshow_ken_burns_zoom_direction?"kenBurnsIn":"kenBurnsOut";a+=" "+e[n]}r&amp;&amp;(a+=" swiper-lazy"),this.elements.$slides=jQuery(),t.background_slideshow_gallery.forEach((t=&gt;{const n=jQuery("&lt;div&gt;",{class:e.swiperSlide});let o;if(r){const n=jQuery("&lt;div&gt;",{class:e.swiperPreloader});o=jQuery("&lt;div&gt;",{class:a,"data-background":t.url}),o.append(n)}else o=jQuery("&lt;div&gt;",{class:a,style:'background-image: url("'+t.url+'");'});n.append(o),i.append(n),this.elements.$slides=this.elements.$slides.add(n)})),o.append(i),this.$element.prepend(o),this.elements.$backgroundSlideShowContainer=o}async initSlider(){if(1&gt;=this.getSlidesCount())return;const e=this.getElementSettings(),t=elementorFrontend.utils.swiper;this.swiper=await new t(this.elements.$backgroundSlideShowContainer,this.getSwiperOptions()),this.elements.$backgroundSlideShowContainer.data("swiper",this.swiper),e.background_slideshow_ken_burns&amp;&amp;this.handleKenBurns()}activate(){this.buildSwiperElements(),this.initSlider()}deactivate(){this.swiper&amp;&amp;(this.swiper.destroy(),this.elements.$backgroundSlideShowContainer.remove())}run(){"slideshow"===this.getElementSettings("background_background")?this.activate():this.deactivate()}onInit(){super.onInit(),this.getElementSettings("background_slideshow_gallery")&amp;&amp;this.run()}onDestroy(){super.onDestroy(),this.deactivate()}onElementChange(e){"background_background"===e&amp;&amp;this.run()}}t.default=BackgroundSlideshow},3031:(e,t,n)=&gt;{Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0,n(4846),n(6211);class BackgroundVideo extends elementorModules.frontend.handlers.Base{getDefaultSettings(){return{selectors:{backgroundVideoContainer:".elementor-background-video-container",backgroundVideoEmbed:".elementor-background-video-embed",backgroundVideoHosted:".elementor-background-video-hosted"}}}getDefaultElements(){const e=this.getSettings("selectors"),t={$backgroundVideoContainer:this.$element.find(e.backgroundVideoContainer)};return t.$backgroundVideoEmbed=t.$backgroundVideoContainer.children(e.backgroundVideoEmbed),t.$backgroundVideoHosted=t.$backgroundVideoContainer.children(e.backgroundVideoHosted),t}calcVideosSize(e){let t="16:9";"vimeo"===this.videoType&amp;&amp;(t=e[0].width+":"+e[0].height);const n=this.elements.$backgroundVideoContainer.outerWidth(),o=this.elements.$backgroundVideoContainer.outerHeight(),i=t.split(":"),s=i[0]/i[1],r=n/o&gt;s;return{width:r?n:o*s,height:r?n/s:o}}changeVideoSize(){if("hosted"!==this.videoType&amp;&amp;!this.player)return;let e;if("youtube"===this.videoType?e=jQuery(this.player.getIframe()):"vimeo"===this.videoType?e=jQuery(this.player.element):"hosted"===this.videoType&amp;&amp;(e=this.elements.$backgroundVideoHosted),!e)return;const t=this.calcVideosSize(e);e.width(t.width).height(t.height)}startVideoLoop(e){if(!this.player.getIframe().contentWindow)return;const t=this.getElementSettings(),n=t.background_video_start||0,o=t.background_video_end;if(!t.background_play_once||e){if(this.player.seekTo(n),o){setTimeout((()=&gt;{this.startVideoLoop(!1)}),1e3*(o-n+1))}}else this.player.stopVideo()}prepareVimeoVideo(e,t){const n=this.getElementSettings(),o={url:t,width:this.elements.$backgroundVideoContainer.outerWidth().width,autoplay:!0,loop:!n.background_play_once,transparent:!0,background:!0,muted:!0};n.background_privacy_mode&amp;&amp;(o.dnt=!0),this.player=new e.Player(this.elements.$backgroundVideoContainer,o),this.handleVimeoStartEndTimes(n),this.player.ready().then((()=&gt;{jQuery(this.player.element).addClass("elementor-background-video-embed"),this.changeVideoSize()}))}handleVimeoStartEndTimes(e){e.background_video_start&amp;&amp;this.player.on("play",(t=&gt;{0===t.seconds&amp;&amp;this.player.setCurrentTime(e.background_video_start)})),this.player.on("timeupdate",(t=&gt;{e.background_video_end&amp;&amp;e.background_video_end&lt;t.seconds&amp;&amp;(e.background_play_once?this.player.pause():this.player.setCurrentTime(e.background_video_start)),this.player.getDuration().then((n=&gt;{e.background_video_start&amp;&amp;!e.background_video_end&amp;&amp;t.seconds&gt;n-.5&amp;&amp;this.player.setCurrentTime(e.background_video_start)}))}))}prepareYTVideo(e,t){const n=this.elements.$backgroundVideoContainer,o=this.getElementSettings();let i=e.PlayerState.PLAYING;window.chrome&amp;&amp;(i=e.PlayerState.UNSTARTED);const s={videoId:t,events:{onReady:()=&gt;{this.player.mute(),this.changeVideoSize(),this.startVideoLoop(!0),this.player.playVideo()},onStateChange:t=&gt;{switch(t.data){case i:n.removeClass("elementor-invisible elementor-loading");break;case e.PlayerState.ENDED:"function"==typeof this.player.seekTo&amp;&amp;this.player.seekTo(o.background_video_start||0),o.background_play_once&amp;&amp;this.player.destroy()}}},playerVars:{controls:0,rel:0,playsinline:1,cc_load_policy:0}};o.background_privacy_mode&amp;&amp;(s.host="https://www.youtube-nocookie.com",s.origin=window.location.hostname),n.addClass("elementor-loading elementor-invisible"),this.player=new e.Player(this.elements.$backgroundVideoEmbed[0],s)}activate(){let e,t=this.getElementSettings("background_video_link");const n=this.getElementSettings("background_play_once");if(-1!==t.indexOf("vimeo.com")?(this.videoType="vimeo",this.apiProvider=elementorFrontend.utils.vimeo):t.match(/^(?:https?:\/\/)?(?:www\.)?(?:m\.)?(?:youtu\.be\/|youtube\.com)/)&amp;&amp;(this.videoType="youtube",this.apiProvider=elementorFrontend.utils.youtube),this.apiProvider)e=this.apiProvider.getVideoIDFromURL(t),this.apiProvider.onApiReady((n=&gt;{"youtube"===this.videoType&amp;&amp;this.prepareYTVideo(n,e),"vimeo"===this.videoType&amp;&amp;this.prepareVimeoVideo(n,t)}));else{this.videoType="hosted";const e=this.getElementSettings("background_video_start"),o=this.getElementSettings("background_video_end");(e||o)&amp;&amp;(t+="#t="+(e||0)+(o?","+o:"")),this.elements.$backgroundVideoHosted.attr("src",t).one("canplay",this.changeVideoSize.bind(this)),n&amp;&amp;this.elements.$backgroundVideoHosted.on("ended",(()=&gt;{this.elements.$backgroundVideoHosted.hide()}))}elementorFrontend.elements.$window.on("resize elementor/bg-video/recalc",this.changeVideoSize)}deactivate(){"youtube"===this.videoType&amp;&amp;this.player.getIframe()||"vimeo"===this.videoType?this.player.destroy():this.elements.$backgroundVideoHosted.removeAttr("src").off("ended"),elementorFrontend.elements.$window.off("resize",this.changeVideoSize)}run(){const e=this.getElementSettings();(e.background_play_on_mobile||"mobile"!==elementorFrontend.getCurrentDeviceMode())&amp;&amp;("video"===e.background_background&amp;&amp;e.background_video_link?this.activate():this.deactivate())}onInit(){super.onInit(...arguments),this.changeVideoSize=this.changeVideoSize.bind(this),this.run()}onElementChange(e){"background_background"===e&amp;&amp;this.run()}}t.default=BackgroundVideo},3969:(e,t,n)=&gt;{var o=n(6784);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var i=o(n(628)),s=o(n(3031));t.default=[i.default,s.default]},8891:(e,t,n)=&gt;{var o=n(6784);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var i=o(n(628));t.default=[i.default]},3678:(e,t,n)=&gt;{Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;t.default=[()=&gt;n.e(216).then(n.bind(n,2460)),()=&gt;n.e(216).then(n.bind(n,8847)),()=&gt;n.e(216).then(n.bind(n,3323))]},4970:(e,t)=&gt;{Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;class GlobalHandler extends elementorModules.frontend.handlers.Base{getWidgetType(){return"global"}animate(){const e=this.$element,t=this.getAnimation();if("none"===t)return void e.removeClass("elementor-invisible");const n=this.getElementSettings(),o=n._animation_delay||n.animation_delay||0;e.removeClass(t),this.currentAnimation&amp;&amp;e.removeClass(this.currentAnimation),this.currentAnimation=t,setTimeout((()=&gt;{e.removeClass("elementor-invisible").addClass("animated "+t)}),o)}getAnimation(){return this.getCurrentDeviceSetting("animation")||this.getCurrentDeviceSetting("_animation")}onInit(){if(super.onInit(...arguments),this.getAnimation()){const e=elementorModules.utils.Scroll.scrollObserver({callback:t=&gt;{t.isInViewport&amp;&amp;(this.animate(),e.unobserve(this.$element[0]))}});e.observe(this.$element[0])}}onElementChange(e){/^_?animation/.test(e)&amp;&amp;this.animate()}}t.default=e=&gt;{elementorFrontend.elementsHandler.addHandler(GlobalHandler,{$element:e})}},2056:(e,t,n)=&gt;{Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0,n(4846),n(6211);class HandlesPosition extends elementorModules.frontend.handlers.Base{isActive(){return elementorFrontend.isEditMode()}isFirstSection(){return this.$element[0]===document.querySelector(".elementor-edit-mode .elementor-top-section")}isOverflowHidden(){return"hidden"===this.$element.css("overflow")}getOffset(){if("body"===elementor.config.document.container)return this.$element.offset().top;const e=jQuery(elementor.config.document.container);return this.$element.offset().top-e.offset().top}setHandlesPosition(){const e=elementor.documents.getCurrent();if(!e||!e.container.isEditable())return;const t="elementor-section--handles-inside";if(elementor.settings.page.model.attributes.scroll_snap)return void this.$element.addClass(t);const n=this.isOverflowHidden();if(!n&amp;&amp;!this.isFirstSection())return;const o=n?0:this.getOffset();if(o&lt;25){this.$element.addClass(t);const e=this.$element.find("&gt; .elementor-element-overlay &gt; .elementor-editor-section-settings");o&lt;-5?e.css("top",-o):e.css("top","")}else this.$element.removeClass(t)}onInit(){this.isActive()&amp;&amp;(this.setHandlesPosition(),this.$element.on("mouseenter",this.setHandlesPosition.bind(this)))}}t.default=HandlesPosition},3243:(e,t,n)=&gt;{Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0,n(4846),n(6211);class Shapes extends elementorModules.frontend.handlers.Base{getDefaultSettings(){return{selectors:{container:"&gt; .elementor-shape-%s"},svgURL:elementorFrontend.config.urls.assets+"shapes/"}}getDefaultElements(){const e={},t=this.getSettings("selectors");return e.$topContainer=this.$element.find(t.container.replace("%s","top")),e.$bottomContainer=this.$element.find(t.container.replace("%s","bottom")),e}isActive(){return elementorFrontend.isEditMode()}getSvgURL(e,t){let n=this.getSettings("svgURL")+t+".svg";return elementor.config.additional_shapes&amp;&amp;e in elementor.config.additional_shapes&amp;&amp;(n=elementor.config.additional_shapes[e],-1&lt;t.indexOf("-negative")&amp;&amp;(n=n.replace(".svg","-negative.svg"))),n}buildSVG(e){const t="shape_divider_"+e,n=this.getElementSettings(t),o=this.elements["$"+e+"Container"];if(o.attr("data-shape",n),!n)return void o.empty();let i=n;this.getElementSettings(t+"_negative")&amp;&amp;(i+="-negative");const s=this.getSvgURL(n,i);jQuery.get(s,(e=&gt;{o.empty().append(e.childNodes[0])})),this.setNegative(e)}setNegative(e){this.elements["$"+e+"Container"].attr("data-negative",!!this.getElementSettings("shape_divider_"+e+"_negative"))}onInit(){this.isActive(this.getSettings())&amp;&amp;(super.onInit(...arguments),["top","bottom"].forEach((e=&gt;{this.getElementSettings("shape_divider_"+e)&amp;&amp;this.buildSVG(e)})))}onElementChange(e){const t=e.match(/^shape_divider_(top|bottom)$/);if(t)return void this.buildSVG(t[1]);const n=e.match(/^shape_divider_(top|bottom)_negative$/);n&amp;&amp;(this.buildSVG(n[1]),this.setNegative(n[1]))}}t.default=Shapes},2439:(e,t)=&gt;{Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;class StretchedSection extends elementorModules.frontend.handlers.StretchedElement{getStretchedClass(){return"elementor-section-stretched"}getStretchSettingName(){return"stretch_section"}getStretchActiveValue(){return"section-stretched"}}t.default=StretchedSection},9807:(e,t,n)=&gt;{Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0,n(5724),n(4846),n(7458),n(9655);class _default extends elementorModules.ViewModule{getDefaultSettings(){return{selectors:{links:'.elementor-element a[href*="#"]',stickyElements:".elementor-element.elementor-sticky"}}}onInit(){this.observeStickyElements((()=&gt;{this.initializeStickyAndAnchorTracking()}))}observeStickyElements(e){new MutationObserver((t=&gt;{for(const n of t)("childList"===n.type||"attributes"===n.type&amp;&amp;n.target.classList.contains("elementor-sticky"))&amp;&amp;e()})).observe(document.body,{childList:!0,subtree:!0,attributes:!0,attributeFilter:["class","style"]})}initializeStickyAndAnchorTracking(){const e=this.getAllAnchorLinks(),t=this.getAllStickyElements(),n=[];!t.length&gt;0&amp;&amp;!e.length&gt;0||(this.trackStickyElements(t,n),this.trackAnchorLinks(e,n),this.organizeStickyAndAnchors(n))}trackAnchorLinks(e,t){e.forEach((e=&gt;{const n=this.getAnchorTarget(e),o=this.getScrollPosition(n);t.push({element:n,type:"anchor",scrollPosition:o})}))}trackStickyElements(e,t){e.forEach((e=&gt;{const n=this.getElementSettings(e);if(!n||!n.sticky_anchor_link_offset)return;const{sticky_anchor_link_offset:o}=n;if(0===o)return;const i=this.getScrollPosition(e);t.push({scrollMarginTop:o,type:"sticky",scrollPosition:i})}))}organizeStickyAndAnchors(e){const t=this.filterAndSortElementsByType(e,"sticky"),n=this.filterAndSortElementsByType(e,"anchor");t.forEach(((e,o)=&gt;{this.defineCurrentStickyRange(e,o,t,n)}))}defineCurrentStickyRange(e,t,n,o){const i=t+1&lt;n.length?n[t+1].scrollPosition:1/0;e.anchor=o.filter((t=&gt;{const n=t.scrollPosition&gt;e.scrollPosition&amp;&amp;t.scrollPosition&lt;i;return n&amp;&amp;(t.element.style.scrollMarginTop=`${e.scrollMarginTop}px`),n}))}getScrollPosition(e){let t=0;for(;e;)t+=e.offsetTop,e=e.offsetParent;return t}getAllStickyElements(){const e=document.querySelectorAll(this.getSettings("selectors.stickyElements"));return Array.from(e).filter(((e,t,n)=&gt;t===n.findIndex((t=&gt;t.getAttribute("data-id")===e.getAttribute("data-id")))))}getAllAnchorLinks(){const e=document.querySelectorAll(this.getSettings("selectors.links"));return Array.from(e).filter(((e,t,n)=&gt;t===n.findIndex((t=&gt;t.getAttribute("href")===e.getAttribute("href")))))}filterAndSortElementsByType(e,t){return e.filter((e=&gt;t===e.type)).sort(((e,t)=&gt;e.scrollPosition-t.scrollPosition))}isValidSelector(e){return/^#[A-Za-z_][\w-]*$/.test(e)}getAnchorTarget(e){const t=e?.hash;return this.isValidSelector(t)?document.querySelector(t):null}getElementSettings(e){return JSON.parse(e.getAttribute("data-settings"))}}t.default=_default},8422:(e,t)=&gt;{Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;class AssetsLoader{getScriptElement(e){const t=document.createElement("script");return t.src=e,t}getStyleElement(e){const t=document.createElement("link");return t.rel="stylesheet",t.href=e,t}load(e,t){const n=AssetsLoader.assets[e][t];return n.loader||(n.loader=this.isAssetLoaded(n,e)?Promise.resolve(!0):this.loadAsset(n,e)),n.loader}isAssetLoaded(e,t){const n="script"===t?`script[src="${e.src}"]`:`link[href="${e.src}"]`;return!!document.querySelectorAll(n)?.length}loadAsset(e,t){return new Promise((n=&gt;{const o="style"===t?this.getStyleElement(e.src):this.getScriptElement(e.src);o.onload=()=&gt;n(!0),this.appendAsset(e,o)}))}appendAsset(e,t){const n=document.querySelector(e.before);if(n)return void n.insertAdjacentElement("beforebegin",t);const o="head"===e.parent?e.parent:"body";document[o].appendChild(t)}}t.default=AssetsLoader;const n=elementorFrontendConfig.urls.assets,o=elementorFrontendConfig.environmentMode.isScriptDebug?"":".min",i=elementorFrontendConfig.version;AssetsLoader.assets={script:{dialog:{src:`${n}lib/dialog/dialog${o}.js?ver=4.9.3`},"share-link":{src:`${n}lib/share-link/share-link${o}.js?ver=${i}`},swiper:{src:`${n}lib/swiper/v8/swiper${o}.js?ver=8.4.5`}},style:{swiper:{src:`${n}lib/swiper/v8/css/swiper${o}.css?ver=8.4.5`,parent:"head"},"e-lightbox":{src:elementorFrontendConfig?.responsive?.hasCustomBreakpoints?`${elementorFrontendConfig.urls.uploadUrl}/elementor/css/custom-lightbox.min.css?ver=${i}`:`${n}css/conditionals/lightbox${o}.css?ver=${i}`},dialog:{src:`${n}css/conditionals/dialog${o}.css?ver=${i}`,parent:"head",before:"#elementor-frontend-css"}}}},607:(e,t)=&gt;{Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;t.default=class Controls{getControlValue(e,t,n){let o;return o="object"==typeof e[t]&amp;&amp;n?e[t][n]:e[t],o}getResponsiveControlValue(e,t){let n=arguments.length&gt;2&amp;&amp;void 0!==arguments[2]?arguments[2]:"";const o=(arguments.length&gt;3&amp;&amp;void 0!==arguments[3]?arguments[3]:null)||elementorFrontend.getCurrentDeviceMode(),i=this.getControlValue(e,t,n);if("widescreen"===o){const o=this.getControlValue(e,`${t}_widescreen`,n);return o||0===o?o:i}const s=elementorFrontend.breakpoints.getActiveBreakpointsList({withDesktop:!0});let r=o,a=s.indexOf(o),l="";for(;a&lt;=s.length;){if("desktop"===r){l=i;break}const o=`${t}_${r}`,d=this.getControlValue(e,o,n);if(d||0===d){l=d;break}a++,r=s[a]}return l}}},4252:(e,t,n)=&gt;{Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0,n(4846),n(6211);class LightboxManager extends elementorModules.ViewModule{static getLightbox(){const e=new Promise((e=&gt;{n.e(835).then(n.t.bind(n,3942,23)).then((t=&gt;{let{default:n}=t;return e(new n)}))})),t=elementorFrontend.utils.assetsLoader.load("script","dialog"),o=elementorFrontend.utils.assetsLoader.load("style","dialog"),i=elementorFrontend.utils.assetsLoader.load("script","share-link"),s=elementorFrontend.utils.assetsLoader.load("style","swiper"),r=elementorFrontend.utils.assetsLoader.load("style","e-lightbox");return Promise.all([e,t,o,i,s,r]).then((()=&gt;e))}getDefaultSettings(){return{selectors:{links:"a, [data-elementor-lightbox]",slideshow:"[data-elementor-lightbox-slideshow]"}}}getDefaultElements(){return{$links:jQuery(this.getSettings("selectors.links")),$slideshow:jQuery(this.getSettings("selectors.slideshow"))}}isLightboxLink(e){if("a"===e.tagName.toLowerCase()&amp;&amp;(e.hasAttribute("download")||!/^[^?]+\.(png|jpe?g|gif|svg|webp)(\?.*)?$/i.test(e.href))&amp;&amp;!e.dataset.elementorLightboxVideo)return!1;const t=elementorFrontend.getKitSettings("global_image_lightbox"),n=e.dataset.elementorOpenLightbox;return"yes"===n||t&amp;&amp;"no"!==n}isLightboxSlideshow(){return 0!==this.elements.$slideshow.length}async onLinkClick(e){const t=e.currentTarget,n=jQuery(e.target),o=elementorFrontend.isEditMode(),i=o&amp;&amp;elementor.$previewContents.find("body").hasClass("elementor-editor__ui-state__color-picker"),s=!!n.closest(".elementor-edit-area").length;if(!this.isLightboxLink(t))return void(o&amp;&amp;s&amp;&amp;e.preventDefault());if(e.preventDefault(),o&amp;&amp;!elementor.getPreferences("lightbox_in_editor"))return;if(i)return;(await LightboxManager.getLightbox()).createLightbox(t)}bindEvents(){elementorFrontend.elements.$document.on("click",this.getSettings("selectors.links"),(e=&gt;this.onLinkClick(e)))}onInit(){super.onInit(...arguments),elementorFrontend.isEditMode()||this.maybeActivateLightboxOnLink()}maybeActivateLightboxOnLink(){this.elements.$links.each(((e,t)=&gt;{if(this.isLightboxLink(t))return LightboxManager.getLightbox(),!1}))}}t.default=LightboxManager},4901:(e,t,n)=&gt;{Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0,n(4846),n(9655);t.default=class SwiperHandler{constructor(e,t){return this.config=t,this.config.breakpoints&amp;&amp;(this.config=this.adjustConfig(t)),e instanceof jQuery&amp;&amp;(e=e[0]),e.closest(".elementor-widget-wrap")?.classList.add("e-swiper-container"),e.closest(".elementor-widget")?.classList.add("e-widget-swiper"),new Promise((t=&gt;{"undefined"!=typeof Swiper?("function"==typeof Swiper&amp;&amp;void 0===window.Swiper&amp;&amp;(window.Swiper=Swiper),t(this.createSwiperInstance(e,this.config))):elementorFrontend.utils.assetsLoader.load("script","swiper").then((()=&gt;t(this.createSwiperInstance(e,this.config))))}))}createSwiperInstance(e,t){const n=window.Swiper;return n.prototype.adjustConfig=this.adjustConfig,new n(e,t)}adjustConfig(e){if(!e.handleElementorBreakpoints)return e;const t=elementorFrontend.config.responsive.activeBreakpoints,n=elementorFrontend.breakpoints.getBreakpointValues();return Object.keys(e.breakpoints).forEach((o=&gt;{const i=parseInt(o);let s;if(i===t.mobile.value||i+1===t.mobile.value)s=0;else if(!t.widescreen||i!==t.widescreen.value&amp;&amp;i+1!==t.widescreen.value){const e=n.findIndex((e=&gt;i===e||i+1===e));s=n[e-1]}else s=i;e.breakpoints[s]=e.breakpoints[o],e.breakpoints[o]={slidesPerView:e.slidesPerView,slidesPerGroup:e.slidesPerGroup?e.slidesPerGroup:1}})),e}}},3582:(e,t,n)=&gt;{Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0,n(6409);class _default extends elementorModules.ViewModule{getDefaultSettings(){return{selectors:{links:'a[href^="%23elementor-action"], a[href^="#elementor-action"]'}}}bindEvents(){elementorFrontend.elements.$document.on("click",this.getSettings("selectors.links"),this.runLinkAction.bind(this))}initActions(){this.actions={lightbox:async e=&gt;{const t=await elementorFrontend.utils.lightbox;e.slideshow?t.openSlideshow(e.slideshow,e.url):(e.id&amp;&amp;(e.type="image"),t.showModal(e))}}}addAction(e,t){this.actions[e]=t}runAction(e){e=decodeURI(e);const t=(e=decodeURIComponent(e)).match(/action=(.+?)&amp;/);if(!t)return;const n=this.actions[t[1]];if(!n)return;let o={};const i=e.match(/settings=(.+)/);i&amp;&amp;(o=JSON.parse(atob(i[1]))),o.previousEvent=event;for(var s=arguments.length,r=new Array(s&gt;1?s-1:0),a=1;a&lt;s;a++)r[a-1]=arguments[a];n(o,...r)}runLinkAction(e){e.preventDefault(),this.runAction(jQuery(e.currentTarget).attr("href"),e)}runHashAction(){if(!location.hash)return;const e=document.querySelector(`[data-e-action-hash="${location.hash}"], a[href*="${location.hash}"]`);e&amp;&amp;this.runAction(e.getAttribute("data-e-action-hash"))}createActionHash(e,t){return encodeURIComponent(`#elementor-action:action=${e}&amp;settings=${btoa(JSON.stringify(t))}`)}onInit(){super.onInit(),this.initActions(),elementorFrontend.on("components:init",this.runHashAction.bind(this))}}t.default=_default},7672:(e,t)=&gt;{Object.defineProperty(t,"__esModule",{value:!0}),t.isScrollSnapActive=t.escapeHTML=void 0;t.escapeHTML=e=&gt;{const t={"&amp;":"&amp;amp;","&lt;":"&amp;lt;","&gt;":"&amp;gt;","'":"&amp;#39;",'"':"&amp;quot;"};return e.replace(/[&amp;&lt;&gt;'"]/g,(e=&gt;t[e]||e))};t.isScrollSnapActive=()=&gt;"yes"===(elementorFrontend.isEditMode()?elementor.settings.page.model.attributes?.scroll_snap:elementorFrontend.config.settings.page?.scroll_snap)},8427:(e,t)=&gt;{Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;class BaseLoader extends elementorModules.ViewModule{getDefaultSettings(){return{isInserted:!1,selectors:{firstScript:"script:first"}}}getDefaultElements(){return{$firstScript:jQuery(this.getSettings("selectors.firstScript"))}}insertAPI(){this.elements.$firstScript.before(jQuery("&lt;script&gt;",{src:this.getApiURL()})),this.setSettings("isInserted",!0)}getVideoIDFromURL(e){const t=e.match(this.getURLRegex());return t&amp;&amp;t[1]}onApiReady(e){this.getSettings("isInserted")||this.insertAPI(),this.isApiLoaded()?e(this.getApiObject()):setTimeout((()=&gt;{this.onApiReady(e)}),350)}getAutoplayURL(e){return e.replace("&amp;autoplay=0","")+"&amp;autoplay=1"}}t.default=BaseLoader},3126:(e,t,n)=&gt;{var o=n(6784);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var i=o(n(8427));class VimeoLoader extends i.default{getApiURL(){return"https://player.vimeo.com/api/player.js"}getURLRegex(){return/^(?:https?:\/\/)?(?:www|player\.)?(?:vimeo\.com\/)?(?:video\/|external\/)?(\d+)([^.?&amp;#"'&gt;]?)/}isApiLoaded(){return window.Vimeo}getApiObject(){return Vimeo}getAutoplayURL(e){const t=e.match(/#t=[^&amp;]*/);return e.replace(t[0],"")+t}}t.default=VimeoLoader},5073:(e,t,n)=&gt;{var o=n(6784);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var i=o(n(8427));class YoutubeLoader extends i.default{getApiURL(){return"https://www.youtube.com/iframe_api"}getURLRegex(){return/^(?:https?:\/\/)?(?:www\.)?(?:m\.)?(?:youtu\.be\/|youtube\.com\/(?:(?:watch)?\?(?:.*&amp;)?vi?=|(?:embed|v|vi|user|shorts)\/))([^?&amp;"'&gt;]+)/}isApiLoaded(){return window.YT&amp;&amp;YT.loaded}getApiObject(){return YT}}t.default=YoutubeLoader},8309:(e,t,n)=&gt;{n.p=elementorFrontendConfig.urls.assets+"js/"},5896:(e,t,n)=&gt;{Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0,n(5724),n(4846),n(9655),n(4364);class Breakpoints extends elementorModules.Module{constructor(e){super(),this.responsiveConfig=e}getActiveBreakpointsList(){let e=arguments.length&gt;0&amp;&amp;void 0!==arguments[0]?arguments[0]:{};e={largeToSmall:!1,withDesktop:!1,...e};const t=Object.keys(this.responsiveConfig.activeBreakpoints);if(e.withDesktop){const e=-1===t.indexOf("widescreen")?t.length:t.length-1;t.splice(e,0,"desktop")}return e.largeToSmall&amp;&amp;t.reverse(),t}getBreakpointValues(){const{activeBreakpoints:e}=this.responsiveConfig,t=[];return Object.values(e).forEach((e=&gt;{t.push(e.value)})),t}getDesktopPreviousDeviceKey(){let e="";const{activeBreakpoints:t}=this.responsiveConfig,n=Object.keys(t),o=n.length;return e="min"===t[n[o-1]].direction?n[o-2]:n[o-1],e}getDesktopMinPoint(){const{activeBreakpoints:e}=this.responsiveConfig;return e[this.getDesktopPreviousDeviceKey()].value+1}getDeviceMinBreakpoint(e){if("desktop"===e)return this.getDesktopMinPoint();const{activeBreakpoints:t}=this.responsiveConfig,n=Object.keys(t);let o;if(n[0]===e)o=320;else if("widescreen"===e)o=t[e]?t[e].value:this.responsiveConfig.breakpoints.widescreen;else{const i=n.indexOf(e);o=t[n[i-1]].value+1}return o}getActiveMatchRegex(){return new RegExp(this.getActiveBreakpointsList().map((e=&gt;"_"+e)).join("|")+"$")}}t.default=Breakpoints},4799:(e,t)=&gt;{Object.defineProperty(t,"__esModule",{value:!0}),t.default=t.Events=void 0;class Events{static dispatch(e,t){let n=arguments.length&gt;2&amp;&amp;void 0!==arguments[2]?arguments[2]:null,o=arguments.length&gt;3&amp;&amp;void 0!==arguments[3]?arguments[3]:null;e=e instanceof jQuery?e[0]:e,o&amp;&amp;e.dispatchEvent(new CustomEvent(o,{detail:n})),e.dispatchEvent(new CustomEvent(t,{detail:n}))}}t.Events=Events;t.default=Events},5956:(e,t,n)=&gt;{n(5724);e.exports=function(){var e,t=Array.prototype.slice,n={actions:{},filters:{}};function _removeHook(e,t,o,i){var s,r,a;if(n[e][t])if(o)if(s=n[e][t],i)for(a=s.length;a--;)(r=s[a]).callback===o&amp;&amp;r.context===i&amp;&amp;s.splice(a,1);else for(a=s.length;a--;)s[a].callback===o&amp;&amp;s.splice(a,1);else n[e][t]=[]}function _addHook(e,t,o,i,s){var r={callback:o,priority:i,context:s},a=n[e][t];if(a){var l=!1;if(jQuery.each(a,(function(){if(this.callback===o)return l=!0,!1})),l)return;a.push(r),a=function _hookInsertSort(e){for(var t,n,o,i=1,s=e.length;i&lt;s;i++){for(t=e[i],n=i;(o=e[n-1])&amp;&amp;o.priority&gt;t.priority;)e[n]=e[n-1],--n;e[n]=t}return e}(a)}else a=[r];n[e][t]=a}function _runHook(e,t,o){var i,s,r=n[e][t];if(!r)return"filters"===e&amp;&amp;o[0];if(s=r.length,"filters"===e)for(i=0;i&lt;s;i++)o[0]=r[i].callback.apply(r[i].context,o);else for(i=0;i&lt;s;i++)r[i].callback.apply(r[i].context,o);return"filters"!==e||o[0]}return e={removeFilter:function removeFilter(t,n){return"string"==typeof t&amp;&amp;_removeHook("filters",t,n),e},applyFilters:function applyFilters(){var n=t.call(arguments),o=n.shift();return"string"==typeof o?_runHook("filters",o,n):e},addFilter:function addFilter(t,n,o,i){return"string"==typeof t&amp;&amp;"function"==typeof n&amp;&amp;_addHook("filters",t,n,o=parseInt(o||10,10),i),e},removeAction:function removeAction(t,n){return"string"==typeof t&amp;&amp;_removeHook("actions",t,n),e},doAction:function doAction(){var n=t.call(arguments),o=n.shift();return"string"==typeof o&amp;&amp;_runHook("actions",o,n),e},addAction:function addAction(t,n,o,i){return"string"==typeof t&amp;&amp;"function"==typeof n&amp;&amp;_addHook("actions",t,n,o=parseInt(o||10,10),i),e}},e}},5115:(e,t)=&gt;{Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;const matchUserAgent=e=&gt;n.indexOf(e)&gt;=0,n=navigator.userAgent,o=!!window.opr&amp;&amp;!!opr.addons||!!window.opera||matchUserAgent(" OPR/"),i=matchUserAgent("Firefox"),s=/^((?!chrome|android).)*safari/i.test(n)||/constructor/i.test(window.HTMLElement)||"[object SafariRemoteNotification]"===(!window.safari||"undefined"!=typeof safari&amp;&amp;safari.pushNotification).toString(),r=/Trident|MSIE/.test(n)&amp;&amp;!!document.documentMode,a=!r&amp;&amp;!!window.StyleMedia||matchUserAgent("Edg"),l=!!window.chrome&amp;&amp;matchUserAgent("Chrome")&amp;&amp;!(a||o),d=matchUserAgent("Chrome")&amp;&amp;!!window.CSS,c=matchUserAgent("AppleWebKit")&amp;&amp;!d,u={isTouchDevice:"ontouchstart"in window||navigator.maxTouchPoints&gt;0||navigator.msMaxTouchPoints&gt;0,appleWebkit:c,blink:d,chrome:l,edge:a,firefox:i,ie:r,mac:matchUserAgent("Macintosh"),opera:o,safari:s,webkit:matchUserAgent("AppleWebKit")};t.default=u},8767:(e,t,n)=&gt;{Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0,n(4846),n(9655);class _default extends elementorModules.Module{get(e,t){let n;t=t||{};try{n=t.session?sessionStorage:localStorage}catch(t){return e?void 0:{}}let o=n.getItem("elementor");o=o?JSON.parse(o):{},o.__expiration||(o.__expiration={});const i=o.__expiration;let s=[];e?i[e]&amp;&amp;(s=[e]):s=Object.keys(i);let r=!1;return s.forEach((e=&gt;{new Date(i[e])&lt;new Date&amp;&amp;(delete o[e],delete i[e],r=!0)})),r&amp;&amp;this.save(o,t.session),e?o[e]:o}set(e,t,n){n=n||{};const o=this.get(null,n);if(o[e]=t,n.lifetimeInSeconds){const t=new Date;t.setTime(t.getTime()+1e3*n.lifetimeInSeconds),o.__expiration[e]=t.getTime()}this.save(o,n.session)}save(e,t){let n;try{n=t?sessionStorage:localStorage}catch(e){return}n.setItem("elementor",JSON.stringify(e))}}t.default=_default},7842:(e,t,n)=&gt;{Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;class _default extends elementorModules.Module{constructor(){super(),elementorFrontend.elementsHandler.attachHandler("text-path",(()=&gt;n.e(30).then(n.bind(n,241))))}}t.default=_default},3852:(e,t,n)=&gt;{var o=n(735),i=String,s=TypeError;e.exports=function(e){if(o(e))return e;throw new s("Can't set "+i(e)+" as a prototype")}},1780:e=&gt;{e.exports={IndexSizeError:{s:"INDEX_SIZE_ERR",c:1,m:1},DOMStringSizeError:{s:"DOMSTRING_SIZE_ERR",c:2,m:0},HierarchyRequestError:{s:"HIERARCHY_REQUEST_ERR",c:3,m:1},WrongDocumentError:{s:"WRONG_DOCUMENT_ERR",c:4,m:1},InvalidCharacterError:{s:"INVALID_CHARACTER_ERR",c:5,m:1},NoDataAllowedError:{s:"NO_DATA_ALLOWED_ERR",c:6,m:0},NoModificationAllowedError:{s:"NO_MODIFICATION_ALLOWED_ERR",c:7,m:1},NotFoundError:{s:"NOT_FOUND_ERR",c:8,m:1},NotSupportedError:{s:"NOT_SUPPORTED_ERR",c:9,m:1},InUseAttributeError:{s:"INUSE_ATTRIBUTE_ERR",c:10,m:1},InvalidStateError:{s:"INVALID_STATE_ERR",c:11,m:1},SyntaxError:{s:"SYNTAX_ERR",c:12,m:1},InvalidModificationError:{s:"INVALID_MODIFICATION_ERR",c:13,m:1},NamespaceError:{s:"NAMESPACE_ERR",c:14,m:1},InvalidAccessError:{s:"INVALID_ACCESS_ERR",c:15,m:1},ValidationError:{s:"VALIDATION_ERR",c:16,m:0},TypeMismatchError:{s:"TYPE_MISMATCH_ERR",c:17,m:1},SecurityError:{s:"SECURITY_ERR",c:18,m:1},NetworkError:{s:"NETWORK_ERR",c:19,m:1},AbortError:{s:"ABORT_ERR",c:20,m:1},URLMismatchError:{s:"URL_MISMATCH_ERR",c:21,m:1},QuotaExceededError:{s:"QUOTA_EXCEEDED_ERR",c:22,m:1},TimeoutError:{s:"TIMEOUT_ERR",c:23,m:1},InvalidNodeTypeError:{s:"INVALID_NODE_TYPE_ERR",c:24,m:1},DataCloneError:{s:"DATA_CLONE_ERR",c:25,m:1}}},8223:(e,t,n)=&gt;{var o=n(4762),i=Error,s=o("".replace),r=String(new i("zxcasd").stack),a=/\n\s*at [^:]*:[^\n]*/,l=a.test(r);e.exports=function(e,t){if(l&amp;&amp;"string"==typeof e&amp;&amp;!i.prepareStackTrace)for(;t--;)e=s(e,a,"");return e}},680:(e,t,n)=&gt;{var o=n(4762),i=n(8120);e.exports=function(e,t,n){try{return o(i(Object.getOwnPropertyDescriptor(e,t)[n]))}catch(e){}}},2429:(e,t,n)=&gt;{var o=n(1483),i=n(1704),s=n(1953);e.exports=function(e,t,n){var r,a;return s&amp;&amp;o(r=t.constructor)&amp;&amp;r!==n&amp;&amp;i(a=r.prototype)&amp;&amp;a!==n.prototype&amp;&amp;s(e,a),e}},735:(e,t,n)=&gt;{var o=n(1704);e.exports=function(e){return o(e)||null===e}},3963:(e,t,n)=&gt;{var o=n(1807),i=n(8120),s=n(2293),r=n(41),a=n(8660),l=n(8901),d=a((function(){var e=this.iterator,t=s(o(this.next,e));if(!(this.done=!!t.done))return l(e,this.mapper,[t.value,this.counter++],!0)}));e.exports=function map(e){return s(this),i(e),new d(r(this),{mapper:e})}},7969:(e,t,n)=&gt;{var o=n(6261);e.exports=function(e,t){return void 0===e?arguments.length&lt;2?"":t:o(e)}},1953:(e,t,n)=&gt;{var o=n(680),i=n(1704),s=n(3312),r=n(3852);e.exports=Object.setPrototypeOf||("__proto__"in{}?function(){var e,t=!1,n={};try{(e=o(Object.prototype,"__proto__","set"))(n,[]),t=n instanceof Array}catch(e){}return function setPrototypeOf(n,o){return s(n),r(o),i(n)?(t?e(n,o):n.__proto__=o,n):n}}():void 0)},6261:(e,t,n)=&gt;{var o=n(6145),i=String;e.exports=function(e){if("Symbol"===o(e))throw new TypeError("Cannot convert a Symbol value to a string");return i(e)}},3991:(e,t,n)=&gt;{var o=n(8612),i=n(3963);o({target:"Iterator",proto:!0,real:!0,forced:n(9557)},{map:i})},4364:(e,t,n)=&gt;{n(3991)},6409:(e,t,n)=&gt;{var o=n(8612),i=n(5578),s=n(1409),r=n(7738),a=n(5835).f,l=n(5755),d=n(6021),c=n(2429),u=n(7969),h=n(1780),m=n(8223),g=n(382),p=n(9557),f="DOMException",v=s("Error"),b=s(f),y=function DOMException(){d(this,_);var e=arguments.length,t=u(e&lt;1?void 0:arguments[0]),n=u(e&lt;2?void 0:arguments[1],"Error"),o=new b(t,n),i=new v(t);return i.name=f,a(o,"stack",r(1,m(i.stack,1))),c(o,this,y),o},_=y.prototype=b.prototype,k="stack"in new v(f),w="stack"in new b(1,2),S=b&amp;&amp;g&amp;&amp;Object.getOwnPropertyDescriptor(i,f),E=!(!S||S.writable&amp;&amp;S.configurable),A=k&amp;&amp;!E&amp;&amp;!w;o({global:!0,constructor:!0,forced:p||A},{DOMException:A?y:b});var M=s(f),C=M.prototype;if(C.constructor!==M)for(var $ in p||a(C,"constructor",r(1,M)),h)if(l(h,$)){var D=h[$],L=D.s;l(M,L)||a(M,L,r(6,D.c))}}},e=&gt;{e.O(0,[941],(()=&gt;{return t=7603,e(e.s=t);var t}));e.O()}]);/*! elementor-pro - v3.27.0 - 13-03-2025 */
"use strict";(self.webpackChunkelementor_pro=self.webpackChunkelementor_pro||[]).push([[624],{2371:(e,t,n)=&gt;{var o=n(6784),s=o(n(6137)),r=o(n(7371)),l=o(n(3746)),i=o(n(9880)),a=o(n(6238)),d=o(n(4286)),u=o(n(4043)),c=o(n(1750)),m=o(n(4486)),h=o(n(1459)),g=o(n(8534)),f=o(n(6034)),p=o(n(6075)),_=o(n(570)),v=o(n(9302)),b=o(n(6302)),y=o(n(7492)),F=o(n(8241)),M=o(n(325)),w=o(n(7467)),S=o(n(1953)),H=o(n(282)),E=o(n(2969)),O=o(n(5355)),T=o(n(8945));const extendDefaultHandlers=e=&gt;({...e,...{animatedText:s.default,carousel:r.default,countdown:l.default,dynamicTags:i.default,hotspot:a.default,form:d.default,gallery:u.default,lottie:c.default,nav_menu:m.default,popup:h.default,posts:g.default,share_buttons:f.default,slides:p.default,social:_.default,themeBuilder:b.default,themeElements:y.default,woocommerce:F.default,tableOfContents:v.default,loopBuilder:M.default,megaMenu:w.default,nestedCarousel:S.default,taxonomyFilter:H.default,offCanvas:E.default,contactButtons:O.default,search:T.default}});elementorProFrontend.on("elementor-pro/modules/init/before",(()=&gt;{elementorFrontend.hooks.addFilter("elementor-pro/frontend/handlers",extendDefaultHandlers)}))},4921:(e,t)=&gt;{Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;t.default=class AjaxHelper{addLoadingAnimationOverlay(e){const t=document.querySelector(`.elementor-element-${e}`);t&amp;&amp;t.classList.add("e-loading-overlay")}removeLoadingAnimationOverlay(e){const t=document.querySelector(`.elementor-element-${e}`);t&amp;&amp;t.classList.remove("e-loading-overlay")}}},6914:(e,t)=&gt;{Object.defineProperty(t,"__esModule",{value:!0}),t.focusableElementSelectors=function focusableElementSelectors(){return"audio, button, canvas, details, iframe, input, select, summary, textarea, video, [accesskey], a[href], area[href], [tabindex]"}},5921:(e,t,n)=&gt;{var o=n(6784);Object.defineProperty(t,"__esModule",{value:!0}),t.close=void 0;const s=new(o(n(5194)).default)("eicon");t.close={get element(){return s.createSvgElement("close",{path:"M742 167L500 408 258 167C246 154 233 150 217 150 196 150 179 158 167 167 154 179 150 196 150 212 150 229 154 242 171 254L408 500 167 742C138 771 138 800 167 829 196 858 225 858 254 829L496 587 738 829C750 842 767 846 783 846 800 846 817 842 829 829 842 817 846 804 846 783 846 767 842 750 829 737L588 500 833 258C863 229 863 200 833 171 804 137 775 137 742 167Z",width:1e3,height:1e3})}}},5194:(e,t)=&gt;{Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;class IconsManager{static symbolsContainer;static iconsUsageList=[];constructor(e){if(this.prefix=`${e}-`,!IconsManager.symbolsContainer){const e="e-font-icon-svg-symbols";IconsManager.symbolsContainer=document.getElementById(e),IconsManager.symbolsContainer||(IconsManager.symbolsContainer=document.createElementNS("http://www.w3.org/2000/svg","svg"),IconsManager.symbolsContainer.setAttributeNS(null,"style","display: none;"),IconsManager.symbolsContainer.setAttributeNS(null,"class",e),document.body.appendChild(IconsManager.symbolsContainer))}}createSvgElement(e,t){let{path:n,width:o,height:s}=t;const r=this.prefix+e,l="#"+this.prefix+e;if(!IconsManager.iconsUsageList.includes(r)){if(!IconsManager.symbolsContainer.querySelector(l)){const e=document.createElementNS("http://www.w3.org/2000/svg","symbol");e.id=r,e.innerHTML='&lt;path d="'+n+'"&gt;&lt;/path&gt;',e.setAttributeNS(null,"viewBox","0 0 "+o+" "+s),IconsManager.symbolsContainer.appendChild(e)}IconsManager.iconsUsageList.push(r)}const i=document.createElementNS("http://www.w3.org/2000/svg","svg");return i.innerHTML='&lt;use xlink:href="'+l+'" /&gt;',i.setAttributeNS(null,"class","e-font-icon-svg e-"+r),i}}t.default=IconsManager},7754:(e,t,n)=&gt;{Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=n(6914);t.default=class ModalKeyboardHandler{lastFocusableElement=null;firstFocusableElement=null;modalTriggerElement=null;constructor(e){this.config=e,this.changeFocusAfterAnimation=!1}onOpenModal(){this.initializeElements(),this.setTriggerElement(),this.changeFocusAfterAnimation="popup"===this.config.modalType&amp;&amp;!!this.config.hasEntranceAnimation,this.changeFocusAfterAnimation||this.changeFocus(),this.bindEvents()}onCloseModal(){elementorFrontend.elements.$window.off("keydown",this.onKeyDownPressed.bind(this)),this.modalTriggerElement&amp;&amp;this.setFocusToElement(this.modalTriggerElement)}bindEvents(){elementorFrontend.elements.$window.on("keydown",this.onKeyDownPressed.bind(this)),this.changeFocusAfterAnimation&amp;&amp;this.config.$modalElements.on("animationend animationcancel",this.changeFocus.bind(this)),"popup"===this.config.modalType&amp;&amp;this.onPopupCloseEvent()}onPopupCloseEvent(){elementorFrontend.elements.$window.on("elementor/popup/hide",this.onCloseModal.bind(this))}getFocusableElements(){const e="popup"===this.config.modalType?":focusable":(0,o.focusableElementSelectors)();return this.config.$modalElements.find(e)}initializeElements(){const e=this.getFocusableElements();e.length&amp;&amp;(this.lastFocusableElement=e[e.length-1],this.firstFocusableElement=e[0])}setTriggerElement(){const e=elementorFrontend.elements.window.document.activeElement;this.modalTriggerElement=e?elementorFrontend.elements.window.document.activeElement:null}changeFocus(){this.firstFocusableElement?this.setFocusToElement(this.firstFocusableElement):(this.config.$elementWrapper.attr("tabindex","0"),this.setFocusToElement(this.config.$elementWrapper[0]))}onKeyDownPressed(e){const t=e.shiftKey,n="Tab"===e.key||9===e.keyCode,o="0"===this.config.$elementWrapper.attr("tabindex");n&amp;&amp;o?e.preventDefault():n&amp;&amp;this.onTabKeyPressed(n,t,e)}onTabKeyPressed(e,t,n){elementorFrontend.isEditMode()&amp;&amp;this.initializeElements();const o=elementorFrontend.elements.window.document.activeElement;if(t){o===this.firstFocusableElement&amp;&amp;(this.setFocusToElement(this.lastFocusableElement),n.preventDefault())}else{o===this.lastFocusableElement&amp;&amp;(this.setFocusToElement(this.firstFocusableElement),n.preventDefault())}}setFocusToElement(e){const t="popup"===this.config.modalType?250:100;setTimeout((()=&gt;{e?.focus()}),t)}}},5012:(e,t)=&gt;{Object.defineProperty(t,"__esModule",{value:!0}),t.default=function runElementHandlers(e){[...e].flatMap((e=&gt;[...e.querySelectorAll(".elementor-element")])).forEach((e=&gt;elementorFrontend.elementsHandler.runReadyTrigger(e)))}},6137:(e,t,n)=&gt;{Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;class _default extends elementorModules.Module{constructor(){super(),elementorFrontend.elementsHandler.attachHandler("animated-headline",(()=&gt;n.e(961).then(n.bind(n,2590))))}}t.default=_default},7371:(e,t,n)=&gt;{Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;class _default extends elementorModules.Module{constructor(){super(),elementorFrontend.elementsHandler.attachHandler("media-carousel",(()=&gt;n.e(692).then(n.bind(n,8948)))),elementorFrontend.elementsHandler.attachHandler("testimonial-carousel",(()=&gt;n.e(897).then(n.bind(n,7181)))),elementorFrontend.elementsHandler.attachHandler("reviews",(()=&gt;n.e(897).then(n.bind(n,7181))))}}t.default=_default},3746:(e,t,n)=&gt;{Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;class _default extends elementorModules.Module{constructor(){super(),elementorFrontend.elementsHandler.attachHandler("countdown",(()=&gt;n.e(416).then(n.bind(n,475))))}}t.default=_default},9880:(e,t)=&gt;{Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;class _default extends elementorModules.Module{constructor(){super(),elementorFrontend.on("components:init",(()=&gt;this.onFrontendComponentsInit()))}onFrontendComponentsInit(){elementorFrontend.utils.urlActions.addAction("reload-page",(()=&gt;document.location.reload()))}}t.default=_default},5355:(e,t,n)=&gt;{Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;class _default extends elementorModules.Module{constructor(){super(),elementorFrontend.config.experimentalFeatures.container&amp;&amp;(["contact-buttons-var-1","contact-buttons-var-3","contact-buttons-var-4","contact-buttons-var-5","contact-buttons-var-6","contact-buttons-var-7","contact-buttons-var-8","contact-buttons-var-9"].forEach((e=&gt;{elementorFrontend.elementsHandler.attachHandler(e,(()=&gt;n.e(1).then(n.bind(n,197))))})),elementorFrontend.elementsHandler.attachHandler("contact-buttons-var-10",(()=&gt;n.e(61).then(n.bind(n,7263)))),elementorFrontend.elementsHandler.attachHandler("floating-bars-var-2",(()=&gt;n.e(249).then(n.bind(n,2319)))),elementorFrontend.elementsHandler.attachHandler("floating-bars-var-3",(()=&gt;n.e(440).then(n.bind(n,7704)))))}}t.default=_default},4286:(e,t,n)=&gt;{Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;class _default extends elementorModules.Module{constructor(){super(),elementorFrontend.elementsHandler.attachHandler("form",[()=&gt;n.e(325).then(n.bind(n,9230)),()=&gt;n.e(325).then(n.bind(n,2176)),()=&gt;n.e(325).then(n.bind(n,9613)),()=&gt;n.e(325).then(n.bind(n,2478)),()=&gt;n.e(325).then(n.bind(n,733)),()=&gt;n.e(325).then(n.bind(n,6935))]),elementorFrontend.elementsHandler.attachHandler("subscribe",[()=&gt;n.e(325).then(n.bind(n,9230)),()=&gt;n.e(325).then(n.bind(n,2176)),()=&gt;n.e(325).then(n.bind(n,9613))])}}t.default=_default},4043:(e,t,n)=&gt;{Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;class _default extends elementorModules.Module{constructor(){super(),elementorFrontend.elementsHandler.attachHandler("gallery",(()=&gt;n.e(543).then(n.bind(n,771))))}}t.default=_default},6238:(e,t,n)=&gt;{Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;class _default extends elementorModules.Module{constructor(){super(),elementorFrontend.elementsHandler.attachHandler("hotspot",(()=&gt;n.e(292).then(n.bind(n,507))))}}t.default=_default},325:(e,t,n)=&gt;{Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;class _default extends elementorModules.Module{constructor(){super(),["post","product","post_taxonomy","product_taxonomy"].forEach((e=&gt;{elementorFrontend.elementsHandler.attachHandler("loop-grid",(()=&gt;n.e(535).then(n.bind(n,2245))),e),elementorFrontend.elementsHandler.attachHandler("loop-grid",(()=&gt;n.e(993).then(n.bind(n,2813))),e),elementorFrontend.elementsHandler.attachHandler("loop-carousel",(()=&gt;n.e(993).then(n.bind(n,2813))),e),elementorFrontend.elementsHandler.attachHandler("loop-carousel",(()=&gt;n.e(932).then(n.bind(n,7992))),e),elementorFrontend.elementsHandler.attachHandler("loop-grid",(()=&gt;n.e(550).then(n.bind(n,4734))),e)}))}}t.default=_default},9585:(e,t,n)=&gt;{var o=n(6784);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var s=o(n(5012)),r=o(n(4921)),l=o(n(1368)),i=n(275);class BaseFilterFrontendModule extends elementorModules.Module{constructor(){super(),this.loopWidgetsStore=new l.default}removeFilterFromLoopWidget(e,t){let n=arguments.length&gt;2&amp;&amp;void 0!==arguments[2]?arguments[2]:"",o=arguments.length&gt;3&amp;&amp;void 0!==arguments[3]?arguments[3]:"";if(!this.loopWidgetsStore.getWidget(e))return this.loopWidgetsStore.addWidget(e),void this.refreshLoopWidget(e,t);if(n===o&amp;&amp;this.loopWidgetsStore.unsetFilter(e,t),n!==o){const o=this.loopWidgetsStore.getFilterTerms(e,t).filter((function(e){return e!==n}));this.loopWidgetsStore.setFilterTerms(e,t,o)}this.refreshLoopWidget(e,t)}setFilterDataForLoopWidget(e,t,n){let o=!(arguments.length&gt;3&amp;&amp;void 0!==arguments[3])||arguments[3],s=arguments.length&gt;4&amp;&amp;void 0!==arguments[4]?arguments[4]:"DISABLED";this.loopWidgetsStore.maybeInitializeWidget(e),this.loopWidgetsStore.maybeInitializeFilter(e,t);const r=this.validateMultipleFilterOperator(s);if("DISABLED"!==r){const o=this.loopWidgetsStore.getFilterTerms(e,t)??[],s=n.filterData.terms;n.filterData.terms=[...new Set([...o,...s])],n.filterData.logicalJoin=r}this.loopWidgetsStore.setFilter(e,t,n),o?this.refreshLoopWidget(e,t):this.loopWidgetsStore.consolidateFilters(e)}validateMultipleFilterOperator(e){return e&amp;&amp;["AND","OR"].includes(e)?e:"DISABLED"}getQueryStringInObjectForm(){const e={};for(const t in this.loopWidgetsStore.get()){const n=this.loopWidgetsStore.getWidget(t);for(const o in n.consolidatedFilters){const s=n.consolidatedFilters[o];for(const n in s){const o=i.queryConstants[s[n].logicalJoin??"AND"].separator.decoded;e[`e-filter-${t}-${n}`]=Object.values(s[n].terms).join(o)}}}return e}updateURLQueryString(e,t){const n=new URL(window.location.href).searchParams,o=this.getQueryStringInObjectForm(),s=new URLSearchParams;n.forEach(((t,n)=&gt;{n.startsWith("e-filter")||s.append(n,t),n.startsWith("e-page-"+e)&amp;&amp;s.delete(n)}));for(const e in o)s.set(e,o[e]);let r=s.toString();r=r.replace(new RegExp(`${i.queryConstants.AND.separator.encoded}`,"g"),i.queryConstants.AND.separator.decoded),r=r.replace(new RegExp(`${i.queryConstants.OR.separator.encoded}`,"g"),i.queryConstants.OR.separator.decoded);const l=this.getFilterHelperAttributes(t);r=l.pageNum&gt;1?r?this.formatQueryString(l.baseUrl,r):l.baseUrl:r?`?${r}`:location.pathname,history.pushState(null,null,r)}formatQueryString(e,t){const n=e.includes("?")?new URLSearchParams(e.split("?")[1]):new URLSearchParams,o=new URLSearchParams(t);for(const e of n.keys())o.has(e)&amp;&amp;o.delete(e);const s=["page","paged"];for(const e of s)n.delete(e),o.delete(e);const r=new URLSearchParams(n.toString());for(const[e,t]of o.entries())r.append(e,t);return e.split("?")[0]+(r.toString()?`?${r.toString()}`:"")}getFilterHelperAttributes(e){const t=document.querySelector('[data-id="'+e+'"]');if(!t)return{baseUrl:location.href,pageNum:1};return t.querySelector(".e-filter").dataset}prepareLoopUpdateRequestData(e,t){const n=this.loopWidgetsStore.getConsolidatedFilters(e),o=this.getFilterHelperAttributes(t),s={post_id:this.getClosestDataElementorId(document.querySelector(`.elementor-element-${e}`))||elementorFrontend.config.post.id,widget_filters:n,widget_id:e,pagination_base_url:o.baseUrl};if(elementorFrontend.isEditMode()){const t=window.top.$e.components.get("document").utils.findContainerById(e);s.widget_model=t.model.toJSON({remove:["default","editSettings","defaultEditSettings"]}),s.is_edit_mode=!0}return s}getClosestDataElementorId(e){const t=e?.closest("[data-elementor-id]");return t?t.getAttribute("data-elementor-id"):null}getFetchArgumentsForLoopUpdate(e,t){const n=this.prepareLoopUpdateRequestData(e,t),o={method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(n)};return elementorFrontend.isEditMode()&amp;&amp;elementorPro.config.loopFilter?.nonce&amp;&amp;(o.headers["X-WP-Nonce"]=elementorPro.config.loopFilter?.nonce),o}fetchUpdatedLoopWidgetMarkup(e,t){return fetch(`${elementorProFrontend.config.urls.rest}elementor-pro/v1/refresh-loop`,this.getFetchArgumentsForLoopUpdate(e,t))}createFragmentFromHTMLString(e){const t=document.createElement("template");return t.innerHTML=e.trim(),t.content}refreshLoopWidget(e,t){this.loopWidgetsStore.consolidateFilters(e),this.updateURLQueryString(e,t);const n=document.querySelector(`.elementor-element-${e}`);if(!n)return;this.ajaxHelper||(this.ajaxHelper=new r.default),this.ajaxHelper.addLoadingAnimationOverlay(e);return this.fetchUpdatedLoopWidgetMarkup(e,t).then((e=&gt;e instanceof Response&amp;&amp;e?.ok&amp;&amp;!(400&lt;=e?.status)?e.json():{})).catch((()=&gt;({}))).then((t=&gt;{if(!t?.data&amp;&amp;""!==t?.data)return;const o=this.createFragmentFromHTMLString(t.data);Array.from(o.children).forEach((e=&gt;{const t=e.className?`.${e.className.split(" ").join(".")}`:`#${e.id}`,o=n.querySelector(t);o&amp;&amp;o.parentNode.replaceChild(e,o)})),this.handleElementHandlers(n),ElementorProFrontendConfig.settings.lazy_load_background_images&amp;&amp;document.dispatchEvent(new Event("elementor/lazyload/observe")),elementorFrontend.elementsHandler.runReadyTrigger(document.querySelector(`.elementor-element-${e}`)),n.classList.remove("e-loading")})).finally((()=&gt;{this.ajaxHelper.removeLoadingAnimationOverlay(e)}))}handleElementHandlers(e){const t=e.querySelectorAll(".e-loop-item");(0,s.default)(t)}}t.default=BaseFilterFrontendModule},282:(e,t,n)=&gt;{var o=n(6784);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var s=o(n(9585));class LoopFilter extends s.default{constructor(){super(),elementorFrontend.elementsHandler.attachHandler("taxonomy-filter",(()=&gt;n.e(225).then(n.bind(n,2236))))}}t.default=LoopFilter},1368:(e,t)=&gt;{Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;t.default=class LoopWidgetsStore{constructor(){this.widgets={}}get(){return this.widgets}getWidget(e){return this.widgets[e]}setWidget(e,t){this.widgets[e]=t}unsetWidget(e){delete this.widgets[e]}getFilters(e){return this.getWidget(e).filters}getFilter(e,t){return this.getWidget(e).filters[t]}setFilter(e,t,n){this.getWidget(e).filters[t]=n}unsetFilter(e,t){delete this.getWidget(e).filters[t]}getFilterTerms(e,t){return this.getFilter(e,t).filterData.terms??[]}setFilterTerms(e,t,n){this.getFilter(e,t).filterData.terms=n}getConsolidatedFilters(e){return this.getWidget(e).consolidatedFilters}setConsolidatedFilters(e,t){this.getWidget(e).consolidatedFilters=t}addWidget(e){this.setWidget(e,{filters:{},consolidatedFilters:{}})}maybeInitializeWidget(e){this.getWidget(e)||this.addWidget(e)}maybeInitializeFilter(e,t){if(this.getFilter(e,t))return;this.setFilter(e,t,{filterData:{terms:[]}})}consolidateFilters(e){const t=this.getFilters(e),n={};for(const e in t){const o=t[e],s=o.filterType,r=o.filterData;0!==r.terms.length&amp;&amp;(n[s]||(n[s]={}),n[s][r.selectedTaxonomy]||(n[s][r.selectedTaxonomy]=[]),!r.terms||n[s][r.selectedTaxonomy].terms&amp;&amp;n[s][r.selectedTaxonomy].terms.includes(r.terms)||(n[s][r.selectedTaxonomy]={terms:"string"===r.terms?[r.terms]:r.terms}),r.logicalJoin&amp;&amp;!n[s][r.selectedTaxonomy].logicalJoin&amp;&amp;(n[s][r.selectedTaxonomy]={...n[s][r.selectedTaxonomy]||{},logicalJoin:r.logicalJoin??"AND"}))}this.setConsolidatedFilters(e,n)}}},275:e=&gt;{e.exports={queryConstants:{AND:{separator:{decoded:"+",fromBrowser:" ",encoded:"%2B"},operator:"AND"},OR:{separator:{decoded:"~",fromBrowser:"~",encoded:"%7C"},operator:"IN"},NOT:{separator:{decoded:"!",fromBrowser:"!",encoded:"%21"},operator:"NOT IN"},DISABLED:{separator:{decoded:"",fromBrowser:"",encoded:""},operator:"AND"}}}},1750:(e,t,n)=&gt;{Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;class _default extends elementorModules.Module{constructor(){super(),elementorFrontend.elementsHandler.attachHandler("lottie",(()=&gt;n.e(970).then(n.bind(n,5200))))}}t.default=_default},7467:(e,t,n)=&gt;{Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;class _default extends elementorModules.Module{constructor(){super(),elementorFrontend.elementsHandler.attachHandler("mega-menu",[()=&gt;n.e(727).then(n.bind(n,3431)),()=&gt;n.e(87).then(n.bind(n,8636)),()=&gt;n.e(912).then(n.bind(n,9774))])}}t.default=_default},4486:(e,t,n)=&gt;{Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;class _default extends elementorModules.Module{constructor(){super(),jQuery.fn.smartmenus&amp;&amp;(jQuery.SmartMenus.prototype.isCSSOn=function(){return!0},elementorFrontend.config.is_rtl&amp;&amp;(jQuery.fn.smartmenus.defaults.rightToLeftSubMenus=!0)),elementorFrontend.elementsHandler.attachHandler("nav-menu",(()=&gt;n.e(334).then(n.bind(n,757))))}}t.default=_default},1953:(e,t,n)=&gt;{Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;class _default extends elementorModules.Module{constructor(){super(),elementorFrontend.elementsHandler.attachHandler("nested-carousel",(()=&gt;n.e(33).then(n.bind(n,1195))))}}t.default=_default},2969:(e,t,n)=&gt;{Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;class _default extends elementorModules.Module{constructor(){super(),elementorFrontend.elementsHandler.attachHandler("off-canvas",(()=&gt;n.e(579).then(n.bind(n,9547)))),elementorFrontend.on("components:init",(()=&gt;this.onFrontendComponentsInit()))}onFrontendComponentsInit(){this.addUrlActions()}addUrlActions(){elementorFrontend.utils.urlActions.addAction("off_canvas:open",(e=&gt;{this.toggleOffCanvasDisplay(e)})),elementorFrontend.utils.urlActions.addAction("off_canvas:close",(e=&gt;{this.toggleOffCanvasDisplay(e)})),elementorFrontend.utils.urlActions.addAction("off_canvas:toggle",(e=&gt;{this.toggleOffCanvasDisplay(e)}))}toggleOffCanvasDisplay(e){window.dispatchEvent(new CustomEvent("elementor-pro/off-canvas/toggle-display-mode",{detail:e}))}}t.default=_default},2506:(e,t,n)=&gt;{var o=n(6784);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var s=o(n(3758)),r=o(n(5469)),l=n(5921),i=o(n(7754));class _default extends elementorModules.frontend.Document{keyboardHandler=null;bindEvents(){const e=this.getDocumentSettings("open_selector");e&amp;&amp;elementorFrontend.elements.$body.on("click",e,this.showModal.bind(this))}startTiming(){new r.default(this.getDocumentSettings("timing"),this).check()&amp;&amp;this.initTriggers()}initTriggers(){this.triggers=new s.default(this.getDocumentSettings("triggers"),this)}showModal(e){let t=arguments.length&gt;1&amp;&amp;void 0!==arguments[1]&amp;&amp;arguments[1];const n=this.getDocumentSettings();if(!this.isEdit){if(!elementorFrontend.isWPPreviewMode()){if(this.getStorage("disable"))return;if(t&amp;&amp;elementorProFrontend.modules.popup.popupPopped&amp;&amp;n.avoid_multiple_popups)return}this.$element=jQuery(this.elementHTML),this.elements.$elements=this.$element.find(this.getSettings("selectors.elements"))}const o=this.getModal(),s=o.getElements("closeButton");o.setMessage(this.$element).show(),this.isEdit||(n.close_button_delay&amp;&amp;(s.hide(),clearTimeout(this.closeButtonTimeout),this.closeButtonTimeout=setTimeout((()=&gt;s.show()),1e3*n.close_button_delay)),super.runElementsHandlers()),this.setEntranceAnimation(),n.timing&amp;&amp;n.timing.times_count||this.countTimes(),elementorProFrontend.modules.popup.popupPopped=!0,!this.isEdit&amp;&amp;n.a11y_navigation&amp;&amp;this.handleKeyboardA11y()}setEntranceAnimation(){const e=this.getModal().getElements("widgetContent"),t=this.getDocumentSettings(),n=elementorFrontend.getCurrentDeviceSetting(t,"entrance_animation");if(this.currentAnimation&amp;&amp;e.removeClass(this.currentAnimation),this.currentAnimation=n,!n)return;const o=t.entrance_animation_duration.size;e.addClass(n),setTimeout((()=&gt;e.removeClass(n)),1e3*o)}handleKeyboardA11y(){this.keyboardHandler||(this.keyboardHandler=new i.default(this.getKeyboardHandlingConfig())),this.keyboardHandler.onOpenModal()}setExitAnimation(){const e=this.getModal(),t=this.getDocumentSettings(),n=e.getElements("widgetContent"),o=elementorFrontend.getCurrentDeviceSetting(t,"exit_animation"),s=o?t.entrance_animation_duration.size:0;setTimeout((()=&gt;{o&amp;&amp;n.removeClass(o+" reverse"),this.isEdit||(this.$element.remove(),e.getElements("widget").hide())}),1e3*s),o&amp;&amp;n.addClass(o+" reverse")}initModal(){let e;this.getModal=()=&gt;{if(!e){const t=this.getDocumentSettings(),n=this.getSettings("id"),triggerPopupEvent=e=&gt;{const t="elementor/popup/"+e;elementorFrontend.elements.$document.trigger(t,[n,this]),window.dispatchEvent(new CustomEvent(t,{detail:{id:n,instance:this}}))};let o="elementor-popup-modal";t.classes&amp;&amp;(o+=" "+t.classes);const s={id:"elementor-popup-modal-"+n,className:o,closeButton:!0,preventScroll:t.prevent_scroll,onShow:()=&gt;triggerPopupEvent("show"),onHide:()=&gt;triggerPopupEvent("hide"),effects:{hide:()=&gt;{t.timing&amp;&amp;t.timing.times_count&amp;&amp;this.countTimes(),this.setExitAnimation()},show:"show"},hide:{auto:!!t.close_automatically,autoDelay:1e3*t.close_automatically,onBackgroundClick:!t.prevent_close_on_background_click,onOutsideClick:!t.prevent_close_on_background_click,onEscKeyPress:!t.prevent_close_on_esc_key,ignore:".flatpickr-calendar"},position:{enable:!1}};elementorFrontend.config.experimentalFeatures.e_font_icon_svg&amp;&amp;(s.closeButtonOptions={iconElement:l.close.element}),s.closeButtonClass="eicon-close",e=elementorFrontend.getDialogsManager().createWidget("lightbox",s),e.getElements("widgetContent").addClass("animated");const r=e.getElements("closeButton");this.isEdit&amp;&amp;(r.off("click"),e.hide=()=&gt;{}),this.setCloseButtonPosition()}return e}}setCloseButtonPosition(){const e=this.getModal(),t=this.getDocumentSettings("close_button_position");e.getElements("closeButton").prependTo(e.getElements("outside"===t?"widget":"widgetContent"))}disable(){this.setStorage("disable",!0)}setStorage(e,t,n){elementorFrontend.storage.set(`popup_${this.getSettings("id")}_${e}`,t,n)}getStorage(e,t){return elementorFrontend.storage.get(`popup_${this.getSettings("id")}_${e}`,t)}countTimes(){const e=this.getStorage("times")||0;this.setStorage("times",e+1)}runElementsHandlers(){}async onInit(){super.onInit(),window.DialogsManager||await elementorFrontend.utils.assetsLoader.load("script","dialog"),this.initModal(),this.isEdit?this.showModal():(this.$element.show().remove(),this.elementHTML=this.$element[0].outerHTML,elementorFrontend.isEditMode()||(elementorFrontend.isWPPreviewMode()&amp;&amp;elementorFrontend.config.post.id===this.getSettings("id")?this.showModal():this.startTiming()))}onSettingsChange(e){const t=Object.keys(e.changed)[0];-1!==t.indexOf("entrance_animation")&amp;&amp;this.setEntranceAnimation(),"exit_animation"===t&amp;&amp;this.setExitAnimation(),"close_button_position"===t&amp;&amp;this.setCloseButtonPosition()}getEntranceAnimationDuration(){const e=this.getDocumentSettings(),t=e?.entrance_animation;if(!t||""===t||"none"===t)return 0;const n=e?.entrance_animation_duration?.size;return n?Number(n):0}getKeyboardHandlingConfig(){return{$modalElements:this.getModal().getElements("widgetContent"),$elementWrapper:this.$element,hasEntranceAnimation:0!==this.getEntranceAnimationDuration(),modalType:"popup",modalId:this.$element.data("elementor-id")}}}t.default=_default},1459:(e,t,n)=&gt;{var o=n(6784);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var s=o(n(2506));class _default extends elementorModules.Module{constructor(){super(),elementorFrontend.hooks.addAction("elementor/frontend/documents-manager/init-classes",this.addDocumentClass),elementorFrontend.elementsHandler.attachHandler("form",(()=&gt;n.e(887).then(n.bind(n,5985)))),elementorFrontend.on("components:init",(()=&gt;this.onFrontendComponentsInit())),this.shouldSetViewsAndSessions()&amp;&amp;this.setViewsAndSessions()}shouldSetViewsAndSessions(){return!elementorFrontend.isEditMode()&amp;&amp;!elementorFrontend.isWPPreviewMode()&amp;&amp;ElementorProFrontendConfig.popup.hasPopUps}addDocumentClass(e){e.addDocumentClass("popup",s.default)}setViewsAndSessions(){const e=elementorFrontend.storage.get("pageViews")||0;elementorFrontend.storage.set("pageViews",e+1);if(!elementorFrontend.storage.get("activeSession",{session:!0})){elementorFrontend.storage.set("activeSession",!0,{session:!0});const e=elementorFrontend.storage.get("sessions")||0;elementorFrontend.storage.set("sessions",e+1)}}showPopup(e,t){const n=elementorFrontend.documentsManager.documents[e.id];if(!n)return;const o=n.getModal();e.toggle&amp;&amp;o.isVisible()?o.hide():n.showModal(t)}closePopup(e,t){const n=jQuery(t.target).parents('[data-elementor-type="popup"]').data("elementorId");if(!n)return;const o=elementorFrontend.documentsManager.documents[n];o.getModal().hide(),e.do_not_show_again&amp;&amp;o.disable()}onFrontendComponentsInit(){elementorFrontend.utils.urlActions.addAction("popup:open",((e,t)=&gt;this.showPopup(e,t))),elementorFrontend.utils.urlActions.addAction("popup:close",((e,t)=&gt;this.closePopup(e,t)))}}t.default=_default},5469:(e,t,n)=&gt;{var o=n(6784);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var s=o(n(164)),r=o(n(5873)),l=o(n(7471)),i=o(n(2880)),a=o(n(5104)),d=o(n(1837)),u=o(n(3940)),c=o(n(1533)),m=o(n(8254));class _default extends elementorModules.Module{constructor(e,t){super(e),this.document=t,this.timingClasses={page_views:s.default,sessions:r.default,url:l.default,sources:i.default,logged_in:a.default,devices:d.default,times:u.default,browsers:c.default,schedule:m.default}}check(){const e=this.getSettings();let t=!0;return jQuery.each(this.timingClasses,((n,o)=&gt;{if(!e[n])return;new o(e,this.document).check()||(t=!1)})),t}}t.default=_default},2733:(e,t)=&gt;{Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;class _default extends elementorModules.Module{constructor(e,t){super(e),this.document=t}getTimingSetting(e){return this.getSettings(this.getName()+"_"+e)}}t.default=_default},1533:(e,t,n)=&gt;{var o=n(6784);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var s=o(n(2733));class _default extends s.default{getName(){return"browsers"}check(){if("all"===this.getTimingSetting("browsers"))return!0;const e=this.getTimingSetting("browsers_options"),t=elementorFrontend.utils.environment;return e.some((e=&gt;t[e]))}}t.default=_default},1837:(e,t,n)=&gt;{var o=n(6784);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var s=o(n(2733));class _default extends s.default{getName(){return"devices"}check(){return-1!==this.getTimingSetting("devices").indexOf(elementorFrontend.getCurrentDeviceMode())}}t.default=_default},5104:(e,t,n)=&gt;{var o=n(6784);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var s=o(n(2733));class _default extends s.default{getName(){return"logged_in"}check(){const e=elementorFrontend.config.user;if(!e)return!0;if("all"===this.getTimingSetting("users"))return!1;return!this.getTimingSetting("roles").filter((t=&gt;-1!==e.roles.indexOf(t))).length}}t.default=_default},164:(e,t,n)=&gt;{var o=n(6784);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var s=o(n(2733));class _default extends s.default{getName(){return"page_views"}check(){const e=elementorFrontend.storage.get("pageViews"),t=this.getName();let n=this.document.getStorage(t+"_initialPageViews");return n||(this.document.setStorage(t+"_initialPageViews",e),n=e),e-n&gt;=this.getTimingSetting("views")}}t.default=_default},9901:(e,t)=&gt;{Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;t.default=class ScheduleUtils{constructor(e){this.settings=e.settings}getCurrentDateTime(){let e=new Date;return"site"===this.settings.timezone&amp;&amp;this.settings.serverDatetime&amp;&amp;(e=new Date(this.settings.serverDatetime)),e}shouldDisplay=()=&gt;{if(!this.settings.startDate&amp;&amp;!this.settings.endDate)return!0;const e=this.getCurrentDateTime();return(!this.settings.startDate||e&gt;=this.settings.startDate)&amp;&amp;(!this.settings.endDate||e&lt;=this.settings.endDate)}}},8254:(e,t,n)=&gt;{var o=n(6784);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var s=o(n(2733)),r=o(n(9901));class _default extends s.default{constructor(){super(...arguments);const{schedule_timezone:e,schedule_start_date:t,schedule_end_date:n,schedule_server_datetime:o}=this.getSettings();this.settings={timezone:e,startDate:!!t&amp;&amp;new Date(t),endDate:!!n&amp;&amp;new Date(n),serverDatetime:!!o&amp;&amp;new Date(o)},this.scheduleUtils=new r.default({settings:this.settings})}getName(){return"schedule"}check(){return this.scheduleUtils.shouldDisplay()}}t.default=_default},5873:(e,t,n)=&gt;{var o=n(6784);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var s=o(n(2733));class _default extends s.default{getName(){return"sessions"}check(){const e=elementorFrontend.storage.get("sessions"),t=this.getName();let n=this.document.getStorage(t+"_initialSessions");return n||(this.document.setStorage(t+"_initialSessions",e),n=e),e-n&gt;=this.getTimingSetting("sessions")}}t.default=_default},2880:(e,t,n)=&gt;{var o=n(6784);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var s=o(n(2733));class _default extends s.default{getName(){return"sources"}check(){const e=this.getTimingSetting("sources");if(3===e.length)return!0;const t=document.referrer.replace(/https?:\/\/(?:www\.)?/,"");return 0===t.indexOf(location.host.replace("www.",""))?-1!==e.indexOf("internal"):-1!==e.indexOf("external")||-1!==e.indexOf("search")&amp;&amp;/^(google|yahoo|bing|yandex|baidu)\./.test(t)}}t.default=_default},1744:(e,t)=&gt;{Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;t.default=class TimesUtils{constructor(e){this.uniqueId=e.uniqueId,this.settings=e.settings,this.storage=e.storage}getTimeFramesInSecounds(e){return{day:86400,week:604800,month:2628288}[e]}setExpiration(e,t,n){if(this.storage.get(e))this.storage.set(e,t);else{const o={lifetimeInSeconds:this.getTimeFramesInSecounds(n)};this.storage.set(e,t,o)}}getImpressionsCount(){const e=this.storage.get(this.uniqueId)??0;return parseInt(e)}incrementImpressionsCount(){if(this.settings.period)if("session"!==this.settings.period){const e=this.getImpressionsCount();this.setExpiration(this.uniqueId,e+1,this.settings.period)}else sessionStorage.setItem(this.uniqueId,parseInt(sessionStorage.getItem(this.uniqueId)??0)+1);else this.storage.set("times",(this.storage.get("times")??0)+1)}shouldCountOnOpen(){this.settings.countOnOpen&amp;&amp;this.incrementImpressionsCount()}shouldDisplayPerTimeFrame(){return this.getImpressionsCount()&lt;this.settings.showsLimit&amp;&amp;(this.shouldCountOnOpen(),!0)}shouldDisplayPerSession(){const e=sessionStorage.getItem(this.uniqueId)??0;return parseInt(e)&lt;this.settings.showsLimit&amp;&amp;(this.shouldCountOnOpen(),!0)}shouldDisplayBackwordCompatible(){let e=arguments.length&gt;1?arguments[1]:void 0;const t=parseInt(arguments.length&gt;0&amp;&amp;void 0!==arguments[0]?arguments[0]:0)&lt;parseInt(e);return this.shouldCountOnOpen(),t}}},3940:(e,t,n)=&gt;{var o=n(6784);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var s=o(n(2733)),r=o(n(1744));class _default extends s.default{constructor(){super(...arguments),this.uniqueId=`popup-${this.document.getSettings("id")}-impressions-count`;const{times_count:e,times_period:t,times_times:n}=this.getSettings();this.settings={countOnOpen:e,period:t,showsLimit:parseInt(n)},""===this.settings.period&amp;&amp;(this.settings.period=!1),["","close"].includes(this.settings.countOnOpen)?(this.settings.countOnOpen=!1,this.onPopupHide()):this.settings.countOnOpen=!0,this.utils=new r.default({uniqueId:this.uniqueId,settings:this.settings,storage:elementorFrontend.storage})}getName(){return"times"}check(){if(!this.settings.period){const e=this.document.getStorage("times")||0,t=this.getTimingSetting("times");return this.utils.shouldDisplayBackwordCompatible(e,t)}if("session"!==this.settings.period){if(!this.utils.shouldDisplayPerTimeFrame())return!1}else if(!this.utils.shouldDisplayPerSession())return!1;return!0}onPopupHide(){window.addEventListener("elementor/popup/hide",(()=&gt;{this.utils.incrementImpressionsCount()}))}}t.default=_default},7471:(e,t,n)=&gt;{var o=n(6784);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var s=o(n(2733));class _default extends s.default{getName(){return"url"}check(){const e=this.getTimingSetting("url"),t=this.getTimingSetting("action"),n=document.referrer;if("regex"!==t)return"hide"===t^-1!==n.indexOf(e);let o;try{o=new RegExp(e)}catch(e){return!1}return o.test(n)}}t.default=_default},3758:(e,t,n)=&gt;{var o=n(6784);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var s=o(n(9739)),r=o(n(9226)),l=o(n(4270)),i=o(n(1697)),a=o(n(9143)),d=o(n(3676)),u=o(n(7541));class _default extends elementorModules.Module{constructor(e,t){super(e),this.document=t,this.triggers=[],this.triggerClasses={page_load:s.default,scrolling:r.default,scrolling_to:l.default,click:i.default,inactivity:a.default,exit_intent:d.default,adblock_detection:u.default},this.runTriggers()}runTriggers(){const e=this.getSettings();jQuery.each(this.triggerClasses,((t,n)=&gt;{if(!e[t])return;const o=new n(e,(()=&gt;this.onTriggerFired()));o.run(),this.triggers.push(o)}))}destroyTriggers(){this.triggers.forEach((e=&gt;e.destroy())),this.triggers=[]}onTriggerFired(){this.document.showModal(!0),this.destroyTriggers()}}t.default=_default},7541:(e,t,n)=&gt;{var o=n(6784);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var s=o(n(6904));class _default extends s.default{getName(){return"adblock_detection"}generateRandomString(){const e="abcdefghijklmnopqrstuvwxyz0123456789";let t="";for(let n=0;n&lt;6;n++){t+=e[Math.floor(36*Math.random())]}return t}hasAdblock(){const e=`elementor-adblock-detection-${this.generateRandomString()}`;this.createEmptyAdBlockElement(e);const t=document.querySelector(`#${e}`);if(!t)return!0;const n="none"===window.getComputedStyle(t)?.display;return this.removeEmptyAdBlockElement(t),n}createEmptyAdBlockElement(e){const t=document.createElement("div");t.id=e,t.className="ad-box",t.style.position="fixed",t.style.top="0",t.style.left="0",t.setAttribute("aria-hidden","true"),t.innerHTML="&amp;nbsp;",document.body.appendChild(t)}removeEmptyAdBlockElement(e){e.remove()}run(){this.timeout=setTimeout((()=&gt;{this.hasAdblock()&amp;&amp;this.callback()}),1e3*this.getTriggerSetting("delay"))}destroy(){clearTimeout(this.timeout)}}t.default=_default},6904:(e,t)=&gt;{Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;class _default extends elementorModules.Module{constructor(e,t){super(e),this.callback=t}getTriggerSetting(e){return this.getSettings(this.getName()+"_"+e)}}t.default=_default},1697:(e,t,n)=&gt;{var o=n(6784);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var s=o(n(6904));class _default extends s.default{constructor(){super(...arguments),this.checkClick=this.checkClick.bind(this),this.clicksCount=0}getName(){return"click"}checkClick(){this.clicksCount++,this.clicksCount===this.getTriggerSetting("times")&amp;&amp;this.callback()}run(){elementorFrontend.elements.$body.on("click",this.checkClick)}destroy(){elementorFrontend.elements.$body.off("click",this.checkClick)}}t.default=_default},3676:(e,t,n)=&gt;{var o=n(6784);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var s=o(n(6904));class _default extends s.default{constructor(){super(...arguments),this.detectExitIntent=this.detectExitIntent.bind(this)}getName(){return"exit_intent"}detectExitIntent(e){e.clientY&lt;=0&amp;&amp;this.callback()}run(){elementorFrontend.elements.$window.on("mouseleave",this.detectExitIntent)}destroy(){elementorFrontend.elements.$window.off("mouseleave",this.detectExitIntent)}}t.default=_default},9143:(e,t,n)=&gt;{var o=n(6784);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var s=o(n(6904));class _default extends s.default{constructor(){super(...arguments),this.restartTimer=this.restartTimer.bind(this)}getName(){return"inactivity"}run(){this.startTimer(),elementorFrontend.elements.$document.on("keypress mousemove",this.restartTimer)}startTimer(){this.timeOut=setTimeout(this.callback,1e3*this.getTriggerSetting("time"))}clearTimer(){clearTimeout(this.timeOut)}restartTimer(){this.clearTimer(),this.startTimer()}destroy(){this.clearTimer(),elementorFrontend.elements.$document.off("keypress mousemove",this.restartTimer)}}t.default=_default},9739:(e,t,n)=&gt;{var o=n(6784);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var s=o(n(6904));class _default extends s.default{getName(){return"page_load"}run(){this.timeout=setTimeout(this.callback,1e3*this.getTriggerSetting("delay"))}destroy(){clearTimeout(this.timeout)}}t.default=_default},4270:(e,t,n)=&gt;{var o=n(6784);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var s=o(n(6904));class _default extends s.default{getName(){return"scrolling_to"}run(){let e;try{e=jQuery(this.getTriggerSetting("selector"))}catch(e){return}e.length&amp;&amp;(this.setUpIntersectionObserver(),this.observer.observe(e[0]))}setUpIntersectionObserver(){this.observer=new IntersectionObserver((e=&gt;{e.forEach((e=&gt;{e.isIntersecting&amp;&amp;this.callback()}))}))}destroy(){this.observer&amp;&amp;this.observer.disconnect()}}t.default=_default},9226:(e,t,n)=&gt;{var o=n(6784);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var s=o(n(6904));class _default extends s.default{constructor(){super(...arguments),this.checkScroll=this.checkScroll.bind(this),this.lastScrollOffset=0}getName(){return"scrolling"}checkScroll(){const e=scrollY&gt;this.lastScrollOffset?"down":"up",t=this.getTriggerSetting("direction");if(this.lastScrollOffset=scrollY,e!==t)return;if("up"===e)return void this.callback();const n=elementorFrontend.elements.$document.height()-innerHeight;scrollY/n*100&gt;=this.getTriggerSetting("offset")&amp;&amp;this.callback()}run(){elementorFrontend.elements.$window.on("scroll",this.checkScroll)}destroy(){elementorFrontend.elements.$window.off("scroll",this.checkScroll)}}t.default=_default},8534:(e,t,n)=&gt;{Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;class _default extends elementorModules.Module{constructor(){super(),["classic","full_content","cards"].forEach((e=&gt;{elementorFrontend.elementsHandler.attachHandler("posts",(()=&gt;n.e(535).then(n.bind(n,2078))),e)})),elementorFrontend.elementsHandler.attachHandler("posts",(()=&gt;n.e(396).then(n.bind(n,2195))),"classic"),elementorFrontend.elementsHandler.attachHandler("posts",(()=&gt;n.e(396).then(n.bind(n,2195))),"full_content"),elementorFrontend.elementsHandler.attachHandler("posts",(()=&gt;n.e(396).then(n.bind(n,7907))),"cards"),elementorFrontend.elementsHandler.attachHandler("portfolio",(()=&gt;n.e(726).then(n.bind(n,2232))))}}t.default=_default},8945:(e,t,n)=&gt;{Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;class _default extends elementorModules.Module{constructor(){super(),elementorFrontend.elementsHandler.attachHandler("search",[()=&gt;n.e(187).then(n.bind(n,6963)),()=&gt;n.e(187).then(n.bind(n,7112))])}}t.default=_default},6034:(e,t,n)=&gt;{Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;class _default extends elementorModules.Module{constructor(){super(),elementorFrontend.elementsHandler.attachHandler("share-buttons",(()=&gt;n.e(316).then(n.bind(n,3607))))}}t.default=_default},6075:(e,t,n)=&gt;{Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;class _default extends elementorModules.Module{constructor(){super(),elementorFrontend.elementsHandler.attachHandler("slides",(()=&gt;n.e(829).then(n.bind(n,3271))))}}t.default=_default},570:(e,t,n)=&gt;{Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;class _default extends elementorModules.Module{constructor(){super(),elementorFrontend.elementsHandler.attachHandler("facebook-button",(()=&gt;n.e(158).then(n.bind(n,5070)))),elementorFrontend.elementsHandler.attachHandler("facebook-comments",(()=&gt;n.e(158).then(n.bind(n,5070)))),elementorFrontend.elementsHandler.attachHandler("facebook-embed",(()=&gt;n.e(158).then(n.bind(n,5070)))),elementorFrontend.elementsHandler.attachHandler("facebook-page",(()=&gt;n.e(158).then(n.bind(n,5070))))}}t.default=_default},9302:(e,t,n)=&gt;{Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;class _default extends elementorModules.Module{constructor(){super(),elementorFrontend.elementsHandler.attachHandler("table-of-contents",(()=&gt;Promise.all([n.e(234),n.e(404)]).then(n.bind(n,3827))))}}t.default=_default},6302:(e,t,n)=&gt;{Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;class _default extends elementorModules.Module{constructor(){super(),["archive_classic","archive_full_content","archive_cards"].forEach((e=&gt;{elementorFrontend.elementsHandler.attachHandler("archive-posts",(()=&gt;n.e(345).then(n.bind(n,439))),e)})),elementorFrontend.elementsHandler.attachHandler("archive-posts",(()=&gt;n.e(345).then(n.bind(n,6629))),"archive_classic"),elementorFrontend.elementsHandler.attachHandler("archive-posts",(()=&gt;n.e(345).then(n.bind(n,6629))),"archive_full_content"),elementorFrontend.elementsHandler.attachHandler("archive-posts",(()=&gt;n.e(345).then(n.bind(n,2718))),"archive_cards"),jQuery((function(){var e=location.search.match(/theme_template_id=(\d*)/),t=e?jQuery(".elementor-"+e[1]):[];t.length&amp;&amp;jQuery("html, body").animate({scrollTop:t.offset().top-window.innerHeight/2})}))}}t.default=_default},7492:(e,t,n)=&gt;{Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;class _default extends elementorModules.Module{constructor(){super(),elementorFrontend.elementsHandler.attachHandler("search-form",(()=&gt;n.e(798).then(n.bind(n,9319))))}}t.default=_default},8241:(e,t,n)=&gt;{Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;class _default extends elementorModules.Module{constructor(){super(),elementorFrontend.elementsHandler.attachHandler("woocommerce-menu-cart",(()=&gt;n.e(6).then(n.bind(n,2115)))),elementorFrontend.elementsHandler.attachHandler("woocommerce-purchase-summary",(()=&gt;n.e(80).then(n.bind(n,193)))),elementorFrontend.elementsHandler.attachHandler("woocommerce-checkout-page",(()=&gt;n.e(354).then(n.bind(n,9391)))),elementorFrontend.elementsHandler.attachHandler("woocommerce-cart",(()=&gt;n.e(4).then(n.bind(n,2937)))),elementorFrontend.elementsHandler.attachHandler("woocommerce-my-account",(()=&gt;n.e(662).then(n.bind(n,1627)))),elementorFrontend.elementsHandler.attachHandler("woocommerce-notices",(()=&gt;n.e(621).then(n.bind(n,4702)))),elementorFrontend.elementsHandler.attachHandler("woocommerce-product-add-to-cart",(()=&gt;n.e(787).then(n.bind(n,6973)))),elementorFrontend.isEditMode()&amp;&amp;elementorFrontend.on("components:init",(()=&gt;{elementorFrontend.elements.$body.find(".elementor-widget-woocommerce-cart").length||elementorFrontend.elements.$body.append('&lt;div class="woocommerce-cart-form"&gt;')}))}}t.default=_default},2470:e=&gt;{e.exports=wp.i18n}},e=&gt;{e.O(0,[313],(()=&gt;{return t=2371,e(e.s=t);var t}));e.O()}]);!function(v,b,i){"use strict";var j={addedScripts:{},addedStyles:{},addedAssetsPromises:[],init:function(){var e={"jet-nav-menu.default":j.navMenu,"jet-search.default":j.searchBox,"jet-auth-links.default":j.authLinks,"jet-hamburger-panel.default":j.hamburgerPanel,"jet-blocks-cart.default":j.wooCard,"jet-register.default":j.userRegistration,"jet-reset.default":j.userResetPassword,"jet-login.default":j.userLogin};v.each(e,function(e,t){b.hooks.addAction("frontend/element_ready/"+e,t)}),v(document).on("click.jetBlocks",".jet-search__popup-trigger",j.searchPopupSwitch).on("click.jetBlocks",".jet-search__popup-close",j.searchPopupSwitch),v(window).on("jet-menu/ajax/frontend-init/before",function(){v(document.body).trigger("wc_fragment_refresh")}),b.hooks.addAction("frontend/element_ready/section",j.setStickySection),b.hooks.addAction("frontend/element_ready/container",j.setStickySection),v(j.stickySection)},wooCard:function(e){(window.JetBlocksEditor&amp;&amp;window.JetBlocksEditor.activeSection||j.isEditMode())&amp;&amp;(t=window.JetBlocksEditor.activeSection,["cart_list_style","cart_list_items_style","cart_buttons_style"].indexOf(t),v(".widget_shopping_cart_content").empty(),v(document.body).trigger("wc_fragment_refresh"));var t,n=v(".jet-blocks-cart",e),i=v(".jet-blocks-cart__heading-link",n);switch(n.data("settings").triggerType){case"hover":"ontouchend"in window||"ontouchstart"in window?(n.on("touchstart",function(e){scrollOffset=v(window).scrollTop()}),n.on("touchend",function(e){if(scrollOffset!==v(window).scrollTop())return!1;var t=v(this);t.hasClass("jet-cart-open-proccess")||setTimeout(function(){t.toggleClass("jet-cart-open")},10)}),v(document).on("touchend",function(e){v(e.target).closest(n).length||n.hasClass("jet-cart-open-proccess")||n.hasClass("jet-cart-open")&amp;&amp;n.removeClass("jet-cart-open")})):n.on("mouseenter mouseleave",function(e){v(this).hasClass("jet-cart-open-proccess")||"mouseenter"!==e.type||v(this).addClass("jet-cart-open"),v(this).hasClass("jet-cart-open-proccess")||"mouseleave"!==e.type||v(this).removeClass("jet-cart-open")});break;case"click":i.on("click",function(e){e.preventDefault(),n.hasClass("jet-cart-open-proccess")||n.toggleClass("jet-cart-open")})}v(".jet-blocks-cart__close-button",n).on("click touchend",function(e){n.hasClass("jet-cart-open-proccess")||n.removeClass("jet-cart-open")})},userRegistration:function(e){var t=v(".jet-register",e),n=v(".pw-validation",t),i=v("button.jet-register__submit",e);n.length&amp;&amp;j.strongPasswordValidation(e,i),j.togglePasswordVisibility(e),w.googleRecaptcha(t)},userResetPassword:function(e){var t=v(".jet-reset",e),n=v(".jet-reset__form",e),t=v(".pw-validation",t),i=v("button.jet-reset__button",e);t.length&amp;&amp;j.strongPasswordValidation(e,i),j.togglePasswordVisibility(e),w.googleRecaptcha(n)},userLogin:function(e){e=v("#loginform",e);w.googleRecaptcha(e)},navMenu:function(r){var c,i,l,e,n,t,o,s,a,d,u,p;function h(e){var t,n=r.find(".jet-nav");"touchend"===e.type&amp;&amp;u!==v(window).scrollTop()||!v(e.target).parent().hasClass("jet-nav-arrow")&amp;&amp;v(e.target).closest(n).length||(t=v(".menu-item-has-children."+c,n))[0]&amp;&amp;(t.removeClass(c),t.addClass(i),setTimeout(function(){t.removeClass(i)},200),n.hasClass("jet-nav--vertical-sub-bottom")&amp;&amp;v(".jet-nav__sub",t).slideUp(200),e.stopPropagation())}function m(e){r.find(".jet-nav").hasClass("jet-nav--vertical-sub-bottom")&amp;&amp;h(e)}function g(e){var t=r.find(".jet-nav-wrap").data("mobile-layout"),n=r.find(".jet-nav-wrap"),i=r.find(".jet-nav__mobile-trigger"),o=r.find(".jet-nav");"left-side"!==t&amp;&amp;"right-side"!==t||"touchend"===e.type&amp;&amp;u!==v(window).scrollTop()||v(e.target).closest(i).length||v(e.target).closest(o).length||n.hasClass(l)&amp;&amp;(n.removeClass(l),e.stopPropagation())}function f(){var e,t;"full-width"===r.find(".jet-nav-wrap").data("mobile-layout")&amp;&amp;(e=r.find(".jet-nav"),t=b.getCurrentDeviceMode(),n.indexOf(t)&lt;o?p&amp;&amp;(e.css({left:""}),p=!1):(p&amp;&amp;e.css({left:""}),t=-e.offset().left,e.css({left:t}),p=!0))}r.data("initialized")||(r.data("initialized",!0),c="jet-nav-hover",i="jet-nav-hover-out",l="jet-mobile-menu-active",e=b.getCurrentDeviceMode(),n=["tablet_extra","tablet","mobile_extra","mobile"],t=v.inArray(e,["widescreen","desktop","laptop"]),d=null!=v(".jet-nav-wrap",r).data("mobile-trigger-device")?v(".jet-nav-wrap",r).data("mobile-trigger-device"):"",o=null,s=n.indexOf(e),a="ontouchend"in window?"touchend.jetNavMenu":"click.jetNavMenu",""!=d&amp;&amp;(o=n.indexOf(d)),r.find(".jet-nav:not(.jet-nav--vertical-sub-bottom)").hoverIntent({over:function(){v(this).addClass(c)},out:function(){var e=v(this);e.removeClass(c),e.addClass(i),setTimeout(function(){e.removeClass(i)},200)},timeout:200,selector:".menu-item-has-children"}),-1===t?(r.find(".jet-nav:not(.jet-nav--vertical-sub-bottom)").on("touchstart.jetNavMenu",".menu-item &gt; a",function(e){e=v(e.currentTarget).closest(".menu-item");e.data("offset",v(window).scrollTop()),e.data("elemOffset",e.offset().top)}),r.find(".jet-nav:not(.jet-nav--vertical-sub-bottom)").on("touchend.jetNavMenu",".menu-item &gt; a",function(e){var t,n,i,o,s,a;if(e.preventDefault(),e=v(e.currentTarget),e=e.closest(".menu-item"),t=e.siblings(".menu-item.menu-item-has-children"),n=v("&gt; a",e),i=v(".jet-nav__sub:first",e),o=e.data("offset"),s=e.data("elemOffset"),a=e.closest(".jet-hamburger-panel"),o!==v(window).scrollTop()||s!==e.offset().top)return!1;t[0]&amp;&amp;(t.removeClass(c),v(".menu-item-has-children",t).removeClass(c));if(!v(".jet-nav__sub",e)[0]||e.hasClass(c))return n.trigger("click"),window.location.href=n.attr("href"),r.find(".jet-nav-wrap").hasClass(l)&amp;&amp;r.find(".jet-nav-wrap").removeClass(l),a[0]&amp;&amp;a.hasClass("open-state")&amp;&amp;(a.removeClass("open-state"),v("html").removeClass("jet-hamburger-panel-visible")),!1;i[0]&amp;&amp;e.addClass(c)}),o&lt;=s&amp;&amp;v(".jet-mobile-menu.jet-nav-wrap",r).addClass("jet-mobile-menu-trigger-active"),v(document).on("touchstart.jetNavMenu",function(e){u=v(window).scrollTop()}),v(document).on("touchend.jetNavMenu",h)):r.find(".jet-nav:not(.jet-nav--vertical-sub-bottom)").on("click.jetNavMenu",".menu-item &gt; a",function(e){var e=v(e.currentTarget).closest(".menu-item"),t=e.closest(".jet-hamburger-panel");e.hasClass("menu-item-has-children")&amp;&amp;!e.hasClass(c)||t[0]&amp;&amp;t.hasClass("open-state")&amp;&amp;(t.removeClass("open-state"),v("html").removeClass("jet-hamburger-panel-visible"))}),v(window).on("resize.jetNavMenu orientationchange.jetNavMenu",w.debounce(50,function(){e=b.getCurrentDeviceMode(),s=n.indexOf(e),o&lt;=s?v(".jet-mobile-menu.jet-nav-wrap",r).addClass("jet-mobile-menu-trigger-active"):v(".jet-mobile-menu.jet-nav-wrap",r).removeClass("jet-mobile-menu-trigger-active")})),j.isEditMode()||(d=r.find('.menu-item-link[href*="#"]'))[0]&amp;&amp;d.each(function(){if(""!==this.hash&amp;&amp;location.pathname===this.pathname){var e,t=v(this),n=t[0].hash,i="current-menu-item",o="-50% 0% -50%";try{e=v(decodeURIComponent(n))}catch(e){return}e[0]&amp;&amp;(e.hasClass("elementor-menu-anchor")&amp;&amp;(o="300px 0% -300px"),new IntersectionObserver(function(e){e[0].isIntersecting?t.parent(".menu-item").addClass(i):t.parent(".menu-item").removeClass(i)},{rootMargin:o}).observe(e[0]))}}),r.find(".jet-nav--vertical-sub-bottom").on(a,".menu-item &gt; a",function(e){var t=v(e.currentTarget).closest(".menu-item"),n=t.siblings(".menu-item.menu-item-has-children"),i=v(".jet-nav__sub:first",t),o=t.closest(".jet-hamburger-panel");!t.hasClass("menu-item-has-children")||t.hasClass(c)?(r.find(".jet-nav-wrap").hasClass(l)&amp;&amp;r.find(".jet-nav-wrap").removeClass(l),o[0]&amp;&amp;o.hasClass("open-state")&amp;&amp;(o.removeClass("open-state"),v("html").removeClass("jet-hamburger-panel-visible"))):(e.preventDefault(),e.stopPropagation(),n[0]&amp;&amp;(n.removeClass(c),v(".menu-item-has-children",n).removeClass(c),v(".jet-nav__sub",n).slideUp(200)),i[0]&amp;&amp;(i.slideDown(200),t.addClass(c)))}),v(document).on(a,m),r.find(".jet-nav--vertical-sub-bottom").on("click.jetNavMenu",".menu-item",m),v(".jet-nav__mobile-trigger",r).on("click.jetNavMenu",function(e){v(this).closest(".jet-nav-wrap").toggleClass(l)}),"ontouchend"in window?v(document).on("touchend.jetMobileNavMenu",g):v(document).on("click.jetMobileNavMenu",g),v(".jet-nav__mobile-close-btn",r).on("click.jetMobileNavMenu",function(e){v(this).closest(".jet-nav-wrap").removeClass(l)}),p=!1,f(),v(window).on("resize.jetMobileNavMenu",f),j.isEditMode()&amp;&amp;r.data("initialized",!1))},searchBox:function(a){j.onSearchSectionActivated(a),v(document).on("click.jetBlocks",function(e){var t=a.find(".jet-search"),n=v(".jet-search__popup-trigger",t),i=v(".jet-search__popup-content",t),o="jet-search-popup-active",s="jet-transition-out";v(e.target).closest(n).length||v(e.target).closest(i).length||t.hasClass(o)&amp;&amp;(t.removeClass(o),t.addClass(s),setTimeout(function(){t.removeClass(s)},300),e.stopPropagation())})},onSearchSectionActivated:function(e){var t;i&amp;&amp;window.JetBlocksEditor&amp;&amp;window.JetBlocksEditor.activeSection&amp;&amp;(t=window.JetBlocksEditor.activeSection,-1!==["section_popup_style","section_popup_close_style","section_form_style"].indexOf(t)?e.find(".jet-search").addClass("jet-search-popup-active"):e.find(".jet-search").removeClass("jet-search-popup-active"))},authLinks:function(e){var t,n;i&amp;&amp;window.JetBlocksEditor&amp;&amp;(window.JetBlocksEditor.activeSection?(n=window.JetBlocksEditor.activeSection,t=-1!==["section_logout_link","section_logout_link_style"].indexOf(n),n=-1!==["section_registered_link","section_registered_link_style"].indexOf(n),(t?e.find(".jet-auth-links__login"):e.find(".jet-auth-links__logout")).css("display","none"),n?e.find(".jet-auth-links__register"):e.find(".jet-auth-links__registered")):(e.find(".jet-auth-links__logout").css("display","none"),e.find(".jet-auth-links__registered"))).css("display","none")},hamburgerPanel:function(e){var t,n,i,d=v(".jet-hamburger-panel",e),o=v(".jet-hamburger-panel__toggle",e),s=v(".jet-hamburger-panel__instance",e),a=v(".jet-hamburger-panel__cover",e),r=v(".jet-hamburger-panel__inner",e),c=v(".jet-hamburger-panel__close-button",e),l=v(".jet-hamburger-panel__content",e),u=(Boolean(b.isEditMode()),v("html")),p=d.data("settings")||{},h=e.parents(".e-container");function m(e,t=!0){t?(h.css("z-index",999),e.parent(".e-container").css("z-index",999)):!1===t&amp;&amp;(h.css("z-index",""),e.parent(".e-container").css("z-index",""))}function g(e,t){var c=e,e=c.data("template-loaded")||!1,n=c.data("template-id"),l=v(".jet-hamburger-panel-loader",c),t=t.ajaxTemplateCache;e||(v(window).trigger("jet-blocks/ajax-load-template/before",{target:d,contentHolder:c}),c.data("template-loaded",!0),v.ajax({type:"GET",url:window.JetHamburgerPanelSettings.templateApiUrl,dataType:"json",data:{id:n,dev:window.JetHamburgerPanelSettings.devMode,cachedTemplate:t},beforeSend:function(e){e.setRequestHeader("X-WP-Nonce",window.JetHamburgerPanelSettings.restNonce)},success:function(t,e,n){var i,o,s=t.template_content,a=t.template_scripts,r=t.template_styles;for(i in a)j.addedAssetsPromises.push(j.loadScriptAsync(i,a[i]));for(o in r)j.addedAssetsPromises.push(j.loadStyle(o,r[o]));Promise.all(j.addedAssetsPromises).then(function(e){l.remove(),c.append(s),j.elementorFrontendInit(c),v(window).trigger("jet-blocks/ajax-load-template/after",{target:d,contentHolder:c,responce:t})},function(e){console.log("Script Loaded Error")})}}))}"ontouchend"in window||"ontouchstart"in window?(o.on("touchstart",function(e){t=v(window).scrollTop()}),o.on("touchend",function(e){if(t!==v(window).scrollTop())return!1;n&amp;&amp;clearTimeout(n),i&amp;&amp;clearTimeout(i),d.hasClass("open-state")?(d.removeClass("open-state"),u.removeClass("jet-hamburger-panel-visible"),i=setTimeout(function(){m(v(this),!1)},400)):(n=setTimeout(function(){m(v(this)),d.addClass("open-state")},10),u.addClass("jet-hamburger-panel-visible"),j.initAnimationsHandlers(r),p.ajaxTemplate&amp;&amp;g(l,p))})):(o.on("click",function(e){n&amp;&amp;clearTimeout(n),d.hasClass("open-state")?(d.removeClass("open-state"),u.removeClass("jet-hamburger-panel-visible"),n=setTimeout(function(){m(v(this),!1)},400)):(m(v(this)),d.addClass("open-state"),u.addClass("jet-hamburger-panel-visible"),j.initAnimationsHandlers(r),p.ajaxTemplate&amp;&amp;g(l,p))}),o.on("keydown",function(e){"Enter"===e.key&amp;&amp;(n&amp;&amp;clearTimeout(n),d.hasClass("open-state")?(d.removeClass("open-state"),u.removeClass("jet-hamburger-panel-visible"),n=setTimeout(function(){m(v(this),!1)},400)):(m(v(this)),d.addClass("open-state"),u.addClass("jet-hamburger-panel-visible"),j.initAnimationsHandlers(r),p.ajaxTemplate&amp;&amp;g(l,p)))})),c.on("click",function(e){n&amp;&amp;clearTimeout(n),d.hasClass("open-state")?(d.removeClass("open-state"),u.removeClass("jet-hamburger-panel-visible"),n=setTimeout(function(){m(v(this),!1)},400)):(d.addClass("open-state"),u.addClass("jet-hamburger-panel-visible"),j.initAnimationsHandlers(r))}),v(document).on("click.JetHamburgerPanel",function(e){(!v(e.target).closest(o).length&amp;&amp;!v(e.target).closest(s).length||v(e.target).closest(a).length)&amp;&amp;d.hasClass("open-state")&amp;&amp;(d.removeClass("open-state"),v(e.target).closest(".jet-hamburger-panel__toggle").length||u.removeClass("jet-hamburger-panel-visible"),e.stopPropagation())})},loadStyle:function(i,o){return j.addedStyles.hasOwnProperty(i)&amp;&amp;j.addedStyles[i]===o?i:o?(j.addedStyles[i]=o,new Promise(function(e,t){var n=document.createElement("link");n.id=i,n.rel="stylesheet",n.href=o,n.type="text/css",n.media="all",n.onload=function(){e(i)},document.head.appendChild(n)})):void 0},loadScriptAsync:function(i,o){return j.addedScripts.hasOwnProperty(i)?i:o?(j.addedScripts[i]=o,new Promise(function(e,t){var n=document.createElement("script");n.src=o,n.async=!0,n.onload=function(){e(i)},document.head.appendChild(n)})):void 0},initAnimationsHandlers:function(e){e.find("[data-element_type]").each(function(){var e=v(this);e.data("element_type")&amp;&amp;window.elementorFrontend.hooks.doAction("frontend/element_ready/global",e,v)})},searchPopupSwitch:function(e){var t=v(this).closest(".jet-search"),n=v(".jet-search__field",t),i="jet-search-popup-active",o="jet-transition-in",s="jet-transition-out";t.hasClass(i)?(t.removeClass(i),t.addClass(s),setTimeout(function(){t.removeClass(s)},300)):(t.addClass(o),setTimeout(function(){t.removeClass(o),t.addClass(i)},300),n.focus())},stickySection:function(){({isEditMode:Boolean(b.isEditMode()),correctionSelector:v("#wpadminbar"),initWidescreen:!1,initDesktop:!1,initLaptop:!1,initTabletExtra:!1,initTablet:!1,initMobileExtra:!1,initMobile:!1,init:function(){var e=this;this.isEditMode||(v(document).ready(function(){e.run()}),v(window).on("resize.JetStickySection orientationchange.JetStickySection",this.run.bind(this)))},getOffset:function(){var e=0;return e=this.correctionSelector[0]&amp;&amp;"fixed"===this.correctionSelector.css("position")?this.correctionSelector.outerHeight(!0):e},run:function(){var e=b.getCurrentDeviceMode(),i="jet-sticky-transition-in",o="jet-sticky-transition-out",s={stickyClass:"jet-sticky-section--stuck",topSpacing:this.getOffset()};function t(e,t){t.initWidescreen&amp;&amp;"widescreen"!==e&amp;&amp;(j.getStickySectionsWidescreen.forEach(function(e,t){e.trigger("jetStickySection:detach")}),t.initWidescreen=!1),t.initDesktop&amp;&amp;"desktop"!==e&amp;&amp;(j.getStickySectionsDesktop.forEach(function(e,t){e.trigger("jetStickySection:detach")}),t.initDesktop=!1),t.initLaptop&amp;&amp;"laptop"!==e&amp;&amp;(j.getStickySectionsLaptop.forEach(function(e,t){e.trigger("jetStickySection:detach")}),t.initLaptop=!1),t.initTabletExtra&amp;&amp;"tablet_extra"!==e&amp;&amp;(j.getStickySectionsTabletExtra.forEach(function(e,t){e.trigger("jetStickySection:detach")}),t.initTabletExtra=!1),t.initTablet&amp;&amp;"tablet"!==e&amp;&amp;(j.getStickySectionsTablet.forEach(function(e,t){e.trigger("jetStickySection:detach")}),t.initTablet=!1),t.initMobiletExtra&amp;&amp;"mobile_extra"!==e&amp;&amp;(j.getStickySectionsMobiletExtra.forEach(function(e,t){e.trigger("jetStickySection:detach")}),t.initMobiletExtra=!1),t.initMobile&amp;&amp;"mobile"!==e&amp;&amp;(j.getStickySectionsMobile.forEach(function(e,t){e.trigger("jetStickySection:detach")}),t.initMobile=!1)}function n(n){n.forEach(function(e,t){n[t+1]?s.stopper=n[t+1]:s.stopper="",(t=e).jetStickySection(s).on("jetStickySection:stick",function(e){v(e.target).addClass(i),setTimeout(function(){v(e.target).removeClass(i)},3e3)}).on("jetStickySection:unstick",function(e){v(e.target).addClass(o),setTimeout(function(){v(e.target).removeClass(o)},3e3)}),t.trigger("jetStickySection:activated")})}"widescreen"!==e||this.initWidescreen||(t(e,this),j.getStickySectionsWidescreen[0]&amp;&amp;(n(j.getStickySectionsWidescreen),this.initWidescreen=!0)),"desktop"!==e||this.initDesktop||(t(e,this),j.getStickySectionsDesktop[0]&amp;&amp;(n(j.getStickySectionsDesktop),this.initDesktop=!0)),"laptop"!==e||this.initLaptop||(t(e,this),j.getStickySectionsLaptop[0]&amp;&amp;(n(j.getStickySectionsLaptop),this.initLaptop=!0)),"tablet_extra"!==e||this.initTabletExtra||(t(e,this),j.getStickySectionsTabletExtra[0]&amp;&amp;(n(j.getStickySectionsTabletExtra),this.initTabletExtra=!0)),"tablet"!==e||this.initTablet||(t(e,this),j.getStickySectionsTablet[0]&amp;&amp;(n(j.getStickySectionsTablet),this.initTablet=!0)),"mobile_extra"!==e||this.initMobileExtra||(t(e,this),j.getStickySectionsMobileExtra[0]&amp;&amp;(n(j.getStickySectionsMobileExtra),this.initMobileExtra=!0)),"mobile"!==e||this.initMobile||(t(e,this),j.getStickySectionsMobile[0]&amp;&amp;(n(j.getStickySectionsMobile),this.initMobile=!0))}}).init()},getStickySectionsWidescreen:[],getStickySectionsDesktop:[],getStickySectionsLaptop:[],getStickySectionsTabletExtra:[],getStickySectionsTablet:[],getStickySectionsMobileExtra:[],getStickySectionsMobile:[],setStickySection:function(t){({target:t,isEditMode:Boolean(b.isEditMode()),init:function(){var e;this.isEditMode||"yes"===this.getSectionSetting("jet_sticky_section")&amp;&amp;(e=this.getSectionSetting("jet_sticky_section_visibility")||[])[0]&amp;&amp;(-1!==e.indexOf("widescreen")&amp;&amp;j.getStickySectionsWidescreen.push(t),-1!==e.indexOf("desktop")&amp;&amp;j.getStickySectionsDesktop.push(t),-1!==e.indexOf("laptop")&amp;&amp;j.getStickySectionsLaptop.push(t),-1!==e.indexOf("tablet_extra")&amp;&amp;j.getStickySectionsTabletExtra.push(t),-1!==e.indexOf("tablet")&amp;&amp;j.getStickySectionsTablet.push(t),-1!==e.indexOf("mobile_extra")&amp;&amp;j.getStickySectionsMobileExtra.push(t),-1!==e.indexOf("mobile"))&amp;&amp;j.getStickySectionsMobile.push(t)},getSectionSetting:function(e){var t={};if(Boolean(b.isEditMode())){if(!b.hasOwnProperty("config"))return;if(!b.config.hasOwnProperty("elements"))return;if(!b.config.elements.hasOwnProperty("data"))return;var n=this.target.data("model-cid"),n=b.config.elements.data[n];if(!n)return;if(!n.hasOwnProperty("attributes"))return;t=n.attributes||{}}else t=this.target.data("settings")||{};if(t[e])return t[e]}}).init()},isEditMode:function(){return Boolean(b.isEditMode())},elementorFrontendInit:function(e){e.find("[data-element_type]").each(function(){var t=v(this),e=t.data("element_type");if(e)try{"widget"===e&amp;&amp;(e=t.data("widget_type"),window.elementorFrontend.hooks.doAction("frontend/element_ready/widget",t,v)),window.elementorFrontend.hooks.doAction("frontend/element_ready/global",t,v),window.elementorFrontend.hooks.doAction("frontend/element_ready/"+e,t,v)}catch(e){return console.log(e),t.remove(),!1}})},togglePasswordVisibility:function(e){var t=v("input:password",e);v(".password-visibility__icon",e).on("click",function(){"password"===t.attr("type")?(t.attr("type","text"),v(".password-visibility__icon--show",e).removeClass("show"),v(".password-visibility__icon--hide",e).addClass("show")):(t.attr("type","password"),v(".password-visibility__icon--show",e).addClass("show"),v(".password-visibility__icon--hide",e).removeClass("show"))})},strongPasswordValidation:function(e,t){var o=v("input.pw-validation",e),n=v(".jet-password-requirements",e),s=v(".jet-password-requirements-length",n),a=v(".jet-password-requirements-lowercase",n),r=v(".jet-password-requirements-uppercase",n),c=v(".jet-password-requirements-number",n),l=v(".jet-password-requirements-special",n);function i(){var e,t=o.val(),n=0,i={};return 0&lt;s.length&amp;&amp;((e=8&lt;=t.length)?s.addClass("success").removeClass("error"):s.removeClass("success"),i.length=e),0&lt;a.length&amp;&amp;((e=/[a-z]/.test(t))?a.addClass("success").removeClass("error"):a.removeClass("success"),i.lowercase=e),0&lt;r.length&amp;&amp;((e=/[A-Z]/.test(t))?r.addClass("success").removeClass("error"):r.removeClass("success"),i.uppercase=e),0&lt;c.length&amp;&amp;((e=/[0-9]/.test(t))?c.addClass("success").removeClass("error"):c.removeClass("success"),i.number=e),0&lt;l.length&amp;&amp;((e=/[~`!#$%\^&amp;*+=\-\[\]\\';,/{}|\\":&lt;&gt;\?]/g.test(t))?l.addClass("success").removeClass("error"):l.removeClass("success"),i.special=e),Object.keys(i).forEach(function(e){!1===i[e]&amp;&amp;n++}),!(0&lt;n)}o.on("input",i),o.keydown(function(e){if(13==e.keyCode&amp;&amp;!1===i())return e.preventDefault(),!1}),t.on("click touchend",function(e){if(!1===i())return e.preventDefault(),n.find("li:not(.success)").each(function(){v(this).addClass("error")}),!1})}},w=(v(window).on("elementor/frontend/init",j.init),{debounce:function(t,n){var i;return function(e){i&amp;&amp;clearTimeout(i),i=setTimeout(function(){n.call(this,e),i=null},t)}},googleRecaptcha:function(t){"true"===window.jetBlocksData.recaptchaConfig.enable&amp;&amp;""!=window.jetBlocksData.recaptchaConfig.site_key&amp;&amp;""!=window.jetBlocksData.recaptchaConfig.secret_key&amp;&amp;window.grecaptcha.ready(function(){grecaptcha.execute(window.jetBlocksData.recaptchaConfig.site_key,{action:"submit"}).then(function(e){t.append('&lt;input type="hidden" name="token" value="'+e+'"&gt;'),t.append('&lt;input type="hidden" name="action" value="submit"&gt;')})})}})}(jQuery,window.elementorFrontend,window.elementor,window.JetHamburgerPanelSettings);!function(e,t){"use strict";var i={init:function(){var o={"jet-carousel.default":i.widgetCarousel,"jet-circle-progress.default":i.widgetProgress,"jet-map.default":i.widgetMap,"jet-countdown-timer.default":i.widgetCountdown,"jet-posts.default":i.widgetPosts,"jet-animated-text.default":i.widgetAnimatedText,"jet-animated-box.default":i.widgetAnimatedBox,"jet-images-layout.default":i.widgetImagesLayout,"jet-slider.default":i.widgetSlider,"jet-testimonials.default":i.widgetTestimonials,"jet-image-comparison.default":i.widgetImageComparison,"jet-instagram-gallery.default":i.widgetInstagramGallery,"jet-scroll-navigation.default":i.widgetScrollNavigation,"jet-subscribe-form.default":i.widgetSubscribeForm,"jet-progress-bar.default":i.widgetProgressBar,"jet-portfolio.default":i.widgetPortfolio,"jet-timeline.default":i.widgetTimeLine,"jet-table.default":i.widgetTable,"jet-dropbar.default":i.widgetDropbar,"jet-video.default":i.widgetVideo,"jet-audio.default":i.widgetAudio,"jet-horizontal-timeline.default":i.widgetHorizontalTimeline,"mp-timetable.default":i.widgetTimeTable,"jet-pie-chart.default":i.widgetPieChart,"jet-bar-chart.default":i.widgetBarChart,"jet-line-chart.default":i.widgetLineChart,"jet-lottie.default":i.widgetLottie,"jet-pricing-table.default":i.widgetPricingTable};e.each(o,function(e,i){t.hooks.addAction("frontend/element_ready/"+e,i)}),t.hooks.addAction("frontend/element_ready/section",i.elementorSection),t.hooks.addAction("frontend/element_ready/container",i.elementorSection),window.elementorFrontend.elements.$window.on("elementor/nested-tabs/activate",(t,o)=&gt;{const a=e(o);i.reinitSlickSlider(a),i.initWidgetsHandlers(a)})},reinitSlickSlider:function(t){var i=t.find(".slick-initialized");i.length&amp;&amp;i.each(function(){e(this).slick("unslick")})},initWidgetsHandlers:function(t){t.find(".elementor-widget-jet-slider, .elementor-widget-jet-testimonials, .elementor-widget-jet-carousel, .elementor-widget-jet-portfolio, .elementor-widget-jet-horizontal-timeline, .elementor-widget-jet-image-comparison, .elementor-widget-jet-posts, .jet-parallax-section").each(function(){var t=e(this),i=t.data("element_type");i&amp;&amp;("widget"===i&amp;&amp;(i=t.data("widget_type"),window.elementorFrontend.hooks.doAction("frontend/element_ready/widget",t,e)),window.elementorFrontend.hooks.doAction("frontend/element_ready/global",t,e),window.elementorFrontend.hooks.doAction("frontend/element_ready/"+i,t,e))})},initElementsHandlers:function(t){t.find("[data-element_type]").each(function(){var t=e(this),i=t.data("element_type");i&amp;&amp;("widget"===i&amp;&amp;(i=t.data("widget_type"),window.elementorFrontend.hooks.doAction("frontend/element_ready/widget",t,e)),window.elementorFrontend.hooks.doAction("frontend/element_ready/global",t,e),window.elementorFrontend.hooks.doAction("frontend/element_ready/"+i,t,e))})},widgetCountdown:function(t){var i,o=t.find(".jet-countdown-timer"),a=o.data("type"),n=null,s=o.data("due-date"),r=o.data("start-date"),l=o.data("expire-actions"),d=o.data("evergreen-interval"),c=o.data("restart-interval"),u={days:o.find('[data-value="days"]'),hours:o.find('[data-value="hours"]'),minutes:o.find('[data-value="minutes"]'),seconds:o.find('[data-value="seconds"]')},f=function(){if(n){var t=h(n,{days:u.days.length,hours:u.hours.length,minutes:u.minutes.length});e.each(t.parts,function(e){var t=u[e];t.length&amp;&amp;t.html(this)}),t.total&lt;=0&amp;&amp;(clearInterval(i),m())}},p=function(t){t=t.toString();var i,o="";return 1===t.length&amp;&amp;(t=0+t),i=t.match(/\d{1}/g),e.each(i,function(e,t){o+='&lt;span class="jet-countdown-timer__digit"&gt;'+t+"&lt;/span&gt;"}),o},h=function(e,t){var i=e-new Date,o=Math.floor(i/1e3%60),a=Math.floor(i/1e3/60%60),n=Math.floor(i/36e5%24),s=Math.floor(i/864e5);return(s&lt;0||n&lt;0||a&lt;0)&amp;&amp;(o=a=n=s=0),t.days||(n+=24*s,s=0),t.hours||(a+=60*n,n=0),t.minutes||(o+=60*a,a=0),{total:i,parts:{days:p(s),hours:p(n),minutes:p(a),seconds:p(o)}}},m=function(){t.trigger("jetCountdownTimerExpire",t),l&amp;&amp;e.each(l,function(e,a){switch(a){case"redirect":var s=o.data("expire-redirect-url");s&amp;&amp;(window.location.href=s);break;case"message":t.find(".jet-countdown-timer-message").show();break;case"hide":o.hide();break;case"restart":n=(n=new Date).setSeconds(n.getSeconds()+c),f(),i=setInterval(f,1e3)}})},g=function(){var e=t.data("id"),i="jet_evergreen_countdown_due_date_"+e,o="jet_evergreen_countdown_interval_"+e,a=localStorage.getItem(i),n=localStorage.getItem(o),s=function(){var e=new Date,t=e.setSeconds(e.getSeconds()+d);return localStorage.setItem(i,t),localStorage.setItem(o,d),t};return null===a&amp;&amp;null===n?s():null!==a&amp;&amp;d!==parseInt(n,10)?s():a&gt;0&amp;&amp;parseInt(n,10)===d?a:void 0};!function(){switch(a){case"due_date":n=new Date(1e3*s);break;case"evergreen":d&gt;0&amp;&amp;(n=g());break;case"endless":var e=new Date,t=Math.abs(e.getTimezoneOffset()),o=new Date(1e3*r),l=Math.abs(o.getTimezoneOffset())-t;e&gt;o&amp;&amp;(n=new Date(1e3*(r+c))),n&amp;&amp;e&gt;n&amp;&amp;(n=n.setSeconds(n.getSeconds()+(Math.floor((e-n)/(1e3*c))+1)*c)),0!=l&amp;&amp;(n-=60*l*1e3)}f(),i=setInterval(f,1e3)}()},widgetMap:function(t){var i,o,a,n,s=t.find(".jet-map"),r=0,l=[];function d(e,t=","){return e.split(t).reduce(function(e,t){var i=t.split("|"),o=i[0].toLowerCase();if(new RegExp(/[-_a-z0-9]+/).test(o)&amp;&amp;"href"!==o&amp;&amp;"on"!==o.substring(0,2))return e+o+'="'+(void 0!==i[1]?i[1].trim():"")+'" '},"")}window.google&amp;&amp;s.length&amp;&amp;(o=s.data("init"),a=s.data("pins"),!0===(n=o.pinsAutoClose)&amp;&amp;(r=1),i=new google.maps.Map(s[0],o),a&amp;&amp;e.each(a,function(t,o){var a,s,c={position:o.position,map:i,title:o.address};if(""!==o.image)if(void 0!==o.image_width&amp;&amp;void 0!==o.image_height){var u={url:o.image,scaledSize:new google.maps.Size(o.image_width,o.image_height),origin:new google.maps.Point(0,0),anchor:new google.maps.Point(o.image_width/2,o.image_height/2)};c.icon=u}else c.icon=o.image;if(a=new google.maps.Marker(c),""!==o.desc||void 0!==o.link_title){var f;if(void 0!==o.link_title)f='&lt;div class="jet-map-pin__wrapper"&gt;&lt;a class="jet-map-pin__link" href="'+o.link.url+'" '+("on"===o.link.is_external?'target="_blank"':"")+("on"===o.link.nofollow?'rel="nofollow"':"")+(void 0!==d(o.link.custom_attributes)?d(o.link.custom_attributes):"")+"&gt;"+o.link_title+"&lt;/a&gt;&lt;/div&gt;",o.desc+=f;s=new google.maps.InfoWindow({content:o.desc,disableAutoPan:!0}),l[t]=s}a.addListener("click",function(){s.setOptions({disableAutoPan:!1}),!0===n&amp;&amp;e.each(l,function(e,t){t.close()}),s.open(i,a)}),1===r?"visible"===o.state&amp;&amp;""!==o.desc&amp;&amp;(s.open(i,a),r++):0===r&amp;&amp;"visible"===o.state&amp;&amp;""!==o.desc&amp;&amp;s.open(i,a)}))},prepareWaypointOptions:function(e,t){var i=t||{},o=e.closest(".jet-popup__container-inner, .elementor-popup-modal .dialog-message");return o[0]&amp;&amp;(i.context=o[0]),i},widgetProgress:function(a){var n=a.find(".circle-progress");if(n.length){var s=n.find(".circle-progress__value"),r=n.find(".circle-progress__meter"),l=parseInt(s.data("value"))/100,d=a.find(".circle-progress-wrap").data("duration"),c=elementorFrontend.getCurrentDeviceMode(),u=!1,f=o.getElementorElementSettings(a),p=[],h=t.config.responsive.activeBreakpoints;p.desktop=[],m("desktop",f.circle_size.size?f.circle_size.size:n[0].getAttribute("width"),f.value_stroke.size?f.value_stroke.size:n[0].getElementsByClassName("circle-progress__value")[0].getAttribute("stroke-width"),f.bg_stroke.size?f.bg_stroke.size:n[0].getElementsByClassName("circle-progress__meter")[0].getAttribute("stroke-width")),Object.keys(h).reverse().forEach(function(e,t){if("widescreen"===e){var i=f["circle_size_"+e].size?f["circle_size_"+e].size:f.circle_size.size,o=f["value_stroke_"+e].size?f["value_stroke_"+e].size:f.value_stroke.size,a=f["bg_stroke_"+e].size?f["bg_stroke_"+e].size:f.bg_stroke.size;p[e]=[],m(e,i,o,a)}else{i=f["circle_size_"+e].size?f["circle_size_"+e].size:n[0].getAttribute("width"),o=f["value_stroke_"+e].size?f["value_stroke_"+e].size:n[0].getElementsByClassName("circle-progress__value")[0].getAttribute("stroke-width"),a=f["bg_stroke_"+e].size?f["bg_stroke_"+e].size:n[0].getElementsByClassName("circle-progress__meter")[0].getAttribute("stroke-width");p[e]=[],m(e,i,o,a)}}),g(p[c].size,p[c].viewBox,p[c].center,p[c].radius,p[c].valStroke,p[c].bgStroke,p[c].circumference),elementorFrontend.waypoint(a,function(){var e=a.find(".circle-counter__number"),t=e.data(),i=t.toValue.toString().match(/\.(.*)/);i&amp;&amp;(t.rounding=i[1].length),t.duration=d,e.numerator(t);var o=parseInt(n.data("circumference"))*(1-l);s.css({transitionDuration:d+"ms",strokeDashoffset:o}),u=!0},i.prepareWaypointOptions(a,{offset:"bottom-in-view"})),e(window).on("resize.jetCircleProgress orientationchange.jetCircleProgress",o.debounce(50,function(){c=elementorFrontend.getCurrentDeviceMode(),p[c]&amp;&amp;g(p[c].size,p[c].viewBox,p[c].center,p[c].radius,p[c].valStroke,p[c].bgStroke,p[c].circumference)}))}function m(e,t,i,o){var a,n;p[e].size=t,p[e].viewBox=`0 0 ${t} ${t}`,p[e].center=t/2,n=t/2,a=i&gt;=o?i:o,p[e].radius=n-a/2,p[e].circumference=2*Math.PI*p[e].radius,p[e].valStroke=i,p[e].bgStroke=o}function g(e,t,i,o,a,d,c){var f=c*(1-l);n.attr({width:e,height:e,"data-radius":o,"data-circumference":c}),n[0].setAttribute("viewBox",t),r.attr({cx:i,cy:i,r:o,"stroke-width":d}),u&amp;&amp;s.css({transitionDuration:""}),s.attr({cx:i,cy:i,r:o,"stroke-width":a}),s.css({strokeDasharray:c,strokeDashoffset:u?f:c})}},widgetCarousel:function(e){var t=e.find(".jet-carousel"),o=t.find(".jet-carousel__fraction-navigation");t.length&amp;&amp;(!0===t.data("slider_options").fractionNav&amp;&amp;t.find(".elementor-slick-slider").on("init reInit afterChange",function(e,t,i,a){var n=(i||0)+1;o.html('&lt;span class="current"&gt;'+n+'&lt;/span&gt;&lt;span class="separator"&gt;/&lt;/span&gt;&lt;span class="total"&gt;'+t.slideCount+"&lt;/span&gt;")}),i.initCarousel(t.find(".elementor-slick-slider"),t.data("slider_options")))},widgetPosts:function(e){var t=e.find(".jet-carousel"),o=t.data("slider_options");t.length&amp;&amp;(o.slide=".jet-posts__item",i.initCarousel(t.find(".jet-posts"),o))},widgetAnimatedText:function(e){var t,i=e.find(".jet-animated-text");i.length&amp;&amp;(t=i.data("settings"),new jetAnimatedText(i,t).init())},widgetAnimatedBox:function(o){i.onAnimatedBoxSectionActivated(o);var a,n,s=o.find(".jet-animated-box"),r=s.data("settings"),l=(r=e.extend({},{widgetId:null,switchEventType:"hover",paperFoldDirection:"left",slideOutDirection:"left",peelCornerPosition:"right"},r),e(window).scrollTop()),d=!0,c=Boolean(t.isEditMode()),u=e(".jet-animated-box__button--back",o);if(s.length)switch(r.switchEventType){case"hover":c?f():"ontouchend"in window||"ontouchstart"in window?(s.on("touchstart",function(t){l=e(window).scrollTop()}),s.on("touchend",function(t){if(l!==e(window).scrollTop())return!1;var i=e(this);i.hasClass("flipped-stop")||(setTimeout(function(){i.toggleClass("flipped")},10),i.find(u).on("focus",function(){s.hasClass("flipped-stop")||s.addClass("flipped")}),i.find(u).on("focusout",function(){s.removeClass("flipped")}))}),e(document).on("touchend",function(t){e(t.target).closest(s).length||s.hasClass("flipped-stop")||s.hasClass("flipped")&amp;&amp;s.removeClass("flipped")})):(s.on("mouseenter mouseleave",function(t){d&amp;&amp;"mouseleave"===t.type?e(this).hasClass("flipped-stop")||e(this).removeClass("flipped"):d&amp;&amp;"mouseenter"===t.type&amp;&amp;(e(this).hasClass("flipped-stop")||e(this).addClass("flipped"))}),u.on("focus",function(){s.hasClass("flipped-stop")||s.addClass("flipped")}),u.on("focusout",function(){s.removeClass("flipped")}));break;case"click":f();break;case"toggle":!function(){"ontouchend"in window||"ontouchstart"in window?s.on("touchstart",".jet-animated-box__toggle",function(e){s.hasClass("flipped-stop")||s.toggleClass("flipped")}):s.on("click",".jet-animated-box__toggle",function(e){s.hasClass("flipped-stop")||s.toggleClass("flipped")});u.on("focus",function(){s.hasClass("flipped-stop")||s.addClass("flipped")}),u.on("focusout",function(){s.removeClass("flipped")})}();break;case"scratch":!function(){var t=document.querySelector("#jet-animated-box-"+r.widgetId).getBoundingClientRect().top;if(c)return!1;var i=e(window).width();e("html, body").scrollTop(0),html2canvas(document.querySelector("#jet-animated-box__front-"+r.widgetId),{allowTaint:!0,backgroundColor:null,windowWidth:e(window).width(),windowHeight:e(window).height(),scrollX:0,scrollY:-window.scrollY}).then(function(o){o.setAttribute("id","jet-animated-box-canvas-"+r.widgetId),s.prepend(o),e(".jet-animated-box__front",s).fadeOut(300,function(){e(this).remove()}),e(window).one("resize.jetScratch",function(t){e(window).width()!==i&amp;&amp;(i=e(window).width(),e(o).fadeOut(250,function(){e(this).remove()}))});new jetScratchEffect("#jet-animated-box-"+r.widgetId,"#jet-animated-box-canvas-"+r.widgetId,function(){e(o).fadeOut(300,function(){e(this).remove(),s.removeClass("back-events-inactive")})},r.scratchFillPercent,t)})}();break;case"fold":!function(){if(c)return s.addClass("fold-init"),!1;var t=null,i="#jet-animated-box__front-"+r.widgetId;t=new OriDomi(document.querySelector(i),{vPanels:5,hPanels:5,speed:500,ripple:!0,shadingIntensity:.9,perspective:1e3,shading:!1,gapNudge:0,touchSensitivity:.25,touchMoveCallback:function(t,o){89.5&lt;t&amp;&amp;e(i).remove()}}).accordion(0,r.paperFoldDirection),s.addClass("fold-init"),u.on("focus",function(){t.foldUp()}),u.on("focusout",function(){t.accordion(0,r.paperFoldDirection)})}();break;case"peel":!function(t){if(c)return s.addClass("peel-ready"),!1;var i=e(".jet-animated-box__front",s).clone();e(".jet-animated-box__front",s).addClass("peel-top"),i.removeAttr("id"),i.addClass("peel-back"),i.insertAfter("#jet-animated-box__front-"+r.widgetId),e(".jet-animated-box__back",s).addClass("peel-bottom");var o=s.width();s.height();if("left"===t){var a=new Peel("#jet-animated-box-"+r.widgetId,{corner:Peel.Corners.TOP_LEFT});a.setPeelPosition(30,40)}else{var a=new Peel("#jet-animated-box-"+r.widgetId,{corner:Peel.Corners.TOP_RIGHT});a.setPeelPosition(o-30,40)}a.setFadeThreshold(.8),u.on("focus",function(){a.removeEvents(),e(".peel-top, .peel-back, .peel-bottom-shadow",s).remove()}),a.handleDrag(function(t,i,o){var n=s.offset(),r=n.left,l=n.top,d=i-r,c=o-l;d=d&lt;0?d*=3:d,c=c&lt;0?c*=3:c,.98&lt;this.getAmountClipped()&amp;&amp;(this.removeEvents(),e(".peel-top, .peel-back, .peel-bottom-shadow",s).remove()),a.setPeelPosition(Math.round(d),Math.round(c))})}(r.peelCornerPosition);break;case"slide-out":a=e(".jet-animated-box__front",s),e(".jet-animated-box__back",s),s.width(),s.height(),n="left"===r.slideOutDirection||"right"===r.slideOutDirection?"x":"y",a.draggable({axis:n,drag:function(e,t){var i=t.position;switch(r.slideOutDirection){case"left":i.left&gt;=0&amp;&amp;(t.position.left=0);break;case"right":i.left&lt;=0&amp;&amp;(t.position.left=0);break;case"top":i.top&gt;=0&amp;&amp;(t.position.top=0);break;case"bottom":i.top&lt;=0&amp;&amp;(t.position.top=0)}}}),u.on("focus",function(){a.draggable("disable"),a.hide()})}function f(){"ontouchend"in window||"ontouchstart"in window?(s.on("touchstart",function(t){l=e(window).scrollTop()}),s.on("touchend",function(t){if(l!==e(window).scrollTop())return!1;var i=e(this);i.hasClass("flipped-stop")||setTimeout(function(){i.toggleClass("flipped")},10)}),e(document).on("touchend",function(t){e(t.target).closest(s).length||s.hasClass("flipped-stop")||s.hasClass("flipped")&amp;&amp;s.removeClass("flipped")})):(s.on("click",function(e){s.hasClass("flipped-stop")||s.toggleClass("flipped")}),u.on("focus",function(){s.hasClass("flipped-stop")||s.addClass("flipped")}),u.on("focusout",function(){s.removeClass("flipped")}))}},onAnimatedBoxSectionActivated:function(e){if(window.elementor&amp;&amp;window.JetElementsEditor&amp;&amp;window.JetElementsEditor.activeSection){var t=window.JetElementsEditor.activeSection;-1!==["section_back_content","section_action_button_style"].indexOf(t)?(e.find(".jet-animated-box").addClass("flipped"),e.find(".jet-animated-box").addClass("flipped-stop")):(e.find(".jet-animated-box").removeClass("flipped"),e.find(".jet-animated-box").removeClass("flipped-stop"))}},widgetImagesLayout:function(e){var t,i=e.find(".jet-images-layout");i.length&amp;&amp;(t=i.data("settings"),new jetImagesLayout(i,t).init())},widgetPortfolio:function(t){var i=t.find(".jet-portfolio"),a=o.getElementorElementSettings(t),n={id:t.data("id")};i.length&amp;&amp;(n=e.extend({},n,i.data("settings"),a),new jetPortfolio(i,n).init())},widgetInstagramGallery:function(t){var i,o,a=t.find(".jet-instagram-gallery__instance");a.length&amp;&amp;(o=a.data("settings"),i={layoutType:"masonry"},e.extend(i,o),"masonry"===o.layoutType&amp;&amp;(salvattore.init(),e(window).on("resize orientationchange",function(){salvattore.rescanMediaQueries()})))},widgetScrollNavigation:function(e){var t=e.find(".jet-scroll-navigation"),i=t.data("settings");new jetScrollNavigation(e,t,i).init()},widgetSubscribeForm:function(t){var i=t.find(".jet-subscribe-form"),a=t.data("id"),n=i.data("settings"),s=null,r="jet_subscribe_form_ajax",l=!1,d=e(".jet-subscribe-form__form",i),c=(e(".jet-subscribe-form__fields",i),e(".jet-subscribe-form__mail-field",i)),u=c.data("instance-data"),f=e(".jet-subscribe-form__submit",i),p=e(".jet-subscribe-form__message",i),h=window.jetElements.messages.invalidMail||"Please specify a valid email";function m(){var t=c.val(),m={email:t,use_target_list_id:n.use_target_list_id||!1,target_list_id:n.target_list_id||"",data:u},g=d.serializeArray(),v={};o.validateEmail(t)?(e.each(g,function(e,t){"email"===t.name?m[t.name]=t.value:v[t.name]=t.value}),m.additional=v,!l&amp;&amp;s&amp;&amp;s.abort(),s=e.ajax({type:"POST",url:window.jetElements.ajaxUrl,data:{action:r,data:m},cache:!1,beforeSend:function(){f.addClass("loading"),l=!1},success:function(t){var o=t.type,s=t.message||"",r="jet-subscribe-form--response-"+o;f.removeClass("loading"),l=!0,i.removeClass("jet-subscribe-form--response-error"),i.addClass(r),e("span",p).html(s),p.css({visibility:"visible"}),setTimeout(function(){p.css({visibility:"hidden"}),i.removeClass(r)},2e4),n.redirect&amp;&amp;(window.location.href=n.redirect_url),e(window).trigger({type:"jet-elements/subscribe",elementId:a,successType:o,inputData:u})}})):(c.addClass("mail-invalid"),i.addClass("jet-subscribe-form--response-error"),e("span",p).html(h),p.css({visibility:"visible"}),setTimeout(function(){i.removeClass("jet-subscribe-form--response-error"),p.css({visibility:"hidden"}),c.removeClass("mail-invalid")},2e4))}c.on("focus",function(){c.removeClass("mail-invalid")}),e(document).keydown(function(e){if(13===e.keyCode&amp;&amp;c.is(":focus"))return m(),!1}),f.on("click",function(){return m(),!1})},widgetProgressBar:function(t){var o=t.find(".jet-progress-bar"),a=o.data("percent"),n=o.data("type");elementorFrontend.waypoint(o,function(t){var i=e(this),s={charged:0},r=e(".jet-progress-bar__status-bar",i),l=e(".jet-progress-bar__percent-value",i),d=o.data("current-value"),c=o.data("max-value");if(d&amp;&amp;c){if(d&gt;c)return;s={Counter:0}}"type-7"==n?r.css({height:a+"%"}):r.css({width:a+"%"}),anime({targets:s,charged:a,round:1,duration:1e3,easing:"easeInOutQuad",begin:function(){d&amp;&amp;c&amp;&amp;e({Counter:0}).animate({Counter:d},{duration:1e3,easing:"swing",step:function(){l.text(Math.ceil(this.Counter)+"/"+c)}})},update:function(){l.html(s.charged)}})},i.prepareWaypointOptions(t))},widgetSlider:function(i){var a,n,s,r=i.find(".jet-slider"),l=(e(".sp-image",r),e(".jet-slider__item",r)),d="",c="",u=r.data("settings")||{},f=o.getElementorElementSettings(i),p={},h=t.config.responsive.activeBreakpoints,m=e.extend({},{imageScaleMode:"cover",slideDistance:{size:10,unit:"px"},slideDuration:500,sliderAutoplay:!0,sliderAutoplayDelay:2e3,sliderAutoplayOnHover:"pause",sliderFadeMode:!1,sliderFullScreen:!0,sliderFullscreenIcon:"",sliderHeight:{size:600,unit:"px"},sliderLoop:!0,sliderNaviOnHover:!1,sliderNavigation:!0,sliderNavigationIcon:"",sliderPagination:!1,sliderShuffle:!1,sliderWidth:{size:100,unit:"%"},thumbnailWidth:120,thumbnailHeight:80,thumbnails:!0,rightToLeft:!1},u),g=r.find(".jet-slider__fraction-pagination"),v=Boolean(t.isEditMode());if(r.length){l.each(function(){var i=e(this).find(".jet-slider__content");if(i.data("slide-url")&amp;&amp;!t.isEditMode()){let e,t;i.on("mousedown touchstart",function(e){window.XPos=e.pageX||e.originalEvent.changedTouches[0].pageX,window.YPos=e.pageY||e.originalEvent.changedTouches[0].pageY}),i.on("mouseup touchend",function(o){if(d=i.data("slide-url"),c=i.data("slide-url-target"),e=o.pageX||o.originalEvent.changedTouches[0].pageX,t=o.pageY||o.originalEvent.changedTouches[0].pageY,window.XPos===e&amp;&amp;window.YPos===t){if("_blank"===c)return void window.open(d);window.location=d}})}}),a=f.slider_height&amp;&amp;"custom"===f.slider_height.unit?f.slider_height.size:""!=f.slider_height.size?f.slider_height.size+f.slider_height.unit:"600px",n="thumbnail_height"in f&amp;&amp;""!=f.thumbnail_height?f.thumbnail_height:80,s="thumbnail_width"in f&amp;&amp;""!=f.thumbnail_width?f.thumbnail_width:120;var w=e(window).height(),_=e(document).height(),b=v&amp;&amp;w&lt;_?18:1;Object.keys(h).forEach(function(e){if("widescreen"===e){var t=h[e].value-b,i=f["slider_height_"+e]&amp;&amp;"custom"===f["slider_height_"+e].unit?f.slider_height.size:""!=f["slider_height_"+e].size?f["slider_height_"+e].size+f["slider_height_"+e].unit:a,o=""!=f["thumbnail_height_"+e]?f["thumbnail_height_"+e]:n,r=""!=f["thumbnail_width_"+e]?f["thumbnail_width_"+e]:s,l=""!=f.slider_height.size?f.slider_height.size+f.slider_height.unit:m.sliderHeight.size+m.sliderHeight.unit,d=""!=f.thumbnail_height?f.thumbnail_height:m.thumbnailHeight,c=""!=f.thumbnail_width?f.thumbnail_width:m.thumbnailWidth;if(!(i||o||r))return;p[t]={},i&amp;&amp;(a=i,p[t].height=l),o&amp;&amp;(n=o,p[t].thumbnailHeight=d),r&amp;&amp;(s=r,p[t].thumbnailWidth=c)}else{t=h[e].value-b,o=!!f["thumbnail_height_"+e]&amp;&amp;f["thumbnail_height_"+e],r=!!f["thumbnail_width_"+e]&amp;&amp;f["thumbnail_width_"+e];if(!((i="custom"===f["slider_height_"+e].unit?f["slider_height_"+e].size:""!=f["slider_height_"+e].size&amp;&amp;f["slider_height_"+e].size+f["slider_height_"+e].unit)||o||r))return;p[t]={},i&amp;&amp;(p[t].height=i),o&amp;&amp;(p[t].thumbnailHeight=o),r&amp;&amp;(p[t].thumbnailWidth=r)}}),e(".slider-pro",r).sliderPro({width:m.sliderWidth.size+m.sliderWidth.unit,height:a,arrows:m.sliderNavigation,fadeArrows:m.sliderNaviOnHover,buttons:m.sliderPagination,autoplay:m.sliderAutoplay,autoplayDelay:m.sliderAutoplayDelay,autoplayOnHover:m.sliderAutoplayOnHover,fullScreen:m.sliderFullScreen,shuffle:m.sliderShuffle,loop:m.sliderLoop,fade:m.sliderFadeMode,slideDistance:"string"!=typeof m.slideDistance.size?m.slideDistance.size:0,slideAnimationDuration:+m.slideDuration,imageScaleMode:"exact",waitForLayers:!1,grabCursor:!1,thumbnailWidth:s,thumbnailHeight:n,rightToLeft:m.rightToLeft,touchSwipe:m.touchswipe,init:function(){var t=e("."+m.sliderFullscreenIcon).html(),i=e("."+m.sliderNavigationIcon).html();e(".sp-full-screen-button",r).html(t),e(".sp-previous-arrow",r).html(i),e(".sp-next-arrow",r).html(i),e(".slider-pro",r).addClass("slider-loaded"),this.resize()},gotoSlideComplete:function(){if(!0===m.fractionPag){var e=(this.getSelectedSlide()?this.getSelectedSlide():0)+1;g.html('&lt;span class="current"&gt;'+e+'&lt;/span&gt;&lt;span class="separator"&gt;/&lt;/span&gt;&lt;span class="total"&gt;'+this.getTotalSlides()+"&lt;/span&gt;")}elementorFrontend.elements.$window.trigger("elementor/bg-video/recalc")},update:function(){if(!0===m.fractionPag){var e=(this.getSelectedSlide()?this.getSelectedSlide():0)+1;g.html('&lt;span class="current"&gt;'+e+'&lt;/span&gt;&lt;span class="separator"&gt;/&lt;/span&gt;&lt;span class="total"&gt;'+this.getTotalSlides()+"&lt;/span&gt;")}},breakpoints:p}),e(".slider-pro",r).on("gotoSlide",function(){r.find("[data-element_type]").each(function(){window.elementorFrontend.hooks.doAction("frontend/element_ready/global",e(this),e)})})}},widgetTestimonials:function(t){var o=t.find(".jet-testimonials__instance"),a=(e(".jet-testimonials__figure",o),e(".jet-testimonials__content",o)),n=o.data("settings");o.data("rating-settings");o.length&amp;&amp;(a.each(function(){var t=e(".jet-testimonials__rating",this);if(t){var i=t.data("rating");t.each(function(){e("i",this).each(function(t){if(t&lt;=i-1){var o=e(this).data("active-star");e(this).addClass(o)}else{o=e(this).data("star");e(this).addClass(o)}})})}}),n.adaptiveHeight=n.adaptiveHeight,n.slide=".jet-testimonials__item",i.initCarousel(o,n))},widgetImageComparison:function(t){var o=t.find(".jet-image-comparison__instance"),a=(e(".jet-image-comparison__container",o),o.data("settings"));t.data("id");o.length&amp;&amp;(window.juxtapose.scanPage(".jet-juxtapose"),a.draggable=!1,a.infinite=!1,i.initCarousel(o,a))},widgetTimeTable:function(t){var i=t.find(".mptt-shortcode-wrapper");if("undefined"!=typeof typenow&amp;&amp;pagenow===typenow)switch(typenow){case"mp-event":Registry._get("Event").init();break;case"mp-column":Registry._get("Event").initDatePicker(),Registry._get("Event").columnRadioBox()}i.length&amp;&amp;(Registry._get("Event").initTableData(),Registry._get("Event").filterShortcodeEvents(),Registry._get("Event").getFilterByHash(),i.show()),(e(".upcoming-events-widget").length||i.length)&amp;&amp;Registry._get("Event").setColorSettings()},elementorSection:function(e){var i=e;Boolean(t.isEditMode());new jetSectionParallax(i).init()},initCarousel:function(a,n){var s,r,l,d,c,u=[],f=a.closest(".elementor-widget"),p=o.getElementorElementSettings(f),h=t.config.responsive.activeBreakpoints,m=n.dots,g=!0;if(a.hasClass("jet-image-comparison__instance")&amp;&amp;(g=!1,setTimeout(function(){a.on("beforeChange",function(){e(this).find(".slick-slide").each(function(){e(this).find(".jx-controller").attr("tabindex",""),e(this).find(".jx-label").attr("tabindex","")})}),a.on("afterChange",function(){e(this).find(".slick-slide.slick-active").each(function(){e(this).find(".jx-controller").attr("tabindex","0"),e(this).find(".jx-label").attr("tabindex",0)})})},100)),a.hasClass("jet-posts")&amp;&amp;a.parent().hasClass("jet-carousel")){p=function(e,t){const i=Object.keys(e).map(i=&gt;({[t[i]||i]:e[i]}));return Object.assign({},...i)}(p,{columns:"slides_to_show",columns_widescreen:"slides_to_show_widescreen",columns_laptop:"slides_to_show_laptop",columns_tablet_extra:"slides_to_show_tablet_extra",columns_tablet:"slides_to_show_tablet",columns_mobile_extra:"slides_to_show_mobile_extra",columns_mobile:"slides_to_show_mobile"}),c=e("&gt; div.jet-posts__item",a).length}else c=e("&gt; div",a).length;if(n.slidesToShow=+p.slides_to_show,n.slidesToScroll=p.slides_to_scroll?+p.slides_to_scroll:1,Object.keys(h).forEach(function(e){"widescreen"===e&amp;&amp;(n.slidesToShow="slides_to_show_widescreen"in p&amp;&amp;""!=p.slides_to_show_widescreen?+p.slides_to_show_widescreen:+p.slides_to_show,"slides_to_scroll_widescreen"in p&amp;&amp;""!=p.slides_to_scroll_widescreen?n.slidesToScroll=+p.slides_to_scroll_widescreen:n.slidesToShow&gt;+p.slides_to_scroll?n.slidesToScroll=+p.slides_to_scroll:n.slidesToScroll=n.slidesToShow)}),n.slidesToShow&gt;=c&amp;&amp;(n.dots=!1),l=n.slidesToShow,d=n.slidesToScroll,setTimeout(function(){e(".slick-slide",a).each(function(){null!=e(this).attr("aria-describedby")&amp;&amp;e(this).attr("id",e(this).attr("aria-describedby"))}),e(".jet-slick-dots",a).removeAttr("role"),e(".jet-slick-dots li",a).each(function(){e(this).removeAttr("role"),e(this).attr("tabindex","0")})},100),a.on("init reInit",function(){if(e(".jet-slick-dots",a).removeAttr("role"),e(".jet-slick-dots li",e(this)).each(function(){e(this).removeAttr("role"),e(this).attr("tabindex","0")}),e(".jet-slick-dots li",e(this)).keydown(function(t){var i=e(this),o=t.which||t.keyCode;13!=o&amp;&amp;32!=o||i.click(),37==o&amp;&amp;0!=i.prev().length&amp;&amp;(i.prev().focus(),i.prev().click()),39==o&amp;&amp;0!=i.next().length&amp;&amp;(i.next().focus(),i.next().click())}),e(".jet-arrow",f).attr("tabindex",0),e(".jet-arrow",f).keydown(function(t){var i=e(this),o=t.which||t.keyCode;13!=o&amp;&amp;32!=o||i.click(),37==o&amp;&amp;0!=i.prev().length&amp;&amp;i.prev().hasClass("slick-arrow")&amp;&amp;i.prev().focus(),39==o&amp;&amp;i.next().hasClass("slick-arrow")&amp;&amp;0!=i.next().length&amp;&amp;i.next().focus()}),a.hasClass("jet-image-comparison__instance")&amp;&amp;setTimeout(function(){a.find(".slick-slide.slick-active").each(function(){e(this).find(".jx-controller").attr("tabindex","0"),e(this).find(".jx-label").attr("tabindex","0")})},100),e(".slick-track",a).find(".slick-slide").each(function(){var t=e(this),i=e(".jet-carousel__item-img",t),o=new IntersectionObserver(function(t){!0===t[0].isIntersecting&amp;&amp;(i.each(function(){var t=e(this).attr("loading");void 0!==t&amp;&amp;!1!==t&amp;&amp;0===e(this).width()&amp;&amp;e(this).attr("loading","")}),o.unobserve(t[0].target))},{threshold:[0]});o.observe(t[0])}),n.infinite){var t=e(this),o=e("&gt; .slick-list &gt; .slick-track &gt; .slick-cloned.jet-carousel__item",t);if(!o.length)return;i.initElementsHandlers(o)}}),a.hasClass("slick-initialized"))a.not(".slick-initialized").slick("refresh",!0);else if(Object.keys(h).reverse().forEach(function(e){if(p["slides_to_show_"+e]||p["slides_to_scroll_"+e]){var t={breakpoint:null,settings:{}};t.breakpoint="widescreen"!=e?h[e].value:h[e].value-1,"widescreen"===e?(t.settings.slidesToShow=+p.slides_to_show,t.settings.slidesToScroll=+p.slides_to_scroll?+p.slides_to_scroll:1):(t.settings.slidesToShow=p["slides_to_show_"+e]?+p["slides_to_show_"+e]:l,t.settings.slidesToScroll=p["slides_to_scroll_"+e]?+p["slides_to_scroll_"+e]:d),t.settings.slidesToShow&gt;=c?t.settings.dots=!1:m&amp;&amp;(t.settings.dots=!0),l=t.settings.slidesToShow,d=t.settings.slidesToScroll,u.push(t)}}),n.responsive=u,n.slidesToShow&gt;=c&amp;&amp;(n.dots=!1),s={customPaging:function(t,i){return e("&lt;span /&gt;").text(i+1)},dotsClass:"jet-slick-dots",accessibility:g},r=e.extend({},s,n),a.slick(r),a.hasClass("jet-image-comparison__instance")){let e=window.juxtapose.sliders.length;for(let t=0;t&lt;e;t++)window.juxtapose.sliders[t].setWrapperDimensions()}},widgetTimeLine:function(e){var t=e.find(".jet-timeline");t.length&amp;&amp;new jetTimeLine(t).init()},widgetTable:function(t){var i=t.find(".jet-table");i.length&amp;&amp;(i.hasClass("jet-table--sorting")&amp;&amp;i.tablesorter({cssHeader:"jet-table-header-sort",cssAsc:"jet-table-header-sort--up",cssDesc:"jet-table-header-sort--down",initWidgets:!1}),e(".jet-table__body-row",i).each(function(){var t=e(this),i=0,o=0;e(".jet-table__cell",t).each(function(){var t=e("img",e(this)),a=e("svg",e(this)),n=e("i",e(this)),s=0;0===a.length&amp;&amp;0===n.length&amp;&amp;(t.each(function(){""!=e(this).attr("src")&amp;&amp;s++}),0===e(this).text().length&amp;&amp;0===s&amp;&amp;o++),i++}),o===i&amp;&amp;t.remove()}))},widgetDropbar:function(t){var i,o,a=t.find(".jet-dropbar"),n=a.find(".jet-dropbar__inner"),s=a.find(".jet-dropbar__button"),r=a.find(".jet-dropbar__content"),l=a.data("settings")||{},d=l.mode||"hover",c=+l.hide_delay||0,u="jet-dropbar-open",f=t.parents(".e-con");"click"===d?s.on("click.jetDropbar",function(e){a.toggleClass(u)}):"ontouchstart"in window||"ontouchend"in window?s.on("touchend.jetDropbar",function(t){e(window).scrollTop()===i&amp;&amp;a.toggleClass(u)}):(n.on("mouseenter.jetDropbar",function(t){clearTimeout(o),e(".jet-dropbar").each(function(){e(this).removeClass(u),e(this).parents(".e-con").css("z-index","")}),f.css("z-index",""),"auto"===f.css("z-index")&amp;&amp;f.css("z-index",1),a.addClass(u)}),n.on("mouseleave.jetDropbar",function(e){o=setTimeout(function(){a.removeClass(u)},c)})),e(document).on("touchstart.jetDropbar",function(t){i=e(window).scrollTop()}),e(document).on("click.jetDropbar touchend.jetDropbar",function(t){"touchend"===t.type&amp;&amp;e(window).scrollTop()!==i||e(t.target).closest(s).length||e(t.target).closest(r).length||a.hasClass(u)&amp;&amp;a.removeClass(u)})},widgetVideo:function(e){var t=e.find(".jet-video"),i=e.find(".jet-video-iframe"),o=e.find(".jet-video-player"),a=e.find(".jet-video-mejs-player"),n=a.data("controls")||["playpause","current","progress","duration","volume","fullscreen"],s=e.find(".jet-video__overlay"),r=e.find(".jet-video__play-button"),l=s.length&gt;0,d=t.data("settings")||{},c=(d.lightbox,d.autoplay||!1);function u(){var e=i.data("lazy-load");e&amp;&amp;i.attr("src",e),c||(i[0].src=i[0].src.replace("&amp;autoplay=0","&amp;autoplay=1")),s.remove(),l=!1}s[0]&amp;&amp;(r.keypress(function(e){if(13==e.which)return s.click(),!1}),s.on("click.jetVideo",function(e){if(o[0])return o[0].play(),s.remove(),void(l=!1);i[0]&amp;&amp;u()})),c&amp;&amp;i[0]&amp;&amp;s[0]&amp;&amp;u(),o[0]&amp;&amp;(o.on("play.jetVideo",function(e){l&amp;&amp;(s.remove(),l=!1)}),c&amp;&amp;s.remove()),a[0]&amp;&amp;a.mediaelementplayer({videoVolume:"horizontal",hideVolumeOnTouchDevices:!1,enableProgressTooltip:!1,features:n,success:function(t){t.addEventListener("timeupdate",function(t){var i=e.find(".mejs-time-current"),o=i.attr("style");if(o){var a=o.match(/scaleX\([0-9.]*\)/gi)[0].replace("scaleX(","").replace(")","");a&amp;&amp;i.css("width",100*a+"%")}},!1)}})},widgetAudio:function(e){var t,i=e.find(".jet-audio"),o=e.find(".jet-audio-player"),a=i.data("audio-settings"),n=0,s=!1;o[0]&amp;&amp;(t=a.startVolume||.8,a.controls.map(function(e){"volume"===e&amp;&amp;(s=!0)}),o.mediaelementplayer({features:a.controls||["playpause","current","progress","duration","volume"],audioVolume:a.audioVolume||"horizontal",startVolume:t,hideVolumeOnTouchDevices:a.hideVolumeOnTouchDevices,enableProgressTooltip:!1,success:function(i){var o=e.find(".mejs-button button");i.addEventListener("timeupdate",function(t){var i=e.find(".mejs-time-current"),o=i.attr("style");if(o){var a=o.match(/scaleX\([0-9.]*\)/gi)[0].replace("scaleX(","").replace(")","");a&amp;&amp;i.css("width",100*a+"%")}},!1),s&amp;&amp;"yes"===a.hasVolumeBar&amp;&amp;!a.hideVolumeOnTouchDevices?(i.setVolume(t),i.addEventListener("volumechange",function(){var s="horizontal"===a.audioVolume?e.find(".mejs-horizontal-volume-current"):e.find(".mejs-volume-current"),r="horizontal"===a.audioVolume?parseInt(s[0].style.width,10)/100:parseInt(s[0].style.height,10)/100,l="horizontal"===a.audioVolume?e.find(".mejs-horizontal-volume-total"):e.find(".mejs-volume-slider .mejs-volume-total"),d=e.find(".mejs-playpause-button"),c="";l.on("click",function(){c="horizontal"===a.audioVolume?parseInt(e.find(".mejs-horizontal-volume-total .mejs-horizontal-volume-current")[0].style.width,10)/100:parseInt(e.find(".mejs-volume-slider .mejs-volume-total .mejs-volume-current")[0].style.height,10)/100}),d.on("click",function(){""!==c&amp;&amp;i.setVolume(c)}),o.on("click",function(){i.muted||"yes"===a.muted&amp;&amp;0===n&amp;&amp;0===r&amp;&amp;(i.setVolume(t),n=1)})},!1)):s&amp;&amp;!a.hideVolumeOnTouchDevices&amp;&amp;o.on("click",function(){i.setVolume(t)})}}),o.attr("preload","metadata"))},widgetHorizontalTimeline:function(i){var a,n,s=i.find(".jet-hor-timeline"),r=i.find(".jet-hor-timeline-track"),l=i.find(".jet-hor-timeline-item"),d=i.find(".jet-arrow"),c=i.find(".jet-next-arrow"),u=i.find(".jet-prev-arrow"),f={},p={},h=!0,m=elementorFrontend.getCurrentDeviceMode(),g=m,v=s.closest(".elementor-widget"),w=o.getElementorElementSettings(v),_=t.config.responsive.activeBreakpoints,b=i.find(".jet-hor-timeline-list--middle .jet-hor-timeline-item").length,y=o.isRTL(),j=0,x=0,k={},C={};function T(){var e=i.find(".jet-hor-timeline__line"),t=i.find(".jet-hor-timeline-item__point-content:first"),o=i.find(".jet-hor-timeline-item__point-content:last"),a=t.position().left+parseInt(t.css("marginLeft")),n=o.position().left+parseInt(o.css("marginLeft")),s=t.outerWidth();e.css({left:y?n+s/2:a+s/2,width:Math.abs(n-a)})}if(f.desktop=w.columns,a=f.desktop,k.desktop=100/f.desktop,C.desktop=Math.max(0,b-f.desktop),p.desktop=+w.slides_to_scroll,n=p.desktop,Object.keys(_).reverse().forEach(function(e){"widescreen"===e?(f[e]="columns_widescreen"in w&amp;&amp;""!=w.columns_widescreen?w["columns_"+e]:f.desktop,p[e]="slides_to_scroll_widescreen"in w&amp;&amp;""!=w.slides_to_scroll_widescreen?+w["slides_to_scroll_"+e]:+p.desktop):(f[e]=""!=w["columns_"+e]&amp;&amp;null!=w["columns_"+e]?w["columns_"+e]:a,a=f[e],p[e]=""!=w["slides_to_scroll_"+e]&amp;&amp;null!=w["slides_to_scroll_"+e]?+w["slides_to_scroll_"+e]:+n,n=p[e]),k[e]=100/f[e],C[e]=Math.max(0,b-f[e])}),"ontouchstart"in window||"ontouchend"in window?l.on("touchend.jetHorTimeline",function(t){var o=e(this).data("item-id");i.find(".elementor-repeater-item-"+o).toggleClass("is-hover")}):l.on("mouseenter.jetHorTimeline mouseleave.jetHorTimeline",function(t){if(!h||"mouseleave"!==t.type){h&amp;&amp;"mouseenter"===t.type&amp;&amp;(h=!1);var o=e(this).data("item-id");i.find(".elementor-repeater-item-"+o).toggleClass("is-hover")}}),T(),e(window).on("resize.jetHorTimeline orientationchange.jetHorTimeline",o.debounce(50,T)),c[0]&amp;&amp;0===C[m]&amp;&amp;c.addClass("jet-arrow-disabled"),d[0]){var S,E=0,O=0;d.on("click.jetHorTimeline",function(t){var i=e(this),a=elementorFrontend.getCurrentDeviceMode(),n=p[a],s=i.hasClass("jet-next-arrow")?"next":"prev",l=y?1:-1;n=n&gt;f[a]?f[a]:p[a],e(window).on("resize.jetHorTimeline orientationchange.jetHorTimeline",o.debounce(50,function(){a=elementorFrontend.getCurrentDeviceMode(),n=(n=p[a])&gt;f[a]?f[a]:p[a]})),"next"===s&amp;&amp;x&lt;C[a]&amp;&amp;(x+=n)&gt;C[a]&amp;&amp;(x=C[a]),"prev"===s&amp;&amp;x&gt;0&amp;&amp;(x-=n)&lt;0&amp;&amp;(x=0),x&gt;0?u.removeClass("jet-arrow-disabled"):u.addClass("jet-arrow-disabled"),x===C[a]?c.addClass("jet-arrow-disabled"):c.removeClass("jet-arrow-disabled"),j=0===x?0:x*k[a],r.css({transform:"translateX("+l*j+"%)"})}),e(l).on("touchstart",function(e){var t=e.originalEvent.touches[0]||e.originalEvent.changedTouches[0];E=t.pageX}),e(l).on("touchend",function(e){var t=e.originalEvent.touches[0]||e.originalEvent.changedTouches[0],i=elementorFrontend.getCurrentDeviceMode(),o=p[i];if(O=t.pageX,(S=O-E)&lt;-50){var a=y?1:-1;o&gt;f[i]&amp;&amp;(o=f[i]),x&lt;C[i]&amp;&amp;(x+=o)&gt;C[i]&amp;&amp;(x=C[i]),x&gt;0?u.removeClass("jet-arrow-disabled"):u.addClass("jet-arrow-disabled"),x===C[i]?c.addClass("jet-arrow-disabled"):c.removeClass("jet-arrow-disabled"),j=0===x?0:x*k[i],r.css({transform:"translateX("+a*j+"%)"})}else if(S&gt;50){a=y?1:-1;o&gt;f[i]&amp;&amp;(o=f[i]),x&gt;0&amp;&amp;(x-=o)&lt;0&amp;&amp;(x=0),x&gt;0?u.removeClass("jet-arrow-disabled"):u.addClass("jet-arrow-disabled"),x===C[i]?c.addClass("jet-arrow-disabled"):c.removeClass("jet-arrow-disabled"),j=0===x?0:x*k[i],r.css({transform:"translateX("+a*j+"%)"})}})}function z(){if(d[0]){var e=i.find(".jet-hor-timeline-list--middle"),t=e.position().top,o=e.outerHeight();d.css({top:t+o/2})}}z(),e(window).on("resize.jetHorTimeline orientationchange.jetHorTimeline",o.debounce(150,z)),e(window).on("resize.jetHorTimeline orientationchange.jetHorTimeline",o.debounce(50,function(e){if(!s.hasClass("jet-hor-timeline--arrows-nav"))return;var t=elementorFrontend.getCurrentDeviceMode();t!=g&amp;&amp;(!function(){u.addClass("jet-arrow-disabled"),c.hasClass("jet-arrow-disabled")&amp;&amp;c.removeClass("jet-arrow-disabled");0===C[t]&amp;&amp;c.addClass("jet-arrow-disabled");j=0,x=0,r.css({transform:"translateX(0%)"})}(),g=t)}))},widgetPieChart:function(t){var o=t.find(".jet-pie-chart-container"),a=t.find(".jet-pie-chart")[0],n=o.data("chart")||{},s=o.data("options")||{},r=o.data("tooltip")||"";!0===(s=e.extend({},{maintainAspectRatio:!1},s)).tooltips.enabled&amp;&amp;(s.tooltips.callbacks={label:function(e,t){return" "+t.labels[e.index]+": "+t.datasets[e.datasetIndex].data[e.index]+r}}),elementorFrontend.waypoint(t,function(){new Chart(a,{type:"pie",data:n,options:s})},i.prepareWaypointOptions(t,{offset:"bottom-in-view"}))},widgetBarChart:function(t){var a=t.find(".jet-bar-chart-container"),n=a.find(".jet-bar-chart"),s=a.data("settings"),r=a.data("tooltip-prefix")||"",l=a.data("tooltip-suffix")||"",d=a.data("tooltip-separator")||"",c=s.type||"bar",u=a.data("axis-separator")||"",f=a.data("labels-length")||50;!0===s.options.tooltips.enabled&amp;&amp;(s.options.tooltips.callbacks={label:function(e,t){return" "+t.datasets[e.datasetIndex].label+": "+t.datasets[e.datasetIndex].data[e.index]}}),a.length&amp;&amp;(!0===s.options.tooltips.enabled&amp;&amp;(s.options.tooltips.callbacks={label:function(e,t){var i=""!=d?o.addThousandCommaSeparator(t.datasets[e.datasetIndex].data[e.index],d):t.datasets[e.datasetIndex].data[e.index];return" "+t.datasets[e.datasetIndex].label+": "+r+i+l}}),!0===u&amp;&amp;("bar"===c?s.options.scales.yAxes[0].ticks.callback=function(e,t,i){return e.toLocaleString("en-US")}:s.options.scales.xAxes[0].ticks.callback=function(e,t,i){return e.toLocaleString("en-US")}),elementorFrontend.waypoint(n,function(){var t=e(this)[0].getContext("2d"),i=[];s.data.labels.forEach(function(e){i.push(((e,t)=&gt;{let i=e.split(" "),o=[],a=[];for(let e=0;e&lt;i.length;e++){a.push(i[e]);let n=a.join(" ");n.length&gt;t&amp;&amp;(o.push(n),a=[])}return a.length&amp;&amp;o.push(a.join(" ").trim()),o})(e,f))}),s.data.labels=i;new Chart(t,s)},i.prepareWaypointOptions(t,{offset:"bottom-in-view"})))},widgetLineChart:function(t){var a=t.data("id"),n=t.find(".jet-line-chart-container"),s=n.find(".jet-line-chart"),r=n.data("compare"),l=n.data("previous-label"),d=n.data("current-label"),c=n.data("settings"),u=n.data("compare-labels-type"),f=n.data("tooltip-prefix")||"",p=n.data("tooltip-suffix")||"",h=n.data("tooltip-separator")||"";n.length&amp;&amp;elementorFrontend.waypoint(s,function(){var t=e(this)[0].getContext("2d"),i=new Chart(t,c);i.options.tooltips={enabled:!1,mode:"x-axis",intersect:!1,callbacks:{label:function(e,t){var i=t.datasets[e.datasetIndex].borderColor;if(i=i.replace(/"/g,'"'),!0===r){var a="custom"===u?d:t.labels[e.index],n=t.datasets[e.datasetIndex].label,s=""!=h?o.addThousandCommaSeparator(t.datasets[e.datasetIndex].data[e.index],h):t.datasets[e.datasetIndex].data[e.index],c='&lt;div class="jet-line-chart-tooltip-compare-current"&gt;'+a+" : "+f+s+p+"&lt;/div&gt;",m="",g=(g=t.datasets[e.datasetIndex].borderColor).replace(/"/g,'"');if(void 0!==t.labels[e.index-1]&amp;&amp;null!==t.labels[e.index-1]){var v="custom"===u?l:t.labels[e.index-1],w=""!=h?o.addThousandCommaSeparator(t.datasets[e.datasetIndex].data[e.index-1],h):t.datasets[e.datasetIndex].data[e.index-1];m='&lt;div class="jet-line-chart-tooltip-compare-previous"&gt;'+v+" : "+f+w+p+"&lt;/div&gt;"}return'&lt;div class="jet-line-chart-tooltip-title"&gt;&lt;span class="jet-line-chart-tooltip-color-box" style="background:'+g+'"&gt;&lt;/span&gt;'+n+'&lt;/div&gt;&lt;div class="jet-line-chart-tooltip-body"&gt;'+c+m+"&lt;/div&gt;"}var _=t.datasets[e.datasetIndex].label,b=""!=h?o.addThousandCommaSeparator(t.datasets[e.datasetIndex].data[e.index],h):t.datasets[e.datasetIndex].data[e.index];return'&lt;div class="jet-line-chart-tooltip-body"&gt;&lt;span class="jet-line-chart-tooltip-color-box" style="background:'+i+'"&gt;&lt;/span&gt;'+_+" : "+f+b+p+"&lt;/div&gt;"}},custom:function(e){var t=document.getElementById("chartjs-tooltip_"+a);if(t||((t=document.createElement("div")).id="chartjs-tooltip_"+a,t.innerHTML='&lt;div class="jet-line-chart-tooltip"&gt;&lt;/div&gt;',document.body.appendChild(t)),0!==e.opacity){if(t.classList.remove("above","below","no-transform"),e.yAlign?t.classList.add(e.yAlign):t.classList.add("no-transform"),e.body){e.title;var i=e.body.map(function(e){return e.lines}),o="";o+='&lt;div class="jet-line-chart-tooltip-wrapper"&gt;',i.forEach(function(e,t){o+=e}),o+="&lt;/div&gt;",t.querySelector("div").innerHTML=o}var n=this,s=this._chart.canvas.getBoundingClientRect(),r=t.offsetWidth,l=t.offsetHeight,d=0,c=0;setTimeout(function(){r=t.offsetWidth,l=t.offsetHeight,d=n._chart.width/2&gt;n._chart.tooltip._eventPosition.x?0:-r,c=n._chart.height/2&gt;n._chart.tooltip._eventPosition.y?0:-l,t.style.left=s.left+window.pageXOffset+e.caretX+d+"px",t.style.top=s.top+window.pageYOffset+e.caretY+c+"px",t.style.opacity=1},10),t.style.position="absolute",t.style.fontFamily=e._bodyFontFamily,t.style.fontSize=e.bodyFontSize+"px",t.style.fontStyle=e._bodyFontStyle,t.style.padding=e.yPadding+"px "+e.xPadding+"px",t.style.pointerEvents="none"}else t.style.opacity=0}},i.update()},i.prepareWaypointOptions(t,{offset:"bottom-in-view"}))},widgetLottie:function(t){var i,a,n=t.find(".jet-lottie"),s=n.find(".jet-lottie__elem"),r=n.data("settings");if(n[0]){i={container:s[0],renderer:r.renderer,loop:""===r.loop_times?r.loop:r.loop_times,autoplay:!1,path:r.path,name:"jet-lottie"},a=lottie.loadAnimation(i),r.play_speed&amp;&amp;a.setSpeed(r.play_speed),r.reversed&amp;&amp;a.setDirection(-1);var l=0,d=0;switch(r.viewport&amp;&amp;(l=-r.viewport.start||0,d=-(100-r.viewport.end)||0),r.action_start){case"on_hover":var c=!1,u=function(){if(c&amp;&amp;"reverse"===r.on_hover_out){var e=r.reversed?-1:1;a.setDirection(e)}a.play(),c=!0},f=function(){switch(r.on_hover_out){case"pause":a.pause();break;case"stop":a.stop();break;case"reverse":var e=r.reversed?1:-1;a.setDirection(e),a.play()}};n.off("mouseenter.JetLottie",u).on("mouseenter.JetLottie",u),n.off("mouseleave.JetLottie",f).on("mouseleave.JetLottie",f);break;case"on_click":var p=n.find(".jet-lottie__link"),h=+r.redirect_timeout,m=function(){a.play()},g=function(t){t.preventDefault(),a.play();var i=e(this).attr("href"),o="_blank"===e(this).attr("target")?"_blank":"_self";setTimeout(function(){window.open(i,o)},h)};p[0]&amp;&amp;h&gt;0?p.off("click.JetLottie",g).on("click.JetLottie",g):n.off("click.JetLottie",m).on("click.JetLottie",m);break;case"on_viewport":if(void 0!==window.IntersectionObserver)new IntersectionObserver(function(e,t){e[0].isIntersecting?a.play():a.pause()},{rootMargin:d+"% 0% "+l+"%"}).observe(n[0]);else a.play();break;case"on_scroll":if(void 0!==window.IntersectionObserver){var v,w=0;new IntersectionObserver(function(e,t){e[0].isIntersecting?v=requestAnimationFrame(function e(){if(window.scrollY!==w){var t=o.getElementPercentageSeen(s,{start:l,end:d}),i=(a.totalFrames-a.firstFrame)*t/100;a.goToAndStop(i,!0),w=window.scrollY}v=requestAnimationFrame(e)}):cancelAnimationFrame(v)},{rootMargin:d+"% 0% "+l+"%"}).observe(n[0])}break;default:var _=+r.delay;_&gt;0?setTimeout(function(){a.play()},_):a.play()}}},widgetPricingTable:function(t){var i=t.find(".pricing-table"),o=e(".pricing-feature .pricing-feature__inner[data-tippy-content]",i),a=i.data("tooltips-settings"),n=t.find(".pricing-table__fold-mask"),s=t.find(".pricing-table__fold-button"),r=n,l=(e(".pricing-table__features",n),n.data("fold-settings")||{}),d=l.fold_enabled||!1,c=0,u=0,f=l.unfoldDuration,p=l.unfoldDuration,h=l.unfoldEasing,m=l.foldEasing;function g(){u=0,t.find(".pricing-table__fold-mask .pricing-feature").each(function(){u+=e(this).outerHeight(!0)})}o[0]&amp;&amp;o.each(function(){var t=e(this)[0];t._tippy&amp;&amp;t._tippy.destroy(),tippy([t],{arrow:!!a.tooltipArrow,duration:[a.tooltipShowDuration.size,a.tooltipHideDuration.size],delay:a.tooltipDelay.size,placement:a.tooltipPlacement,trigger:a.tooltipTrigger,animation:a.tooltipAnimation,appendTo:t,offset:[0,a.tooltipDistance.size],allowHTML:!0,popperOptions:{strategy:"fixed"}})}),d&amp;&amp;(t.find(".pricing-table__fold-mask .fold_visible").each(function(){c+=e(this).outerHeight(!0)}),g(),n.hasClass("pricing-table-unfold-state")||r.css({height:c}),t.find(".pricing-table__fold-mask").css("max-height","none"),s.keypress(function(e){if(13==e.which)return s.click(),!1}),s.on("click.jetPricingTable",function(){var t=e(this),i=e(".pricing-table__fold-button-text",t),o=e(".pricing-table__fold-button-icon",t),a=t.data("unfold-text"),s=t.data("unfold-text-accessibility"),l=t.data("fold-text"),d=t.data("fold-text-accessibility"),v=t.data("unfold-icon"),w=t.data("fold-icon");n.hasClass("pricing-table-unfold-state")?(n.removeClass("pricing-table-unfold-state"),o.html(v),i.html(a),""!==l?t.attr("aria-label",a):t.attr("aria-label",s),anime({targets:r[0],height:c,duration:p.size||p,easing:m})):(n.addClass("pricing-table-unfold-state"),g(),o.html(w),i.html(l),""!==l?t.attr("aria-label",l):t.attr("aria-label",d),anime({targets:r[0],height:u,duration:f.size||f,easing:h}))}))}};e(window).on("elementor/frontend/init",i.init);var o={getElementPercentageSeen:function(t,i){var o,a=i||{},n=a.start||0,s=a.end||0,r=e(window).height(),l=r*n/100,d=r*s/100;return o=(e(window).scrollTop()+r+l-t.offset().top)/(r+l+d+t.height()),o=Math.min(100,Math.max(0,100*o)),parseFloat(o.toFixed(2))},isRTL:function(){return e("body").hasClass("rtl")},inArray:function(e,t){return-1&lt;t.indexOf(e)},debounce:function(e,t){var i;return function(o){i&amp;&amp;clearTimeout(i),i=setTimeout(function(){t.call(this,o),i=null},e)}},getObjectNextKey:function(e,t){var i=Object.keys(e),o=i.indexOf(t),a=o+=1;return!(a&gt;=i.length)&amp;&amp;i[a]},getObjectPrevKey:function(e,t){var i=Object.keys(e),o=i.indexOf(t),a=o-=1;return!(0&gt;o)&amp;&amp;i[a]},getObjectFirstKey:function(e){return Object.keys(e)[0]},getObjectLastKey:function(e){return Object.keys(e)[Object.keys(e).length-1]},getObjectValues:function(e){return Object.values?Object.values(e):Object.keys(e).map(function(t){return e[t]})},validateEmail:function(e){return/^(([^&lt;&gt;()\[\]\\.,;:\s@"]+(\.[^&lt;&gt;()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/.test(e)},mobileAndTabletcheck:function(){var e,t=!1;return e=navigator.userAgent||navigator.vendor||window.opera,(/(android|bb\d+|meego).+mobile|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\.(browser|link)|vodafone|wap|windows ce|xda|xiino|android|ipad|playbook|silk/i.test(e)||/1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s\-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|\-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw\-(n|u)|c55\/|capi|ccwa|cdm\-|cell|chtm|cldc|cmd\-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc\-s|devi|dica|dmob|do(c|p)o|ds(12|\-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(\-|_)|g1 u|g560|gene|gf\-5|g\-mo|go(\.w|od)|gr(ad|un)|haie|hcit|hd\-(m|p|t)|hei\-|hi(pt|ta)|hp( i|ip)|hs\-c|ht(c(\-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i\-(20|go|ma)|i230|iac( |\-|\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\/)|klon|kpt |kwc\-|kyo(c|k)|le(no|xi)|lg( g|\/(k|l|u)|50|54|\-[a-w])|libw|lynx|m1\-w|m3ga|m50\/|ma(te|ui|xo)|mc(01|21|ca)|m\-cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(\-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)\-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|\-([1-8]|c))|phil|pire|pl(ay|uc)|pn\-2|po(ck|rt|se)|prox|psio|pt\-g|qa\-a|qc(07|12|21|32|60|\-[2-7]|i\-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h\-|oo|p\-)|sdk\/|se(c(\-|0|1)|47|mc|nd|ri)|sgh\-|shar|sie(\-|m)|sk\-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h\-|v\-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl\-|tdg\-|tel(i|m)|tim\-|t\-mo|to(pl|sh)|ts(70|m\-|m3|m5)|tx\-9|up(\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|\-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(\-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas\-|your|zeto|zte\-/i.test(e.substr(0,4)))&amp;&amp;(t=!0),t},addThousandCommaSeparator:function(e,t){e+="",t=t.toString().replace(/[0-9]/g,"");var i=e.split("."),o=i[0],a=i.length&gt;1?"."+i[1]:"",n=/(\d+)(\d{3})/;if(""===t)return e;for(;n.test(o);)o=o.replace(n,"$1"+t+"$2");return o+a},getElementorElementSettings:function(e){return window.elementorFrontend&amp;&amp;window.elementorFrontend.isEditMode()&amp;&amp;e.hasClass("elementor-element-edit-mode")?o.getEditorElementSettings(e):e.data("settings")||{}},getEditorElementSettings:function(e){var i,o=e.data("model-cid");return o&amp;&amp;t.hasOwnProperty("config")&amp;&amp;t.config.hasOwnProperty("elements")&amp;&amp;t.config.elements.hasOwnProperty("data")&amp;&amp;(i=t.config.elements.data[o])?i.toJSON():{}}};window.jetAnimatedText=function(t,i){var o=this,a=e(".jet-animated-text__animated-text",t),n=e(".jet-animated-text__animated-text-item",a),s=null,r=(i=e.extend({effect:"fx1",delay:3e3},i||{}),0),l=i.delay;o.avaliableEffects={fx1:{in:{duration:1e3,delay:function(e,t){return 75+100*t},easing:"easeOutElastic",elasticity:650,opacity:{value:[0,1],easing:"easeOutExpo"},translateY:["100%","0%"]},out:{duration:300,delay:function(e,t){return 40*t},easing:"easeInOutExpo",opacity:0,translateY:"-100%"}},fx2:{in:{duration:800,delay:function(e,t){return 50*t},easing:"easeOutElastic",opacity:{value:[0,1],easing:"easeOutExpo"},translateY:function(e,t){return t%2==0?["-80%","0%"]:["80%","0%"]}},out:{duration:300,delay:function(e,t){return 20*t},easing:"easeOutExpo",opacity:0,translateY:function(e,t){return t%2==0?"80%":"-80%"}}},fx3:{in:{duration:700,delay:function(e,t){return 80*(e.parentNode.children.length-t-1)},easing:"easeOutElastic",opacity:{value:[0,1],easing:"easeOutExpo"},translateY:function(e,t){return t%2==0?["-80%","0%"]:["80%","0%"]},rotateZ:[90,0]},out:{duration:300,delay:function(e,t){return 50*(e.parentNode.children.length-t-1)},easing:"easeOutExpo",opacity:0,translateY:function(e,t){return t%2==0?"80%":"-80%"},rotateZ:function(e,t){return t%2==0?-25:25}}},fx4:{in:{duration:700,delay:function(e,t){return 550+50*t},easing:"easeOutQuint",opacity:{value:[0,1],easing:"easeOutExpo"},translateY:["-150%","0%"],rotateY:[180,0]},out:{duration:200,delay:function(e,t){return 30*t},easing:"easeInQuint",opacity:{value:0,easing:"linear"},translateY:"100%",rotateY:-180}},fx5:{in:{duration:250,delay:function(e,t){return 200+25*t},easing:"easeOutCubic",opacity:{value:[0,1],easing:"easeOutExpo"},translateY:["-50%","0%"]},out:{duration:250,delay:function(e,t){return 25*t},easing:"easeOutCubic",opacity:0,translateY:"50%"}},fx6:{in:{duration:400,delay:function(e,t){return 50*t},easing:"easeOutSine",opacity:{value:[0,1],easing:"easeOutExpo"},rotateY:[-90,0]},out:{duration:200,delay:function(e,t){return 50*t},easing:"easeOutSine",opacity:0,rotateY:45}},fx7:{in:{duration:1e3,delay:function(e,t){return 100+30*t},easing:"easeOutElastic",opacity:{value:[0,1],easing:"easeOutExpo"},rotateZ:function(e,t){return[anime.random(20,40),0]}},out:{duration:300,opacity:{value:[1,0],easing:"easeOutExpo"}}},fx8:{in:{duration:400,delay:function(e,t){return 200+20*t},easing:"easeOutExpo",opacity:1,rotateY:[-90,0],translateY:["50%","0%"]},out:{duration:250,delay:function(e,t){return 20*t},easing:"easeOutExpo",opacity:0,rotateY:90}},fx9:{in:{duration:400,delay:function(e,t){return 200+30*t},easing:"easeOutExpo",opacity:1,rotateX:[90,0]},out:{duration:250,delay:function(e,t){return 30*t},easing:"easeOutExpo",opacity:0,rotateX:-90}},fx10:{in:{duration:400,delay:function(e,t){return 100+50*t},easing:"easeOutExpo",opacity:{value:[0,1],easing:"easeOutExpo"},rotateX:[110,0]},out:{duration:250,delay:function(e,t){return 50*t},easing:"easeOutExpo",opacity:0,rotateX:-110}},fx11:{in:{duration:function(e,t){return anime.random(800,1e3)},delay:function(e,t){return anime.random(100,300)},easing:"easeOutExpo",opacity:{value:[0,1],easing:"easeOutExpo"},translateY:["-150%","0%"],rotateZ:function(e,t){return[anime.random(-50,50),0]}},out:{duration:function(e,t){return anime.random(200,300)},delay:function(e,t){return anime.random(0,80)},easing:"easeInQuart",opacity:0,translateY:"50%",rotateZ:function(e,t){return anime.random(-50,50)}}},fx12:{in:{elasticity:!1,duration:1,delay:function(e,t){return 100*t+anime.random(50,100)},width:[0,function(t,i){return e(t).width()}]},out:{duration:1,delay:function(e,t){return 20*(e.parentNode.children.length-t-1)},easing:"linear",width:{value:0}}}},o.textChange=function(){var e,t=n.eq(r);r&lt;n.length-1?r++:r=0,e=n.eq(r),o.hideText(t,i.effect,null,function(a){t.toggleClass("visible");var n=l;s&amp;&amp;clearTimeout(s),o.showText(e,i.effect,function(){e.toggleClass("active"),t.toggleClass("active"),e.toggleClass("visible")},function(){s=setTimeout(function(){o.textChange()},n)})})},o.showText=function(t,i,a,n){var s=[];e("span",t).each(function(){e(this).css({width:"auto",opacity:1,WebkitTransform:"",transform:""}),s.push(this)}),o.animateText(s,"in",i,a,n)},o.hideText=function(t,i,a,n){var s=[];e("span",t).each(function(){s.push(this)}),o.animateText(s,"out",i,a,n)},o.animateText=function(e,t,i,a,n){var s=(o.avaliableEffects[i]||{})[t];s.targets=e,s.begin=a,s.complete=n,anime(s)},o.init=function(){var t=n.eq(r);"fx12"===i.effect&amp;&amp;e("span",n).each(function(){e(this).css("width","0").css("opacity","1")}),o.showText(t,i.effect,null,function(){var e=l;s&amp;&amp;clearTimeout(s),s=setTimeout(function(){o.textChange()},e)})}},window.jetImagesLayout=function(i,o){var a,n=this,s=i,r=(e(".jet-images-layout__list",s),e(".jet-images-layout__item",s));Boolean(t.isEditMode()),o=o||{};a={layoutType:"masonry",justifyHeight:300},e.extend(a,o),n.layoutBuild=function(){switch(o.layoutType){case"masonry":salvattore.init();break;case"justify":r.each(function(){var t=e(this),i=e(".jet-images-layout__image-instance",t),a=+i.data("width")/+i.data("height"),n=100*a,s=+o.justifyHeight*a;t.css({"flex-grow":n,"flex-basis":s})})}if(e.isFunction(e.fn.imagesLoaded))e(".jet-images-layout__image",r).imagesLoaded().progress(function(t,i){var o=e(i.img).closest(".jet-images-layout__item"),a=e(".jet-images-layout__image-loader",o);o.addClass("image-loaded"),a.fadeTo(500,0,function(){e(this).remove()})});else{var t=e(".jet-images-layout__image-loader",r);r.addClass("image-loaded"),t.fadeTo(500,0,function(){e(this).remove()})}},n.init=function(){n.layoutBuild()}},window.jetScrollNavigation=function(i,a,n){var s=this,r=e(window),l=e(document),d=(e("body"),a),c=e("html, body"),u=e(".jet-scroll-navigation__item",d),f=(n=e.extend({},{speed:500,blockSpeed:500,offset:0,sectionSwitch:!1,sectionSwitchOnMobile:!0},n),{}),p=null,h=!1,m=window.location.hash.slice(1),g=0,v=navigator.platform;jQuery.extend(jQuery.easing,{easeInOutCirc:function(e,t,i,o,a){return(t/=a/2)&lt;1?-o/2*(Math.sqrt(1-t*t)-1)+i:o/2*(Math.sqrt(1-(t-=2)*t)+1)+i}}),s.init=function(){s.setSectionsData(),m&amp;&amp;f.hasOwnProperty(m)&amp;&amp;u.addClass("invert"),u.on("click.jetScrollNavigation",function(t){var i=e(this).data("anchor");s.onAnchorChange(i)}),r.on("resize.jetScrollNavigation orientationchange.jetScrollNavigation",o.debounce(50,s.onResize)),r.on("load",function(){s.setSectionsData()}),l.keydown(function(e){s.isEnabled()&amp;&amp;(38==e.keyCode&amp;&amp;s.directionSwitch(e,"up"),40==e.keyCode&amp;&amp;s.directionSwitch(e,"down"))}),s.waypointHandler(),s.hijakingHandler(),"undefined"!=typeof ResizeSensor&amp;&amp;new ResizeSensor(e(".jet-scroll-navigation-section"),o.debounce(50,function(){s.setSectionsData(),s.waypointHandler()}))},s.setSectionsData=function(){var i=Boolean(t.isEditMode());u.each(function(){var t=e(this),o=t.data("anchor"),a="yes"===t.data("invert"),n=e("#"+o);n[0]?(n.addClass("jet-scroll-navigation-section"),n[0].dataset.sectionName=o,f[o]={selector:n,offset:Math.round(n.offset().top),height:n.outerHeight(),invert:a}):i||t.css("display","none")})},s.waypointHandler=function(){for(var t in e(window).on("resize scroll",function(){for(var t in f){let i=f[t].selector.attr("id");e("#"+i).isInViewport()||e("[data-anchor="+i+"]",d).removeClass("active")}}),f){var i=f[t].selector;elementorFrontend.waypoint(i,function(t){var i=e(this).attr("id");"down"!==t||h||(!1===n.sectionIdVisibility&amp;&amp;window.history.pushState(null,null,"#"+i),p=i,u.removeClass("active"),e("[data-anchor="+i+"]",d).addClass("active"),u.removeClass("invert"),f[i].invert&amp;&amp;u.addClass("invert"))},{offset:"70%",triggerOnce:!1}),elementorFrontend.waypoint(i,function(t){var i=e(this).attr("id");"up"!==t||h||(!1===n.sectionIdVisibility&amp;&amp;window.history.pushState(null,null,"#"+i),p=i,u.removeClass("active"),e("[data-anchor="+i+"]",d).addClass("active"),u.removeClass("invert"),f[i].invert&amp;&amp;u.addClass("invert"))},{offset:"0%",triggerOnce:!1})}},s.onAnchorChange=function(t){var i,o=e("[data-anchor="+t+"]",d);if(!f.hasOwnProperty(t))return!1;i=f[t].offset-n.offset,h||(h=!0,!1===n.sectionIdVisibility&amp;&amp;window.history.pushState(null,null,"#"+t),p=t,u.removeClass("active"),o.addClass("active"),u.removeClass("invert"),f[t].invert&amp;&amp;u.addClass("invert"),c.animate({scrollTop:i},n.speed,"easeInOutCirc",function(){h=!1}))},s.directionSwitch=function(t,i){i=i||"up";var o=e("[data-anchor="+p+"]",d).next(),a=e("[data-anchor="+p+"]",d).prev();if(h)return!1;"up"===i&amp;&amp;a[0]&amp;&amp;a.trigger("click.jetScrollNavigation"),"down"===i&amp;&amp;o[0]&amp;&amp;o.trigger("click.jetScrollNavigation")},s.hijakingHandler=function(){var t=o.mobileAndTabletcheck(),i=0;n.sectionSwitch&amp;&amp;(t||document.addEventListener("wheel",s.onWheel,{passive:!1}),t&amp;&amp;n.sectionSwitchOnMobile&amp;&amp;(document.addEventListener("touchstart",function(t){if(s.isEnabled()){var o=e(t.target),a=(0&lt;o.closest(".elementor-top-section").length?o.closest(".elementor-top-section"):o.closest(".e-con.jet-scroll-navigation-section")).attr("id")||!1;i=t.changedTouches[0].clientY,a&amp;&amp;h&amp;&amp;t.preventDefault()}},{passive:!1}),document.addEventListener("touchend",function(t){if(s.isEnabled()){var a=e(t.target),n=a.closest(".jet-scroll-navigation")||!1,l=((0&lt;a.closest(".elementor-top-section").length?a.closest(".elementor-top-section"):a.closest(".e-con.jet-scroll-navigation-section"))||!1).attr("id")||!1,d=r.scrollTop(),c=t.changedTouches[0].clientY,u=c&gt;i?"up":"down",p=!1,h=!1,m=!1,g=!1,v=window.screen.availHeight/8;return!(Math.abs(c-i)&lt;20)&amp;&amp;(!n[0]&amp;&amp;void(l&amp;&amp;f.hasOwnProperty(l)&amp;&amp;(m=o.getObjectPrevKey(f,l),g=o.getObjectNextKey(f,l),p=f[l].offset,"up"===u&amp;&amp;(p-v&lt;d&amp;&amp;(m=l),m&amp;&amp;(h=m)),"down"===u&amp;&amp;(p+v&gt;d&amp;&amp;(g=l),g&amp;&amp;(h=g)),h&amp;&amp;s.onAnchorChange(h))))}},{passive:!1})))},s.onScroll=function(e){e.preventDefault()},s.onWheel=function(t){if(s.isEnabled()){h&amp;&amp;t.preventDefault();var i=e(t.target),a=(0&lt;i.closest(".elementor-top-section[id]").length?i.closest(".elementor-top-section[id]"):i.closest(".e-con[id]")).attr("id")||!1,l=0&gt;t.deltaY?"up":"down",d=!1,c=!1,u=!1,p=!1,m=r.scrollTop();if(!i.closest(".jet-map-listing").length){if(a&amp;&amp;f.hasOwnProperty(a)&amp;&amp;(u=o.getObjectPrevKey(f,a),p=o.getObjectNextKey(f,a),d=f[a].offset,"up"===l&amp;&amp;(d&lt;m+n.offset-10&amp;&amp;(u=a),u&amp;&amp;(c=u)),"down"===l&amp;&amp;(d&gt;m+n.offset+10&amp;&amp;(p=a),p&amp;&amp;(c=p)),c)){if(t.preventDefault(),t.timeStamp-g&gt;15&amp;&amp;"MacIntel"==v)return g=t.timeStamp,!1;s.onAnchorChange(c)}return!1}}},s.onResize=function(e){s.setSectionsData()},s.scrollStop=function(){c.stop(!0)},s.isEnabled=function(){return i.is(":visible")},s.mobileAndTabletcheck=function(){var e,t=!1;return e=navigator.userAgent||navigator.vendor||window.opera,(/(android|bb\d+|meego).+mobile|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\.(browser|link)|vodafone|wap|windows ce|xda|xiino|android|ipad|playbook|silk/i.test(e)||/1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s\-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|\-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw\-(n|u)|c55\/|capi|ccwa|cdm\-|cell|chtm|cldc|cmd\-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc\-s|devi|dica|dmob|do(c|p)o|ds(12|\-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(\-|_)|g1 u|g560|gene|gf\-5|g\-mo|go(\.w|od)|gr(ad|un)|haie|hcit|hd\-(m|p|t)|hei\-|hi(pt|ta)|hp( i|ip)|hs\-c|ht(c(\-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i\-(20|go|ma)|i230|iac( |\-|\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\/)|klon|kpt |kwc\-|kyo(c|k)|le(no|xi)|lg( g|\/(k|l|u)|50|54|\-[a-w])|libw|lynx|m1\-w|m3ga|m50\/|ma(te|ui|xo)|mc(01|21|ca)|m\-cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(\-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)\-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|\-([1-8]|c))|phil|pire|pl(ay|uc)|pn\-2|po(ck|rt|se)|prox|psio|pt\-g|qa\-a|qc(07|12|21|32|60|\-[2-7]|i\-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h\-|oo|p\-)|sdk\/|se(c(\-|0|1)|47|mc|nd|ri)|sgh\-|shar|sie(\-|m)|sk\-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h\-|v\-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl\-|tdg\-|tel(i|m)|tim\-|t\-mo|to(pl|sh)|ts(70|m\-|m3|m5)|tx\-9|up(\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|\-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(\-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas\-|your|zeto|zte\-/i.test(e.substr(0,4)))&amp;&amp;(t=!0),t},e.fn.isInViewport=function(){let t=e(this).offset().top,i=t+e(this).outerHeight(),o=e(window).scrollTop(),a=o+e(window).height();return i&gt;o&amp;&amp;t&lt;a}},window.jetSectionParallax=function(i){var a=this,n=(i.data("id"),!1),s=Boolean(t.isEditMode()),r=e(window),l=(e("body"),[]),d=[],c=r.scrollTop(),u=r.height(),f=0,p=0,h=(navigator.userAgent.match(/Version\/[\d\.]+.*Safari/),navigator.platform);a.init=function(){if(!(n=s?a.generateEditorSettings(i):0!=(n=i.data("settings")||!1)&amp;&amp;n.jet_parallax_layout_list))return!1;a.generateLayouts(),r.on("resize.jetSectionParallax orientationchange.jetSectionParallax",o.debounce(30,a.generateLayouts)),0!==l.length&amp;&amp;r.on("scroll.jetSectionParallax resize.jetSectionParallax",a.scrollHandler),0!==d.length&amp;&amp;(i.on("mousemove.jetSectionParallax resize.jetSectionParallax",a.mouseMoveHandler),i.on("mouseleave.jetSectionParallax",a.mouseLeaveHandler)),a.scrollUpdate()},a.generateEditorSettings=function(t){var i,a={},n=[];return!!window.elementor.hasOwnProperty("elements")&amp;&amp;(!(!(a=o.getElementorElementSettings(t)).hasOwnProperty("jet_parallax_layout_list")||0===Object.keys(a).length)&amp;&amp;(i=a.jet_parallax_layout_list,e.each(i,function(e,t){n.push(t)}),0!==n.length&amp;&amp;n))},a.generateLayouts=function(){e(".jet-parallax-section__layout",i).remove(),e.each(n,function(a,n){var s,r,c=n.jet_parallax_layout_image,u=n.jet_parallax_layout_speed.size||50,f=n.jet_parallax_layout_z_index,p=n.jet_parallax_layout_animation_prop||"bgposition",m=elementorFrontend.getCurrentDeviceMode(),g=t.config.responsive.activeBreakpoints,v=[],w=n.jet_parallax_layout_bg_x,_=n.jet_parallax_layout_bg_y,b=n.jet_parallax_layout_type||"none",y=n.jet_parallax_layout_direction||"1",j=n.jet_parallax_layout_fx_direction||"fade-in",x=n.jet_parallax_layout_on||["desktop","tablet"],k=n._id,C="MacIntel"==h?" is-mac":"";if(-1===x.indexOf(m))return!1;for(var[T,S]of Object.entries(g))"widescreen"===T?(v.push("desktop"),v.push(T)):v.push(T);-1===v.indexOf("widescreen")&amp;&amp;v.push("desktop"),v=v.reverse();var E,O=0,z=[];["widescreen","desktop","laptop","tablet_extra","tablet","mobile_extra","mobile"].forEach(function(e){-1!=v.indexOf(e)&amp;&amp;(z[O]=[],z[O][e]="widescreen"===e?{bgX:""!=n["jet_parallax_layout_bg_x_"+e]?n.jet_parallax_layout_bg_x:0,bgY:""!=n["jet_parallax_layout_bg_y_"+e]?n.jet_parallax_layout_bg_y:0,layoutImageData:""!=n["jet_parallax_layout_image_"+e]?n["jet_parallax_layout_image_"+e]:""}:"desktop"===e?{bgX:""!=n.jet_parallax_layout_bg_x?n.jet_parallax_layout_bg_x:0,bgY:""!=n.jet_parallax_layout_bg_y?n.jet_parallax_layout_bg_y:0,layoutImageData:c.url||n.jet_parallax_layout_image.url}:{bgX:n["jet_parallax_layout_bg_x_"+e]&amp;&amp;""!=n["jet_parallax_layout_bg_x_"+e]?n["jet_parallax_layout_bg_x_"+e]:z[O-1][E].bgX,bgY:n["jet_parallax_layout_bg_y_"+e]&amp;&amp;""!=n["jet_parallax_layout_bg_y_"+e]?n["jet_parallax_layout_bg_y_"+e]:z[O-1][E].bgY,layoutImageData:n["jet_parallax_layout_image_"+e]&amp;&amp;""!=n["jet_parallax_layout_image_"+e].url?n["jet_parallax_layout_image_"+e].url:z[O-1][E].layoutImageData},m===e&amp;&amp;(w=z[O][e].bgX,_=z[O][e].bgY,c=z[O][e].layoutImageData),E=e,O++)}),i.hasClass("jet-parallax-section")||i.addClass("jet-parallax-section"),s=e('&lt;div class="jet-parallax-section__layout elementor-repeater-item-'+k+" jet-parallax-section__"+b+"-layout"+C+'"&gt;&lt;div class="jet-parallax-section__image"&gt;&lt;/div&gt;&lt;/div&gt;').prependTo(i).css({"z-index":f});var I={"background-position-x":w+"%","background-position-y":_+"%","background-image":"url("+c+")"};e("&gt; .jet-parallax-section__image",s).css(I),r={selector:s,prop:p,type:b,device:x,xPos:w,yPos:_,direction:+y,fxDirection:j,speed:u/100*2},"none"!==b&amp;&amp;(o.inArray(b,["scroll","h-scroll","zoom","rotate","blur","opacity"])&amp;&amp;l.push(r),"mouse"===b&amp;&amp;d.push(r))})},a.scrollHandler=function(e){c=r.scrollTop(),u=r.height(),a.scrollUpdate()},a.scrollUpdate=function(){e.each(l,function(t,i){var o=i.selector,a=e(".jet-parallax-section__image",o),n=i.speed,s=o.offset().top,r=o.outerHeight(),l=i.prop,d=i.type,f=i.direction,p=i.fxDirection,h=(c-s+u)/r*100,m=elementorFrontend.getCurrentDeviceMode();if(-1===i.device.indexOf(m))return a.css({transform:"translateX(0) translateY(0)","background-position-y":i.yPos,"background-position-x":i.xPos,filter:"none",opacity:"1"}),!1;switch(c&lt;s-u&amp;&amp;(h=0),c&gt;s+r&amp;&amp;(h=200),h=parseFloat(n*h).toFixed(1),d){case"scroll":"bgposition"===l?a.css({"background-position-y":"calc("+i.yPos+"% + "+h+"px)"}):a.css({transform:"translateY("+h+"px)"});break;case"h-scroll":"bgposition"===l?a.css({"background-position-x":"calc("+i.xPos+"% + "+h*f+"px)"}):a.css({transform:"translateX("+h*f+"px)"});break;case"zoom":var g=(c-s+u)/u*n;g+=1,a.css({transform:"scale("+g+")"});break;case"rotate":var v=h;a.css({transform:"rotateZ("+v*f+"deg)"});break;case"blur":var w=0;switch(p){case"fade-in":w=h/40;break;case"fade-out":w=5*n-h/40}a.css({filter:"blur("+w+"px)"});break;case"opacity":var _=1;switch(p){case"fade-in":_=1-h/400;break;case"fade-out":_=1-.5*n+h/400}a.css({opacity:_})}})},a.mouseMoveHandler=function(e){var t=r.width(),i=r.height(),o=Math.ceil(t/2),n=Math.ceil(i/2),s=e.clientX-o,l=e.clientY-n;f=s/o*-1,p=l/n*-1,a.mouseMoveUpdate()},a.mouseLeaveHandler=function(t){e.each(d,function(t,i){var o=i.selector,a=e(".jet-parallax-section__image",o);switch(i.prop){case"transform3d":TweenMax.to(a[0],1.2,{x:0,y:0,z:0,rotationX:0,rotationY:0,ease:Power2.easeOut})}})},a.mouseMoveUpdate=function(){e.each(d,function(t,i){var o=i.selector,a=e(".jet-parallax-section__image",o),n=i.speed,s=i.prop,r=parseFloat(125*f*n).toFixed(1),l=parseFloat(125*p*n).toFixed(1),d=50*i.zIndex,c=parseFloat(25*f*n).toFixed(1),u=parseFloat(25*p*n).toFixed(1),h=elementorFrontend.getCurrentDeviceMode();if(-1==i.device.indexOf(h))return a.css({transform:"translateX(0) translateY(0)","background-position-x":i.xPos,"background-position-y":i.yPos}),!1;switch(s){case"bgposition":var m=i.xPos+r/a[0].offsetWidth*100,g=i.yPos+l/a[0].offsetHeight*100;TweenMax.to(a[0],1,{backgroundPositionX:m,backgroundPositionY:g,ease:Power2.easeOut});break;case"transform":TweenMax.to(a[0],1,{x:r,y:l,ease:Power2.easeOut});break;case"transform3d":TweenMax.to(a[0],2,{x:r,y:l,z:d,rotationX:u,rotationY:-c,ease:Power2.easeOut})}})}},window.jetPortfolio=function(i,a){var n,s=this,r=i,l=e(".jet-portfolio__list",r),d=e(".jet-portfolio__item",r),c=e(".jet-portfolio__filter-item",r),u=e(".jet-portfolio__view-more",r),f=e(".jet-portfolio__view-more-button",r),p=f[0],h={},m={},g="all",v=o.isRTL(),w=Boolean(t.isEditMode()),_={itemSelector:".jet-portfolio__item",percentPosition:!0,isOriginLeft:!0!==v};a=e.extend({layoutType:"masonry",columns:3,perPage:6},a);s.init=function(){s.layoutBuild(),w&amp;&amp;n.get(0)&amp;&amp;e(window).on("resize",o.debounce(50,function(){n.masonry("layout")}))},s.layoutBuild=function(){if(s.generateData(),c.data("showItems",p?a.perPage:"all"),"justify"==a.layoutType&amp;&amp;(_.columnWidth=".grid-sizer"),"masonry"!=a.layoutType&amp;&amp;"justify"!=a.layoutType||(n=l.masonry(_)),e.isFunction(e.fn.imagesLoaded))e(".jet-portfolio__image",d).imagesLoaded().progress(function(t,i){var o=e(i.img).closest(".jet-portfolio__item");e(".jet-portfolio__image-loader",o).remove(),o.addClass("item-loaded"),n&amp;&amp;n.masonry("layout")});else{var t=e(".jet-portfolio__image-loader",d);d.addClass("item-loaded"),t.remove()}c.on("click.jetPortfolio",s.filterHandler),f.on("click.jetPortfolio",s.moreButtonHandler),s.render(),s.checkMoreButton()},s.generateData=function(){c[0]?c.each(function(t){var i=e(this).data("slug");m[i]=!1,"all"==i&amp;&amp;(m[i]=!0)}):m.all=!0,d.each(function(t){var i=e(this),o=i.data("slug");h[t]={selector:i,slug:o,visible:!!i.hasClass("visible-status"),more:!!i.hasClass("hidden-status"),lightboxEnabled:"yes"===i.find(".jet-portfolio__link").data("elementor-open-lightbox")}})},s.filterHandler=function(t){t.preventDefault();var i=e(this),o=1,a=i.data("slug"),n=i.data("showItems");for(var r in c.removeClass("active"),i.addClass("active"),m)m[r]=!1,r==a&amp;&amp;(m[r]=!0,g=r);e.each(h,function(e,t){var i=!1;"all"===n?s.isItemVisible(t.slug)&amp;&amp;!t.more&amp;&amp;(i=!0):s.isItemVisible(t.slug)&amp;&amp;(o&lt;=n?(i=!0,t.more=!1):t.more=!0,o++),t.visible=i}),s.render(),s.checkMoreButton()},s.moreButtonHandler=function(t){e(this);var i,o=1,n=e(".jet-portfolio__filter-item.active",r);e.each(h,function(e,t){s.isItemVisible(t.slug)&amp;&amp;t.more&amp;&amp;o&lt;=a.perPage&amp;&amp;(t.more=!1,t.visible=!0,o++)}),n[0]&amp;&amp;(i=n.data("showItems"),n.data("showItems",i+o-1)),s.render(),s.checkMoreButton()},s.checkMoreButton=function(){var t=!1;e.each(h,function(e,i){s.isItemVisible(i.slug)&amp;&amp;i.more&amp;&amp;(t=!0)}),t?u.removeClass("hidden-status"):u.addClass("hidden-status")},s.isItemVisible=function(e){var t=o.getObjectValues(e);for(var i in m){if(m[i]&amp;&amp;-1!==t.indexOf(i))return!0}return!1},s.anyFilterEnabled=function(){for(var e in m)if(m[e])return!0;return!1},s.render=function(){d.removeClass("visible-status").removeClass("hidden-status"),e.each(h,function(t,i){var o=e(".jet-portfolio__inner",i.selector),n=e(".jet-portfolio__link",i.selector),s=a.id+"-"+g;i.visible?(i.selector.addClass("visible-status"),i.lightboxEnabled&amp;&amp;n[0].setAttribute("data-elementor-lightbox-slideshow",s),anime({targets:o[0],opacity:{value:1,duration:400},scale:{value:1,duration:500,easing:"easeOutExpo"},delay:50,elasticity:!1})):(i.selector.addClass("hidden-status"),n[0].removeAttribute("data-elementor-lightbox-slideshow"),anime({targets:o[0],opacity:0,scale:0,duration:500,elasticity:!1}))}),n&amp;&amp;n.masonry("layout")}},window.jetTimeLine=function(t){var i=t.closest(".jet-popup__container-inner, .elementor-popup-modal .dialog-message"),a=!!i[0],n=a?i:e(window),s=a?n.offset().top-e(window).scrollTop():0,r=this,l=t.find(".jet-timeline__line"),d=l.find(".jet-timeline__line-progress"),c=t.find(".jet-timeline-item"),u=t.find(".timeline-item__point"),f=n.scrollTop(),p=-1,h=n.height(),m=a?n.outerHeight():window.innerHeight,g=!1;r.onScroll=function(){f=n.scrollTop(),s=a?n.offset().top-e(window).scrollTop():0,r.updateFrame(),r.animateCards()},r.onResize=function(){f=n.scrollTop(),h=n.height(),s=a?n.offset().top-e(window).scrollTop():0,r.updateFrame()},r.updateWindow=function(){g=!1,l.css({top:c.first().find(u).offset().top-c.first().offset().top,bottom:t.offset().top+t.outerHeight()-c.last().find(u).offset().top}),p!==f&amp;&amp;(p=f,h,r.updateProgress())},r.updateProgress=function(){var t=c.last().find(u).offset().top,i=a?t+f-s-e(window).scrollTop():t,o=a?d.offset().top+f-s-e(window).scrollTop():d.offset().top,n=f-o+m/2;i&lt;=f+m/2&amp;&amp;(n=i-o),d.css({height:n+"px"}),c.each(function(){var t=e(this).find(u).offset().top;(t=a?t+f-s-e(window).scrollTop():t)&lt;f+.5*m?e(this).addClass("is--active"):e(this).removeClass("is--active")})},r.updateFrame=function(){g||requestAnimationFrame(r.updateWindow),g=!0},r.animateCards=function(){c.each(function(){var t=e(this).offset().top;(t=a?t+f-s-e(window).scrollTop():t)&lt;=f+.9*m&amp;&amp;e(this).hasClass("jet-timeline-item--animated")&amp;&amp;e(this).addClass("is--show")})},r.init=function(){e(document).ready(r.onScroll),n.on("scroll.jetTimeline",r.onScroll),e(window).on("resize.jetTimeline orientationchange.jetTimeline",o.debounce(50,r.onResize))}},window.jetScratchEffect=function(t,i,a,n=75,s){var r,l=document.querySelector(t),d=document.querySelector(i),c=d.width,u=d.height,f=d.getContext("2d"),p=new Image,h=!1;function m(e,t){return{x:(e.pageX||e.touches[0].clientX)-0,y:(e.pageY||e.touches[0].clientY)-0}}function g(e){(e=e||0)&gt;n&amp;&amp;a&amp;&amp;a.call(d)}function v(e){h=!0,r=m(e)}function w(e){var t,i,a=(t=d.getBoundingClientRect(),i=document.documentElement,{top:t.top,scrollTop:i.scrollTop}),n=0;if(s.top!=a.top&amp;&amp;(n=a.top+a.scrollTop-s),h){e.preventDefault();for(var l,v,w=m(e),_=(l=r,v=w,Math.sqrt(Math.pow(v.x-l.x,2)+Math.pow(v.y-l.y,2))),b=function(e,t){return Math.atan2(t.x-e.x,t.y-e.y)}(r,w),y=0,j=0,x=navigator.userAgent||navigator.vendor||window.opera,k=/iPad|iPhone|iPod/.test(x)&amp;&amp;!window.MSStream,C=o.mobileAndTabletcheck()&amp;&amp;!k?window.scrollY:0,T=0;T&lt;_;T++)y=r.x+Math.sin(b)*T-40,j=r.y+Math.cos(b)*T-40+C-n,f.globalCompositeOperation="destination-out",f.drawImage(p,y,j,80,80);r=w,g(function(e){(!e||e&lt;1)&amp;&amp;(e=1);for(var t=f.getImageData(0,0,c,u).data,i=t.length,o=i/e,a=0,n=a=0;n&lt;i;n+=e)0===parseInt(t[n])&amp;&amp;a++;return Math.round(a/o*100)}(32))}}function _(e){h=!1}e(".jet-animated-box__button--back",l).on("focus",function(){g(100)}),p.src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAFAAAAAxCAYAAABNuS5SAAAKFklEQVR42u2aCXCcdRnG997NJtlkk83VJE3apEma9CQlNAR60UqrGSqW4PQSO9iiTkE8BxWtlGMqYCtYrLRQtfVGMoJaGRFliijaViwiWgQpyCEdraI1QLXG52V+n/5nzd3ENnX/M8/sJvvt933/533e81ufL7MyK7NOzuXPUDD0FQCZlVn/+xUUQhkXHny8M2TxGsq48MBjXdAhL9/7YN26dd5nI5aVRrvEc0GFEBNKhbDjwsHh3qP/FJK1EdYIedOFlFAOgREhPlICifZDYoBjTna3LYe4xcI4oSpNcf6RvHjuAJRoVszD0qFBGmgMChipZGFxbqzQkJWVZUSOF7JRX3S4LtLTeyMtkkqljMBkPzHRs2aYY5PcZH/qLY1EIo18byQ6hBytIr3WCAXcV4tQHYvFxg3w3N6+Bh3OQolEoqCoqCinlw16JzTFJSE6PYuZKqvztbC2ex7bzGxhKu+rerjJrEEq+r9ieElJSXFDQ0Mh9zYzOzu7FBUWcO4Q9xbD6HYvhXhGLccVD5ZAPyfMqaioyOrBUgEv8FZXV8caGxtz8vLykhCWTnZIKmsKhUJnEYeKcKk2YYERH41G7UYnck1/WvAPOxsdLJm2+bEY0Ay0RNeqkytXQkoBZM4U5oOaoYSUkBGRtvnesrBZK4e4F6ypqSkuLy+v4KI99ZQxkfc6vZ4jNAl1wkbhG8LrhfNBCdkxmhYacvj/GOce+3K9MHHbDHUmicOufREELRIWch/DljzMsglutr+VIJO5KjGrVfZAnpF8mnCd8G5hrnC60Cl8T/iw8C1hKd9P9eDCMcgo5HwBx8BB/g7xeRPkrBbeJ3xTeAxjvRGVV3NcshfPG1JX4tVDQae47GuVOknCi23xHr5nyrxe2C1sFlYJ7xe+Jlwm7BRulItP0ms957RzTMK1ws41jMS8eDxehopaOCYfxc3AIHcIX+K6nxW+ImyVF1i8PQ8DTuwtdC1atCja3NwcHkq5EuXmo85G+jq+yMm28V4q/zcIPxV+K9zPxnbgTi0ocybu6wX66fx/vfAB4T1gHt8xI1wlXMF5zEXnQKC56ruEjwhvEa4WrrXvK/Yt5Pt5I1UveeVKyKmT+lpG2gQ2npMmez8ZzFT3e+HXwj7hKXNf6rFZbDpJUjESLdFsFX4mfFv4Fd/7qPBm4UPCJ4RNwncwym4UfYVUtiAcDk/T+3NRmylwWzAY7BCBCwYYogZPnrJoRNm2IDc3tw4FVKXFm95UmGLzkTTFpog524WnhQPCQeGvwiPCCuFCYmk5GbEJt3tOeF54HPVeLLyXxHOv8BPhYaFLeFU4gsI7OWeZk3g+hpJNvVMGIIqhdRvy+biVISouq2TBqWxoIL1wgBhU5AR1SzJvFR4UnhX+Bl4RfsFGP0npUkTymIQ7fh8Cf4l6F0LgXkj6o3O+buGfwj+ElzGQETaNeJqPhxiahckYq8KJ9V6mP+4pTIATjsGCA8lCQVy9VbhB2CM8itu9IBxlkx6O4nbmmpcSi0KUExa3Psfn23DZC4lhlhRuIWs/R1Y9BrpR4WHcfiOq34bLl5DJm1B7BANPGO4+2OJfDcVwX+RZkL5d+DRqeRJ360IJx1CFp4w/8/lhVGXxay1xKp8asQ31rSbgz2az1aBBWCZsgKTfEFe7uM4xYus9KHWXcBv3eolwJe67hJLIN6yubMVpW1tbbllZWVxtzjRquvQe9981IG3RZHUQttH7hB8IP0cdLwp/YnNHcdsjEP1xsEruO56i2Fy3UWXMskAgYAH/EjOiCD6NDc/XZ4v12RqSy3WQ9rJD3jPClwkZz2Aoy8JnUEjPcwYWfgfHvcIW84h308mABQP4Xp02OY44M4tSZSfx7UXIewU3NpXuxw0vJzauYDP1XM8y8Ttx67fhylYrdlAMW1x7h/BF3NWI+4PwFwjbSha26/xQuBmib6HDqeI+m4m5wzrj9A/xO+O5qbm4yizcbDOKfAjVWeC/WzAFLSeI+4hN9WzQ65EvED7D8Tt4vwE33O64rIfD1JW3k6xeQoX3UN6chyG8In4tcbHuRAyKw2ktVIIM2U5XcA7t2FKy5vWQeBexbbrTpvmZiJwN6e3EwKspW/ajqBuAKfKQk8m7KIce5bgnMNQDkLWPUmkj511DSVV5HJOd417FzrDAK7RjZLMZiURigmLVFCYs5tI2PFhpcUj/n6z6sp72LwJKiU2rUdp62rA7IX4XytpJ3Weh4XfE1/0kk/uoFX8kbCHudZLld5E8vJIs2+mbT8iznaR60DHMBt0EE1DySVlSsOBvyrL6zkZG5qI2T/QSBYTHMYAlq2tw1+0MFO4kVj5GSbSbgvkA8fQQr1uIdfdD5mZ1GhZbP0XfuwlPmOp0SNkYbkQV2JdlEsq69VJS+rTER+NtZVC+TX+NRFq1XGeiHXbGUHMg6lk2/DiZ+mHU8wTueoTXLtS3F5e9l2PNZW9lyrOB5LGSmJokzMQ6OjqCA3wsMXLLhqrWoZgKe3lyZ5YtLiwsLLfMLhJL0ibW3rKa7oMQ+Ajq6gKHcMeHeP8qZcpRMvyt1J97SRabcNP1ZGsbKhSb6lF+5GR6shUnlqTSyPM7LZxV/PUqjOfTH6cvqx+XyN3aCfBPUWh3UZIcxC2/jgu/BJ7Eve/G1R/EXS9gaLCc0dgySqIm7jV4MhEYdAaN4R4eRHkBusJp3GNp56iSOscyYN0DaUch8Ai13X6yrg0PvotCO8nme0geKymBaulc1qO+NbxOOpHZtrcHR+nT6+wePvcnk8k8qv6iNBdyH4/OoGR5gXbv75D4NIX3NoruLSjtKmLlbTwCKER1NmV+QIqfS13aai0izUHsRKksAQE5g0w4fuehj9f+xb25Ym1tbcIhuw2COmkBn2cAcQAFbsclV1BTns49JZio3EQWPkgCySJpFIu8aor0UfeLigDTlUTa/8eimhRGuUiKOZPYtYNabh9EGik3Mkk+A9I8JTWoAiik/LEpzY8tY4uwWc4AJMjxQd8oXRHU8JqbW32orNyAiubZo0WR5wX9KyHrLpLD52nrxhFHa1CVV5w3081cRu/7BYichpEqfafA7/sCzhT7tVkhLZvhTeB8Gv1r6U+ty/gqtWHQCSNTcPOl9NmXM1S4hgRjBjjL1MdUJ8cx3uhe3d3dfh5Meb8qyKWsuJRidwtN/h20XEtxvTwya7tKncU8ACqmXVwLict5fy6TnFhra2uW7xT8dWk2BHptVBOx8GLKjo3g7bhrBQq1sdVsCvEkhLZIac1y/zmUSO0oO8fX/0P2Ub3cwaWpZSITnLnOpDlBWTIfMleJqFb10jXCBJUlMyORSIP14LhqNef6v/05bpZTdHulUyXKsufDNdRxZ4vIhSKwhQFG5vfLfcwZsx2X92Jhje8/P8OI+TK/oO+zeA84WTzkvI/6RuB3y6f68qf11xnyMiuzMms4178AwArmZmkkdGcAAAAASUVORK5CYII=",d.addEventListener("mousedown",v,!1),d.addEventListener("mousemove",o.debounce(5,w),!1),d.addEventListener("mouseup",_,!1),d.addEventListener("touchstart",v,!1),d.addEventListener("touchmove",w,!1),d.addEventListener("touchend",_,!1)}}(jQuery,window.elementorFrontend);!function(e,t){"object"==typeof exports&amp;&amp;"undefined"!=typeof module?t():"function"==typeof define&amp;&amp;define.amd?define(t):t()}(0,function(){"use strict";function e(e){var t=this.constructor;return this.then(function(o){return t.resolve(e()).then(function(){return o})},function(o){return t.resolve(e()).then(function(){return t.reject(o)})})}function t(e){return!(!e||void 0===e.length)}function o(){}function n(e){if(!(this instanceof n))throw new TypeError("Promises must be constructed via new");if("function"!=typeof e)throw new TypeError("not a function");this._state=0,this._handled=!1,this._value=void 0,this._deferreds=[],c(e,this)}function i(e,t){for(;3===e._state;)e=e._value;0!==e._state?(e._handled=!0,n._immediateFn(function(){var o=1===e._state?t.onFulfilled:t.onRejected;if(null!==o){var n;try{n=o(e._value)}catch(e){return void r(t.promise,e)}a(t.promise,n)}else(1===e._state?a:r)(t.promise,e._value)})):e._deferreds.push(t)}function a(e,t){try{if(t===e)throw new TypeError("A promise cannot be resolved with itself.");if(t&amp;&amp;("object"==typeof t||"function"==typeof t)){var o=t.then;if(t instanceof n)return e._state=3,e._value=t,void s(e);if("function"==typeof o)return void c(function(e,t){return function(){e.apply(t,arguments)}}(o,t),e)}e._state=1,e._value=t,s(e)}catch(t){r(e,t)}}function r(e,t){e._state=2,e._value=t,s(e)}function s(e){2===e._state&amp;&amp;0===e._deferreds.length&amp;&amp;n._immediateFn(function(){e._handled||n._unhandledRejectionFn(e._value)});for(var t=0,o=e._deferreds.length;o&gt;t;t++)i(e,e._deferreds[t]);e._deferreds=null}function c(e,t){var o=!1;try{e(function(e){o||(o=!0,a(t,e))},function(e){o||(o=!0,r(t,e))})}catch(e){if(o)return;o=!0,r(t,e)}}var d=setTimeout;n.prototype.catch=function(e){return this.then(null,e)},n.prototype.then=function(e,t){var n=new this.constructor(o);return i(this,new function(e,t,o){this.onFulfilled="function"==typeof e?e:null,this.onRejected="function"==typeof t?t:null,this.promise=o}(e,t,n)),n},n.prototype.finally=e,n.all=function(e){return new n(function(o,n){function i(e,t){try{if(t&amp;&amp;("object"==typeof t||"function"==typeof t)){var s=t.then;if("function"==typeof s)return void s.call(t,function(t){i(e,t)},n)}a[e]=t,0==--r&amp;&amp;o(a)}catch(e){n(e)}}if(!t(e))return n(new TypeError("Promise.all accepts an array"));var a=Array.prototype.slice.call(e);if(0===a.length)return o([]);for(var r=a.length,s=0;a.length&gt;s;s++)i(s,a[s])})},n.resolve=function(e){return e&amp;&amp;"object"==typeof e&amp;&amp;e.constructor===n?e:new n(function(t){t(e)})},n.reject=function(e){return new n(function(t,o){o(e)})},n.race=function(e){return new n(function(o,i){if(!t(e))return i(new TypeError("Promise.race accepts an array"));for(var a=0,r=e.length;r&gt;a;a++)n.resolve(e[a]).then(o,i)})},n._immediateFn="function"==typeof setImmediate&amp;&amp;function(e){setImmediate(e)}||function(e){d(e,0)},n._unhandledRejectionFn=function(e){void 0!==console&amp;&amp;console&amp;&amp;console.warn("Possible Unhandled Promise Rejection:",e)};var l=function(){if("undefined"!=typeof self)return self;if("undefined"!=typeof window)return window;if("undefined"!=typeof global)return global;throw Error("unable to locate global object")}();"Promise"in l?l.Promise.prototype.finally||(l.Promise.prototype.finally=e):l.Promise=n}),function(e,t,o){"use strict";var n={addedScripts:{},addedStyles:{},addedAssetsPromises:[],init:function(){var o={"jet-tabs.default":n.tabsInit,"jet-accordion.default":n.accordionInit,"jet-image-accordion.default":n.imageAccordionInit,"jet-switcher.default":n.switcherInit};e.each(o,function(e,o){t.hooks.addAction("frontend/element_ready/"+e,o)}),elementorFrontend.hooks.addAction("frontend/element_ready/loop-carousel.post",function(e,t){t(window).on("load",function(){var t=e.find(".swiper").data("swiper"),o=e.find(".jet-toggle__control"),i=e.find(".jet-switcher__control-instance");t&amp;&amp;(o||i)&amp;&amp;t.on("slideChange",function(){o.off("click.jetAccordion"),i.off("click.jetSwitcher"),n.initLoopCarouselHandlers(e)})})})},initLoopCarouselHandlers:function(t){t.find(".elementor-widget-jet-accordion, .elementor-widget-jet-switcher").each(function(){var t=e(this),o=t.data("element_type");o&amp;&amp;("widget"===o&amp;&amp;(o=t.data("widget_type"),window.elementorFrontend.hooks.doAction("frontend/element_ready/widget",t,e)),window.elementorFrontend.hooks.doAction("frontend/element_ready/global",t,e),window.elementorFrontend.hooks.doAction("frontend/element_ready/"+o,t,e))})},tabsInit:function(o){var i,a,r=e(".jet-tabs",o).first(),s=(r.data("id"),e(window)),c=e(".jet-tabs__control-wrapper",r).first(),d=e(".jet-tabs__content-wrapper",r).first(),l=e("&gt; .jet-tabs__control",c),u=e("&gt; .jet-tabs__content",d),h=e.extend(r.data("settings")||{},n.getElementorElementSettings(o)),f=[],g=null,p=window.location.hash||!1,m=!!p&amp;&amp;p.replace("#","").split("&amp;"),w=(h.tabsPosition,[]),v=[],_=elementorFrontend.getCurrentDeviceMode(),j=t.config.responsive.activeBreakpoints;if(a="desktop",v.desktop=""!=h.tabs_position?h.tabs_position:"top",w.desktop="jet-tabs-position-"+v.desktop,Object.keys(j).reverse().forEach(function(e){"widescreen"===e?(v[e]=h["tabs_position_"+e]&amp;&amp;""!=h["tabs_position_"+e]?h["tabs_position_"+e]:"top",w[e]="jet-tabs-position-"+v[e]):(v[e]=h["tabs_position_"+e]&amp;&amp;""!=h["tabs_position_"+e]?h["tabs_position_"+e]:v[a],w[e]="jet-tabs-position-"+v[e],a=e)}),!r.hasClass(w[_])){for(const[e,t]of Object.entries(w))r.removeClass(t);r.addClass(w[_])}if("click"===h.event?l.on("click.jetTabs",function(){var t=e(this),o=+t.data("tab")-1,n=t.data("template-id");clearInterval(g),h.ajaxTemplate&amp;&amp;n&amp;&amp;T(o),x(o)}):"ontouchend"in window||"ontouchstart"in window?(l.on("touchstart",function(t){i=e(window).scrollTop()}),l.on("touchend",function(t){var o=e(this),n=+o.data("tab")-1,a=o.data("template-id");if(i!==e(window).scrollTop())return!1;clearInterval(g),h.ajaxTemplate&amp;&amp;a&amp;&amp;T(n),x(n)})):l.on("mouseenter",function(t){var o=e(this),n=+o.data("tab")-1,i=o.data("template-id");clearInterval(g),h.ajaxTemplate&amp;&amp;i&amp;&amp;T(n),x(n)}),s.load(function(){var e=u.eq([h.activeIndex]).outerHeight(!0);"yes"!=h.no_active_tabs&amp;&amp;(e+=parseInt(d.css("border-top-width"))+parseInt(d.css("border-bottom-width")),d.css("min-height",e))}),"left"!==v[_]&amp;&amp;"right"!==v[_]){var b=e(".jet-tabs__content.active-content",o);if(b[0]){new MutationObserver((e,t)=&gt;{for(var o of e)if("childList"===o.type){b.closest(".jet-tabs__content-wrapper").css("min-height","auto");var n=b.outerHeight(!0);n+=parseInt(b.css("border-top-width"))+parseInt(b.css("border-bottom-width")),b.closest(".jet-tabs__content-wrapper").css("min-height",n)}}).observe(b[0],{childList:!0,subtree:!0})}}if(h.autoSwitch){var y=h.activeIndex,C=l.length;g=setInterval(function(){y&lt;C-1?y++:y=0,h.ajaxTemplate&amp;&amp;T(y),x(y)},+h.autoSwitchDelay)}function x(t){var o,n=l.eq(t),i=u.eq(t),a="auto",f=c.outerHeight(!0),g=elementorFrontend.getCurrentDeviceMode(),p=0;if(l.removeClass("active-tab"),n.addClass("active-tab"),l.attr("aria-expanded","false"),n.attr("aria-expanded","true"),u.removeClass("active-content"),"stretch"===c.css("align-self")&amp;&amp;(c.each(function(){p+=e(this).outerHeight(!0)}),f=p),a=i.outerHeight(!0),a+=parseInt(d.css("border-top-width"))+parseInt(d.css("border-bottom-width")),i.addClass("active-content"),u.attr("aria-hidden","true"),i.attr("aria-hidden","false"),"left"===v[g]||"right"===v[g])a&lt;f?(r.css({"min-height":"auto"}),d.css({"min-height":f}),r.css({"min-height":f})):a&lt;d.outerHeight(!0)&amp;&amp;(d.css({"min-height":a}),r.css({"min-height":a}));else{d.css({"min-height":a});var m=d;if(m[0]){new MutationObserver((e,t)=&gt;{for(var o of e)"childList"===o.type&amp;&amp;(a=i.outerHeight(!0),a+=parseInt(d.css("border-top-width"))+parseInt(d.css("border-bottom-width")),d.css({"min-height":a}))}).observe(m[0],{childList:!0,subtree:!0})}}s.trigger("jet-tabs/tabs/show-tab-event/before",{target:r,tabIndex:t}),o&amp;&amp;clearTimeout(o),o=setTimeout(function(){s.trigger("jet-tabs/tabs/show-tab-event/after",{target:r,tabIndex:t}),!0===h.switchScrolling&amp;&amp;e("html, body").animate({scrollTop:d.offset().top-h.switchScrollingOffset.size},300)},500)}function T(t){var o=u.eq(t),i=o.data("template-loaded")||!1,a=o.data("template-id"),c=e(".jet-tabs-loader",o);if(i||!1===a)return!1;s.trigger("jet-tabs/ajax-load-template/before",{toggleIndex:t,target:r,contentHolder:o}),o.data("template-loaded",!0),e.ajax({type:"GET",url:window.JetTabsSettings.templateApiUrl,dataType:"json",data:{id:a,dev:window.JetTabsSettings.devMode},success:function(e,i,a){var d=e.template_content,l=e.template_scripts,u=e.template_styles;for(var h in l)n.addedAssetsPromises.push(n.loadScriptAsync(h,l[h]));for(var f in u)n.addedAssetsPromises.push(n.loadStyle(f,u[f]));Promise.all(n.addedAssetsPromises).then(function(i){c.remove(),o.append(d),n.elementorFrontendInit(o),s.trigger("jet-tabs/ajax-load-template/after",{toggleIndex:t,target:r,contentHolder:o,responce:e})},function(e){console.log("Script Loaded Error")})}})}h.ajaxTemplate&amp;&amp;T(h.activeIndex),e(window).on("resize.jetTabs orientationchange.jetTabs",n.debounce(50,function(){_=elementorFrontend.getCurrentDeviceMode();for(const[e,t]of Object.entries(w))r.removeClass(t);r.addClass(w[_])})),e(".jet-tabs__control",o).keydown(function(t){var o=e(this),n=t.which||t.keyCode;if((13==n||32==n)&amp;&amp;!o.hasClass("active-tab"))return o.click(),!1;if(37==n){var i=o.prev().data("tab"),a=o.prev().data("template-id");null!=i?(clearInterval(g),h.ajaxTemplate&amp;&amp;a&amp;&amp;T(i-1),x(i-1),o.prev().focus()):o.focus()}if(39==n){var r=o.next().data("tab");a=o.next().data("template-id");null!=r?(clearInterval(g),h.ajaxTemplate&amp;&amp;a&amp;&amp;T(r-1),x(r-1),o.next().focus()):o.focus()}}),m&amp;&amp;l.each(function(t){var o=e(this),n=o.attr("id"),i=o.data("template-id"),a=t;m.forEach(function(e,t){e===n&amp;&amp;(h.ajaxTemplate&amp;&amp;i&amp;&amp;T(a),x(a))})}),l.each(function(){f.push('a[href*="#'+e(this).attr("id")+'"]')}),e(document).on("click.jetTabAnchor",f.join(","),function(t){var n=e(this.hash);if(n.closest(o)[0]){var i=n.data("tab")-1;h.ajaxTemplate&amp;&amp;T(i),x(i)}})},switcherInit:function(t){var o,n=e(".jet-switcher",t).first(),i=(n.data("id"),e(window)),a=e(".jet-switcher__control-wrapper",n).first(),r=e(".jet-switcher__content-wrapper",n).first(),s=e("&gt; .jet-switcher__control-instance",a),c=e("&gt; .jet-switcher__control-instance &gt; .jet-switcher__control, &gt; .jet-switcher__control",a),d=e("&gt; .jet-switcher__content",r),l=(e("&gt; .jet-switcher__content--disable",r),e("&gt; .jet-switcher__content--enable",r),n.hasClass("jet-switcher--disable"));n.data("settings");function u(e){var t,o,a,s="auto";r.css({height:r.outerHeight(!0)}),n.toggleClass("jet-switcher--disable jet-switcher--enable"),t=(l=!n.hasClass("jet-switcher--disable"))?c.eq(1):c.eq(0),o=l?d.eq(1):d.eq(0),d.removeClass("active-content"),s=o.outerHeight(!0),s+=parseInt(r.css("border-top-width"))+parseInt(r.css("border-bottom-width")),o.addClass("active-content"),c.attr("aria-expanded","false"),t.attr("aria-expanded","true"),d.attr("aria-hidden","true"),o.attr("aria-hidden","false"),r.css({height:s}),i.trigger("jet-tabs/switcher/show-case-event/before",{target:n,caseIndex:e}),a&amp;&amp;clearTimeout(a),a=setTimeout(function(){i.trigger("jet-tabs/switcher/show-case-event/after",{target:n,caseIndex:e}),r.css({height:"auto"})},500)}"ontouchend"in window||"ontouchstart"in window?(s.on("touchstart",function(t){o=e(window).scrollTop()}),s.on("touchend",function(t){if(o!==e(window).scrollTop())return!1;u()})):s.on("click.jetSwitcher",function(){u()}),e(window).on("resize.jetSwitcher orientationchange.jetSwitcher",function(){r.css({height:"auto"})}),e(".jet-switcher__control",t).keydown(function(o){var i=e(this),a=o.which||o.keyCode;if(13!=a&amp;&amp;32!=a||(u(),e('[aria-expanded="true"]',t).focus()),37==a)if(0!=i.prev().length&amp;&amp;i.prev().hasClass("jet-switcher__control")&amp;&amp;n.hasClass("jet-switcher--preset-1"))i.prev().focus(),u();else if(n.hasClass("jet-switcher--preset-2")){if(i.hasClass("jet-switcher__control--disable"))return!1;i.hasClass("jet-switcher__control--enable")&amp;&amp;(e(".jet-switcher__control--disable",t).focus(),u())}if(39==a)if(0!=i.next().length&amp;&amp;i.next().hasClass("jet-switcher__control")&amp;&amp;n.hasClass("jet-switcher--preset-1"))i.next().focus(),u();else if(n.hasClass("jet-switcher--preset-2"))if(i.hasClass("jet-switcher__control--disable"))e(".jet-switcher__control--enable",t).focus(),u();else if(i.hasClass("jet-switcher__control--enable"))return!1})},accordionInit:function(t){var o,i,a,r=e(".jet-accordion",t).first(),s=(r.data("id"),e(window)),c=e("&gt; .jet-accordion__inner &gt; .jet-toggle &gt; .jet-toggle__control",r),d=r.data("settings"),l=e("&gt; .jet-accordion__inner &gt; .jet-toggle",r),u=[],h=window.location.hash||!1,f=!!h&amp;&amp;h.replace("#","").split("&amp;");function g(t){var o=l.eq(t),i=e("&gt; .jet-toggle__content",o),a=e("&gt; .jet-toggle__content &gt; .jet-toggle__content-inner",o),c=i.data("template-loaded")||!1,d=i.data("template-id"),u=e(".jet-tabs-loader",a);if(c||!1===d)return!1;s.trigger("jet-tabs/ajax-load-template/before",{toggleIndex:t,target:r,contentHolder:i}),i.data("template-loaded",!0),e.ajax({type:"GET",url:window.JetTabsSettings.templateApiUrl,dataType:"json",data:{id:d,dev:window.JetTabsSettings.devMode},success:function(e,o,c){var d=e.template_content,l=e.template_scripts,h=e.template_styles;for(var f in l)n.addedAssetsPromises.push(n.loadScriptAsync(f,l[f]));for(var g in h)n.addedAssetsPromises.push(n.loadStyle(g,h[g]));Promise.all(n.addedAssetsPromises).then(function(o){u.remove(),a.append(d),n.elementorFrontendInit(a),s.trigger("jet-tabs/ajax-load-template/after",{toggleIndex:t,target:r,contentHolder:i,responce:e})},function(e){console.log("Script Loaded Error")})}})}l.each(function(){e(this).hasClass("active-toggle")&amp;&amp;d.ajaxTemplate&amp;&amp;g(e(this).find(".jet-toggle__control").data("toggle")-1)}),e(window).on("resize.jetAccordion orientationchange.jetAccordion",function(){var t=e("&gt; .jet-accordion__inner &gt; .active-toggle",r);e("&gt; .jet-toggle__content",t).css({height:"auto"})}),e(".jet-toggle__control",t).keydown(function(t){var o=e(this),n=t.which||t.keyCode;if(13==n||32==n)return o.click(),!1;37==n&amp;&amp;0!=o.closest(".jet-accordion__item").prev().length&amp;&amp;o.closest(".jet-accordion__item").prev().find(".jet-toggle__control").focus(),39==n&amp;&amp;0!=o.closest(".jet-accordion__item").next().length&amp;&amp;o.closest(".jet-accordion__item").next().find(".jet-toggle__control").focus()}),c.on("click.jetAccordion",function(){var t=e(this),n=t.closest(".jet-toggle"),c=+t.data("toggle")-1;elementorFrontend.getCurrentDeviceMode();if(d.collapsible)n.hasClass("active-toggle")||l.each(function(t){var n=e(this),a=e("&gt; .jet-toggle__control",n),l=e("&gt; .jet-toggle__content",n),u=e("&gt; .jet-toggle__content &gt; .jet-toggle__content-inner",n).outerHeight();u+=parseInt(l.css("border-top-width"))+parseInt(l.css("border-bottom-width")),t===c?(n.addClass("active-toggle"),l.css({height:u}),a.attr("aria-expanded","true"),d.ajaxTemplate&amp;&amp;g(c),s.trigger("jet-tabs/accordion/show-toggle-event/before",{target:r,toggleIndex:c}),o&amp;&amp;clearTimeout(o),o=setTimeout(function(){s.trigger("jet-tabs/accordion/show-toggle-event/after",{target:r,toggleIndex:c}),l.css({height:"auto"}),!0===d.switchScrolling&amp;&amp;e("html, body").animate({scrollTop:n.offset().top-d.switchScrollingOffset.size},d.switchScrollingDelay)},500)):n.hasClass("active-toggle")&amp;&amp;(l.css({height:l.outerHeight()}),n.removeClass("active-toggle"),a.attr("aria-expanded","false"),i&amp;&amp;clearTimeout(i),i=setTimeout(function(){l.css({height:0})},5))});else{var u=e("&gt; .jet-toggle__content",n),h=e("&gt; .jet-toggle__content &gt; .jet-toggle__content-inner",n).outerHeight();h+=parseInt(u.css("border-top-width"))+parseInt(u.css("border-bottom-width")),a&amp;&amp;clearTimeout(a),a=setTimeout(function(){n.toggleClass("active-toggle"),n.hasClass("active-toggle")?(u.css({height:h}),t.attr("aria-expanded","true"),d.ajaxTemplate&amp;&amp;g(c),s.trigger("jet-tabs/accordion/show-toggle-event/before",{target:r,toggleIndex:c}),o&amp;&amp;clearTimeout(o),o=setTimeout(function(){s.trigger("jet-tabs/accordion/show-toggle-event/after",{target:r,toggleIndex:c}),u.css({height:"auto"}),!0===d.switchScrolling&amp;&amp;e("html, body").animate({scrollTop:t.offset().top-d.switchScrollingOffset.size},d.switchScrollingDelay)},200)):(u.css({height:u.outerHeight()}),t.attr("aria-expanded","false"),i&amp;&amp;clearTimeout(i),i=setTimeout(function(){u.css({height:0})},5))},200)}}),f&amp;&amp;c.each(function(t){var o=e(this),n=o.attr("id");f.forEach(function(e,t){e===n&amp;&amp;o.trigger("click.jetAccordion")})}),c.each(function(){u.push('a[href*="#'+e(this).attr("id")+'"]')}),e(document).on("click.jetAccordionAnchor",u.join(","),function(o){var n=e(this.hash);n.closest(t)[0]&amp;&amp;n.trigger("click.jetAccordion")})},imageAccordionInit:function(t){var o,n=e(".jet-image-accordion",t);n.length&amp;&amp;(o=n.data("settings"),new jetImageAccordion(n,o).init())},loadScriptAsync:function(e,t){return n.addedScripts.hasOwnProperty(e)?e:t?(n.addedScripts[e]=t,new Promise(function(o,n){var i=document.createElement("script");i.src=t,i.async=!0,i.onload=function(){o(e)},document.head.appendChild(i)})):void 0},loadStyle:function(e,t){return n.addedStyles.hasOwnProperty(e)&amp;&amp;n.addedStyles[e]===t?e:t?(n.addedStyles[e]=t,new Promise(function(o,n){var i=document.createElement("link");i.id=e,i.rel="stylesheet",i.href=t,i.type="text/css",i.media="all",i.onload=function(){o(e)},document.head.appendChild(i)})):void 0},elementorFrontendInit:function(t){t.find("[data-element_type]").each(function(){var t=e(this),o=t.data("element_type");if(o)try{"widget"===o&amp;&amp;(o=t.data("widget_type"),window.elementorFrontend.hooks.doAction("frontend/element_ready/widget",t,e)),window.elementorFrontend.hooks.doAction("frontend/element_ready/global",t,e),window.elementorFrontend.hooks.doAction("frontend/element_ready/"+o,t,e)}catch(e){return console.log(e),t.remove(),!1}})},getElementorElementSettings:function(e){return window.elementorFrontend&amp;&amp;window.elementorFrontend.isEditMode()&amp;&amp;e.hasClass("elementor-element-edit-mode")?n.getEditorElementSettings(e):e.data("settings")||{}},getEditorElementSettings:function(e){var o,n=e.data("model-cid");return n&amp;&amp;t.hasOwnProperty("config")&amp;&amp;t.config.hasOwnProperty("elements")&amp;&amp;t.config.elements.hasOwnProperty("data")&amp;&amp;(o=t.config.elements.data[n])?o.toJSON():{}},debounce:function(e,t){var o;return function(n){o&amp;&amp;clearTimeout(o),o=setTimeout(function(){t.call(this,n),o=null},e)}}};window.jetImageAccordion=function(t,o){var n,i=this,a=t,r=e(".jet-image-accordion__item",a),s=r.length;o=o||{};o=e.extend({orientation:"vertical",activeSize:{size:50,unit:"%"},duration:500,activeItem:-1},o),n=o.activeItem,this.layoutBuild=function(){r.css({"transition-duration":o.duration+"ms"}),r.each(function(t){t===n&amp;&amp;(e(this).addClass("active-accordion"),i.layoutRender())}),e(".jet-image-accordion__image-instance",r).imagesLoaded().progress(function(t,o){var n=e(o.img),i=n.closest(".jet-image-accordion__item"),a=e(".jet-image-accordion__item-loader",i);n.addClass("loaded"),a.fadeTo(250,0,function(){e(this).remove()})}),i.layoutRender(),i.addEvents()},this.layoutRender=function(t){var n=o.activeSize.size,i=((100/s).toFixed(2),n/((100-n)/(s-1)));e(".jet-image-accordion__item:not(.active-accordion)",a).css({"flex-grow":1}),e(".active-accordion",a).css({"flex-grow":i})},this.addEvents=function(){var t=e(window).scrollTop();"ontouchend"in window||"ontouchstart"in window?(r.on("touchstart.jetImageAccordion",function(o){t=e(window).scrollTop()}),r.on("touchend.jetImageAccordion",function(o){o.stopPropagation();var n=e(this);if(t!==e(window).scrollTop())return!1;n.hasClass("active-accordion")?r.removeClass("active-accordion"):(r.removeClass("active-accordion"),n.addClass("active-accordion")),i.layoutRender()})):(r.on("mouseenter",function(t){var o=e(this);o.hasClass("active-accordion")||(r.removeClass("active-accordion"),o.addClass("active-accordion")),i.layoutRender()}),e(".jet-image-accordion__item",a).keydown(function(t){var o=e(this),a=t.which||t.keyCode;13!=a&amp;&amp;32!=a||(o.hasClass("active-accordion")?(r.removeClass("active-accordion"),-1!==n&amp;&amp;r.eq(n).addClass("active-accordion"),i.layoutRender()):(r.removeClass("active-accordion"),o.addClass("active-accordion")),i.layoutRender()),37==a&amp;&amp;0!=o.prev().length&amp;&amp;(r.removeClass("active-accordion"),o.prev().focus(),o.prev().addClass("active-accordion"),i.layoutRender()),39==a&amp;&amp;0!=o.next().length&amp;&amp;(r.removeClass("active-accordion"),o.next().focus(),o.next().addClass("active-accordion"),i.layoutRender())})),a.on("mouseleave.jetImageAccordion",function(e){r.removeClass("active-accordion"),-1!==n&amp;&amp;r.eq(n).addClass("active-accordion"),i.layoutRender()})},this.init=function(){i.layoutBuild()}},e(window).on("elementor/frontend/init",n.init),window.JetTabs=n}(jQuery,window.elementorFrontend,window.JetTabsSettings);jQuery(document).ready(function(){function initArrows(parentid2){var objRemoteApi=new UERemoteWidgets();var options={};if(parentid2)
options.force_parentid=parentid2;objRemoteApi.onWidgetInit("uc_arrow_navigation_elementor_41c2576f",function(objWidget){objRemoteApi.setAction("prev",".ue-carousel-prev",!0)},options)}
initArrows();var objWidget=jQuery("#uc_arrow_navigation_elementor_41c2576f");var parentid2=objWidget.data("parentid2");if(parentid2)
initArrows(parentid2)});jQuery(document).ready(function(){function initArrows(parentid2){var objRemoteApi=new UERemoteWidgets();var options={};if(parentid2)
options.force_parentid=parentid2;objRemoteApi.onWidgetInit("uc_arrow_navigation_elementor_17e0427",function(objWidget){objRemoteApi.setAction("next",".ue-carousel-next",!0)},options)}
initArrows();var objWidget=jQuery("#uc_arrow_navigation_elementor_17e0427");var parentid2=objWidget.data("parentid2");if(parentid2)
initArrows(parentid2)});jQuery(document).ready(function(){function uc_uc_compact_image_theme_elementor_6a3e41c6_start(){var objGallery=jQuery("#uc_uc_compact_image_theme_elementor_6a3e41c6");var api=objGallery.unitegallery({gallery_theme:"compact",theme_panel_position:"bottom",theme_hide_panel_under_width:480,gallery_width:'100%',gallery_height:666,gallery_min_width:100,gallery_min_height:300,gallery_skin:"default",gallery_images_preload_type:"minimal",gallery_autoplay:!1,gallery_play_interval:3000,gallery_pause_on_mouseover:!0,gallery_control_thumbs_mousewheel:!1,gallery_control_keyboard:!0,gallery_carousel:!0,gallery_preserve_ratio:!0,gallery_debug_errors:!0,slider_background_color:"#000000",slider_scale_mode:"fit",slider_scale_mode_media:"fill",slider_scale_mode_fullscreen:"down",slider_item_padding_top:0,slider_item_padding_bottom:0,slider_item_padding_left:0,slider_item_padding_right:0,slider_transition:"slide",slider_transition_speed:300,slider_transition_easing:"easeInOutQuad",slider_control_swipe:!0,slider_control_zoom:!1,slider_zoom_max_ratio:3,slider_loader_type:1,slider_loader_color:"white",slider_enable_bullets:!1,slider_bullets_skin:"",slider_bullets_space_between:5,slider_bullets_align_hor:"center",slider_bullets_align_vert:"bottom",slider_bullets_offset_hor:0,slider_bullets_offset_vert:20,slider_enable_arrows:!1,slider_arrows_skin:"",slider_arrow_left_align_hor:"left",slider_arrow_left_align_vert:"middle",slider_arrow_left_offset_hor:0,slider_arrow_left_offset_vert:0,slider_arrow_right_align_hor:"right",slider_arrow_right_align_vert:"middle",slider_arrow_right_offset_hor:0,slider_arrow_right_offset_vert:0,slider_enable_progress_indicator:!1,slider_progress_indicator_type:"pie",slider_progress_indicator_align_hor:"left",slider_progress_indicator_align_vert:"top",slider_progress_indicator_offset_hor:30,slider_progress_indicator_offset_vert:40,slider_progressbar_color:"#ffffff",slider_progressbar_opacity:0.6,slider_progressbar_line_width:5,slider_progresspie_type_fill:!1,slider_progresspie_color1:"#B5B5B5",slider_progresspie_color2:"#ffffff",slider_progresspie_stroke_width:6,slider_progresspie_width:30,slider_progresspie_height:30,slider_enable_play_button:!1,slider_play_button_skin:"",slider_play_button_align_hor:"left",slider_play_button_align_vert:"top",slider_play_button_offset_hor:40,slider_play_button_offset_vert:8,slider_enable_fullscreen_button:!1,slider_fullscreen_button_skin:"",slider_fullscreen_button_align_hor:"left",slider_fullscreen_button_align_vert:"top",slider_fullscreen_button_offset_hor:11,slider_fullscreen_button_offset_vert:9,slider_enable_zoom_panel:!1,slider_zoompanel_skin:"",slider_zoompanel_align_hor:"right",slider_zoompanel_align_vert:"top",slider_zoompanel_offset_hor:12,slider_zoompanel_offset_vert:10,slider_controls_always_on:!0,slider_controls_appear_ontap:!0,slider_controls_appear_duration:300,slider_videoplay_button_type:"square",slider_enable_text_panel:!1,slider_textpanel_always_on:!0,slider_textpanel_text_valign:"middle",slider_textpanel_padding_top:20,slider_textpanel_padding_bottom:20,slider_textpanel_padding_right:20,slider_textpanel_padding_left:20,slider_textpanel_height:null,slider_textpanel_padding_title_description:5,slider_textpanel_fade_duration:200,slider_textpanel_enable_title:!0,slider_textpanel_enable_description:!0,slider_textpanel_enable_bg:!0,slider_textpanel_bg_color:"#000000",slider_textpanel_bg_opacity:0.5,thumb_width:80,thumb_height:80,thumb_fixed_size:!0,thumb_border_effect:!0,thumb_border_width:0,thumb_border_color:"#8E8E8E2E",thumb_over_border_width:1,thumb_over_border_color:"#8E8E8E2E",thumb_selected_border_width:1,thumb_selected_border_color:"#8E8E8E2E",thumb_round_corners_radius:5,thumb_color_overlay_effect:!0,thumb_overlay_color:"#000000",thumb_overlay_opacity:0,thumb_overlay_reverse:!1,thumb_image_overlay_effect:!1,thumb_image_overlay_type:"bw",thumb_transition_duration:200,thumb_transition_easing:"easeOutQuad",});objGallery.data("unitegallery-api",api);objGallery.trigger("uc-object-ready");jQuery("body").trigger("uc-remote-parent-init",[objGallery]);objGallery.on("uc_ajax_sethtml",function(event,htmlItems,isAppend){api.changeItems(htmlItems)})}if(jQuery("#uc_uc_compact_image_theme_elementor_6a3e41c6").length)uc_uc_compact_image_theme_elementor_6a3e41c6_start();else jQuery(document).on('elementor/popup/show',()=&gt;{if(jQuery("#uc_uc_compact_image_theme_elementor_6a3e41c6").length)uc_uc_compact_image_theme_elementor_6a3e41c6_start()})});var dFlipLocation="https://tammer.ee/wp-content/plugins/3d-flipbook-dflip-lite/assets/";var dFlipWPGlobal={"text":{"toggleSound":"Turn on\/off Sound","toggleThumbnails":"Toggle Thumbnails","toggleOutline":"Toggle Outline\/Bookmark","previousPage":"Previous Page","nextPage":"Next Page","toggleFullscreen":"Toggle Fullscreen","zoomIn":"Zoom In","zoomOut":"Zoom Out","toggleHelp":"Toggle Help","singlePageMode":"Single Page Mode","doublePageMode":"Double Page Mode","downloadPDFFile":"Download PDF File","gotoFirstPage":"Goto First Page","gotoLastPage":"Goto Last Page","share":"Share","mailSubject":"I wanted you to see this FlipBook","mailBody":"Check out this site {{url}}","loading":"DearFlip: Loading "},"viewerType":"flipbook","moreControls":"download,pageMode,startPage,endPage,sound","hideControls":"","scrollWheel":"false","backgroundColor":"#777","backgroundImage":"","height":"auto","paddingLeft":"20","paddingRight":"20","controlsPosition":"bottom","duration":800,"soundEnable":"true","enableDownload":"true","showSearchControl":"false","showPrintControl":"false","enableAnnotation":!1,"enableAnalytics":"false","webgl":"true","hard":"none","maxTextureSize":"1600","rangeChunkSize":"524288","zoomRatio":1.5,"stiffness":3,"pageMode":"0","singlePageMode":"0","pageSize":"0","autoPlay":"false","autoPlayDuration":5000,"autoPlayStart":"false","linkTarget":"2","sharePrefix":"flipbook-"};jQuery(document).ready(function(){jQuery('#btn-back').on('click',function(){window.history.go(-1);return!1})});function lazyLoadThumb(e,alt,l){var t='&lt;img src="https://i.ytimg.com/vi/ID/hqdefault.jpg" alt="" width="480" height="360"&gt;',a='&lt;button class="play" aria-label="Play Youtube video"&gt;&lt;/button&gt;';if(l){t=t.replace('data-lazy-','');t=t.replace('loading="lazy"','');t=t.replace(/&lt;noscript&gt;.*?&lt;\/noscript&gt;/g,'')}t=t.replace('alt=""','alt="'+alt+'"');return t.replace("ID",e)+a}function lazyLoadYoutubeIframe(){var e=document.createElement("iframe"),t="ID?autoplay=1";t+=0===this.parentNode.dataset.query.length?"":"&amp;"+this.parentNode.dataset.query;e.setAttribute("src",t.replace("ID",this.parentNode.dataset.src)),e.setAttribute("frameborder","0"),e.setAttribute("allowfullscreen","1"),e.setAttribute("allow","accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture"),this.parentNode.parentNode.replaceChild(e,this.parentNode)}document.addEventListener("DOMContentLoaded",function(){var exclusions=[];var e,t,p,u,l,a=document.getElementsByClassName("rll-youtube-player");for(t=0;t&lt;a.length;t++)(e=document.createElement("div")),(u='https://i.ytimg.com/vi/ID/hqdefault.jpg'),(u=u.replace('ID',a[t].dataset.id)),(l=exclusions.some(exclusion=&gt;u.includes(exclusion))),e.setAttribute("data-id",a[t].dataset.id),e.setAttribute("data-query",a[t].dataset.query),e.setAttribute("data-src",a[t].dataset.src),(e.innerHTML=lazyLoadThumb(a[t].dataset.id,a[t].dataset.alt,l)),a[t].appendChild(e),(p=e.querySelector(".play")),(p.onclick=lazyLoadYoutubeIframe)});</pre></body></html>